19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/*
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Copyright 2007, The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project**
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Licensed under the Apache License, Version 2.0 (the "License");
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** you may not use this file except in compliance with the License.
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** You may obtain a copy of the License at
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project**
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project**     http://www.apache.org/licenses/LICENSE-2.0
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project**
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Unless required by applicable law or agreed to in writing, software
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** distributed under the License is distributed on an "AS IS" BASIS,
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** See the License for the specific language governing permissions and
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** limitations under the License.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project*/
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1804e71b3db84fd5f7fc4eefb49a33154ea91ec9fcWink Savillepackage com.android.internal.telephony;
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.os.Parcel;
2104e71b3db84fd5f7fc4eefb49a33154ea91ec9fcWink Savilleimport android.os.Parcelable;
229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/**
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *  A parcelable holder class of byte[] for ISms aidl implementation
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpublic class SmsRawData implements Parcelable {
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    byte[] data;
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    //Static Methods
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public static final Parcelable.Creator<SmsRawData> CREATOR
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            = new Parcelable.Creator<SmsRawData> (){
329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public SmsRawData createFromParcel(Parcel source) {
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            int size;
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            size = source.readInt();
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            byte[] data = new byte[size];
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            source.readByteArray(data);
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            return new SmsRawData(data);
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        public SmsRawData[] newArray(int size) {
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            return new SmsRawData[size];
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        }
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    };
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // Constructor
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public SmsRawData(byte[] data) {
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        this.data = data;
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public byte[] getBytes() {
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return data;
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
5304e71b3db84fd5f7fc4eefb49a33154ea91ec9fcWink Saville
549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int describeContents() {
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return 0;
569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void writeToParcel(Parcel dest, int flags) {
599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        dest.writeInt(data.length);
609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        dest.writeByteArray(data);
619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
63