10701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvistpackage com.android.hotspot2.app; 20701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 30701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvistimport android.os.Parcel; 40701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvistimport android.os.Parcelable; 50701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 60701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvistimport com.android.hotspot2.flow.OSUInfo; 70701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvistimport com.android.hotspot2.osu.OSUManager; 80701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 90701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvistpublic class OSUData implements Parcelable { 100701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist private final String mName; 110701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist private final String mServiceDescription; 120701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist private final byte[] mIconData; 130701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist private final int mId; 140701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 150701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public OSUData(OSUInfo osuInfo) { 160701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist mName = osuInfo.getName(OSUManager.LOCALE); 170701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist mServiceDescription = osuInfo.getServiceDescription(OSUManager.LOCALE); 180701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist mIconData = osuInfo.getIconFileElement().getIconData(); 190701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist mId = osuInfo.getOsuID(); 200701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 210701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 220701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public String getName() { 230701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist return mName; 240701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 250701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 260701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public String getServiceDescription() { 270701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist return mServiceDescription; 280701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 290701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 300701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public byte[] getIconData() { 310701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist return mIconData; 320701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 330701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 340701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public int getId() { 350701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist return mId; 360701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 370701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 380701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist private OSUData(Parcel in) { 390701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist mName = in.readString(); 400701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist mServiceDescription = in.readString(); 410701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist int iconSize = in.readInt(); 420701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist mIconData = new byte[iconSize]; 430701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist in.readByteArray(mIconData); 440701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist mId = in.readInt(); 450701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 460701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 470701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public static final Parcelable.Creator<OSUData> CREATOR = new Parcelable.Creator<OSUData>() { 480701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public OSUData createFromParcel(Parcel in) { 490701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist return new OSUData(in); 500701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 510701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 520701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public OSUData[] newArray(int size) { 530701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist return new OSUData[size]; 540701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 550701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist }; 560701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 570701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist @Override 580701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public int describeContents() { 590701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist return 0; 600701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 610701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist 620701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist @Override 630701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist public void writeToParcel(Parcel dest, int flags) { 640701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist dest.writeString(mName); 650701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist dest.writeString(mServiceDescription); 660701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist dest.writeByteArray(mIconData); 670701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist dest.writeInt(mId); 680701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist } 690701952aaa17dcef461d3a538048243d9fe690f1Jan Nordqvist} 70