Attachment.java revision 7aee8f75f07eb39ecacdf0630d2199211aea5718
17b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira/** 27b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * Copyright (c) 2011, Google Inc. 37b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * 47b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * Licensed under the Apache License, Version 2.0 (the "License"); 57b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * you may not use this file except in compliance with the License. 67b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * You may obtain a copy of the License at 77b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * 87b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * http://www.apache.org/licenses/LICENSE-2.0 97b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * 107b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * Unless required by applicable law or agreed to in writing, software 117b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * distributed under the License is distributed on an "AS IS" BASIS, 127b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 137b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * See the License for the specific language governing permissions and 147b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira * limitations under the License. 157b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira */ 1630e2c24b056542f3b1b438aeb798305d1226d0c8Andy Huangpackage com.android.mail.providers; 177b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira 187aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereiraimport android.os.Parcel; 197aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereiraimport android.os.Parcelable; 207b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira 217aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereirapublic class Attachment implements Parcelable { 227aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira /** 237aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira * Attachment name. 247aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira */ 257aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public String name; 267aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira /** 277aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira * Attachment origin info. 287aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira * TODO: do we want this? Or location? 297aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira */ 307aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public String originExtras; 317aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira /** 327aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira * Mime type of the file. 337aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira */ 347aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public String mimeType; 357aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira /** 367aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira * Content uri location of the attachment. 377aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira */ 387aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public String contentUri; 397aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira /** 407aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira * Part id of the attachment. 417aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira */ 427aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public String partId; 437aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira /** 447aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira * isSynced is true if the attachment is available locally on the device. 457aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira */ 467aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public boolean isSynced; 477aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira /** 487aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira * Attachment size in kb. 497aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira */ 507aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public long size; 517b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira 527aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public Attachment(Parcel in) { 537aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira name = in.readString(); 547aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira originExtras = in.readString(); 557aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira mimeType = in.readString(); 567aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira contentUri = in.readString(); 577aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira partId = in.readString(); 587aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira isSynced = in.readInt() == 1 ? true : false; 597aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira size = in.readLong(); 607aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira } 617b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira 627aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public Attachment() { 637aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira } 647b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira 657aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira @Override 667aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public int describeContents() { 677aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira return 0; 687aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira } 697b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira 707aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira @Override 717aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public void writeToParcel(Parcel dest, int flags) { 727aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira dest.writeString(name); 737aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira dest.writeString(originExtras); 747aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira dest.writeString(mimeType); 757aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira dest.writeString(contentUri); 767aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira dest.writeString(partId); 777aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira dest.writeInt(isSynced? 1 : 0); 787aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira dest.writeLong(size); 797aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira } 807b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira 817aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public static final Creator<Attachment> CREATOR = new Creator<Attachment>() { 827aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira @Override 837aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public Attachment createFromParcel(Parcel source) { 847aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira return new Attachment(source); 857aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira } 867b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira 877aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira @Override 887aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira public Attachment[] newArray(int size) { 897aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira return new Attachment[size]; 907aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira } 917aee8f75f07eb39ecacdf0630d2199211aea5718Mindy Pereira }; 927b56a61174eeb202eea468b7f68b79729737ded2Mindy Pereira} 93