1 //
2 //  Copyright 2017, The Android Open Source Project
3 //
4 //  Licensed under the Apache License, Version 2.0 (the "License");
5 //  you may not use this file except in compliance with the License.
6 //  You may obtain a copy of the License at:
7 //
8 //  http://www.apache.org/licenses/LICENSE-2.0
9 //
10 //  Unless required by applicable law or agreed to in writing, software
11 //  distributed under the License is distributed on an "AS IS" BASIS,
12 //  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 //  See the License for the specific language governing permissions and
14 //  limitations under the License.
15 //
16 
17 #include "android/os/parcel_file_descriptor.h"
18 #include <base/logging.h>
19 
20 using android::OK;
21 using android::Parcel;
22 using android::status_t;
23 
24 namespace android {
25 namespace os {
26 
writeToParcel(Parcel * parcel) const27 status_t ParcelFileDescriptor::writeToParcel(Parcel* parcel) const {
28   CHECK(fd_ >= 0);
29   return parcel->writeParcelFileDescriptor(fd_, takeOwnership_);
30 }
31 
readFromParcel(const Parcel * parcel)32 status_t ParcelFileDescriptor::readFromParcel(const Parcel* parcel) {
33   LOG(FATAL) << "Don't know how to read ParcelFileDescriptor";
34   return OK;
35 }
36 
setFileDescriptor(int fd,bool takeOwnership)37 void ParcelFileDescriptor::setFileDescriptor(int fd, bool takeOwnership) {
38   fd_ = fd;
39   takeOwnership_ = takeOwnership;
40 }
41 
42 }  // namespace os
43 }  // namespace android
44