package com.openfarmanager.android.utils;
import android.os.Parcel;
import android.os.Parcelable;
import java.io.Serializable;
public class ParcelableWrapper<T> implements Parcelable, Serializable {
public T value;
public ParcelableWrapper(T object) {
value = object;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int i) {
try {
parcel.writeValue(value);
} catch (Exception ignore) {
}
}
public final Parcelable.Creator<ParcelableWrapper> CREATOR = new Parcelable.Creator<ParcelableWrapper>() {
public ParcelableWrapper createFromParcel(Parcel source) {
try {
//noinspection unchecked
return new ParcelableWrapper<T>((T) source.readValue(ClassLoader.getSystemClassLoader()));
} catch (Exception e) {
e.printStackTrace();
}
//noinspection unchecked
return new ParcelableWrapper<T>((T) new Object());
}
public ParcelableWrapper[] newArray(int size) {
throw new UnsupportedOperationException();
}
};
}