Android examples for android.os:Parcel
Read a Serializable object from the Parcel .
/*//from ww w. j a va2s.com * Copyright (C) 2014 Neo Visionaries Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ //package com.java2s; import java.io.Serializable; import android.os.Parcel; public class Main { /** * Read a {@code Serializable} object from the {@code Parcel}. * * <p> * First, this method reads a {@code boolean} value from the * {@code Parcel} using {@link #readBoolean(Parcel)} method. * When the read {@code boolean} value is {@code true}, this * method executes {@link Parcel#readSerializable() * in.readSerializable()} and returns the value. Otherwise, * when the read {@code boolean} value is {@code false}, * this method returns * {@code null}. * </p> * * @param in * {@code Parcel} to read from. * * @return * {@code Serializable} object or {@code null}. */ public static Serializable readSerializableWithPresenceFlag(Parcel in) { if (readBoolean(in)) { // Present. return in.readSerializable(); } else { // Not present. return null; } } /** * Read a {@code boolean} value from the {@code Parcel}. * * <p> * This method reads one {@code byte} and returns {@code true} * if the read value is not 0. * </p> * * @param in * {@code Parcel} to read from. * * @return * A {@code boolean} value read from the {@code Parcel}. */ public static boolean readBoolean(Parcel in) { return (in.readByte() != 0); } }