aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/cyanogenmod/profiles/AirplaneModeSettings.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/java/cyanogenmod/profiles/AirplaneModeSettings.java')
-rw-r--r--src/java/cyanogenmod/profiles/AirplaneModeSettings.java32
1 files changed, 12 insertions, 20 deletions
diff --git a/src/java/cyanogenmod/profiles/AirplaneModeSettings.java b/src/java/cyanogenmod/profiles/AirplaneModeSettings.java
index f79bf84..a9b828f 100644
--- a/src/java/cyanogenmod/profiles/AirplaneModeSettings.java
+++ b/src/java/cyanogenmod/profiles/AirplaneModeSettings.java
@@ -23,6 +23,9 @@ import android.os.Parcel;
import android.os.Parcelable;
import cyanogenmod.os.Build;
+import cyanogenmod.os.Concierge;
+import cyanogenmod.os.Concierge.ParcelInfo;
+
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
@@ -188,35 +191,23 @@ public final class AirplaneModeSettings implements Parcelable {
/** @hide */
@Override
public void writeToParcel(Parcel dest, int flags) {
- // Write parcelable version, make sure to define explicit changes
- // within {@link Build.PARCELABLE_VERSION);
- dest.writeInt(Build.PARCELABLE_VERSION);
-
- // Inject a placeholder that will store the parcel size from this point on
- // (not including the size itself).
- int sizePosition = dest.dataPosition();
- dest.writeInt(0);
- int startPosition = dest.dataPosition();
+ // Tell the concierge to prepare the parcel
+ ParcelInfo parcelInfo = Concierge.prepareParcel(dest);
// === BOYSENBERRY ===
dest.writeInt(mOverride ? 1 : 0);
dest.writeInt(mValue);
dest.writeInt(mDirty ? 1 : 0);
- // Go back and write size
- int parcelableSize = dest.dataPosition() - startPosition;
- dest.setDataPosition(sizePosition);
- dest.writeInt(parcelableSize);
- dest.setDataPosition(startPosition + parcelableSize);
+ // Complete the parcel info for the concierge
+ parcelInfo.complete();
}
/** @hide */
public void readFromParcel(Parcel in) {
- // Read parcelable version, make sure to define explicit changes
- // within {@link Build.PARCELABLE_VERSION);
- int parcelableVersion = in.readInt();
- int parcelableSize = in.readInt();
- int startPosition = in.dataPosition();
+ // Read parcelable version via the Concierge
+ ParcelInfo parcelInfo = Concierge.receiveParcel(in);
+ int parcelableVersion = parcelInfo.getParcelVersion();
// Pattern here is that all new members should be added to the end of
// the writeToParcel method. Then we step through each version, until the latest
@@ -227,6 +218,7 @@ public final class AirplaneModeSettings implements Parcelable {
mDirty = in.readInt() != 0;
}
- in.setDataPosition(startPosition + parcelableSize);
+ // Complete parcel info for the concierge
+ parcelInfo.complete();
}
}