ServiceInfo.java revision eb034652c2037a47ebfd99779e8383bb8bb528af
1package android.content.pm; 2 3import android.os.Parcel; 4import android.os.Parcelable; 5import android.util.Printer; 6 7/** 8 * Information you can retrieve about a particular application 9 * service. This corresponds to information collected from the 10 * AndroidManifest.xml's <service> tags. 11 */ 12public class ServiceInfo extends ComponentInfo 13 implements Parcelable { 14 /** 15 * Optional name of a permission required to be able to access this 16 * Service. From the "permission" attribute. 17 */ 18 public String permission; 19 20 public ServiceInfo() { 21 } 22 23 public ServiceInfo(ServiceInfo orig) { 24 super(orig); 25 permission = orig.permission; 26 } 27 28 public void dump(Printer pw, String prefix) { 29 super.dumpFront(pw, prefix); 30 pw.println(prefix + "permission=" + permission); 31 } 32 33 public String toString() { 34 return "ServiceInfo{" 35 + Integer.toHexString(System.identityHashCode(this)) 36 + " " + name + "}"; 37 } 38 39 public int describeContents() { 40 return 0; 41 } 42 43 public void writeToParcel(Parcel dest, int parcelableFlags) { 44 super.writeToParcel(dest, parcelableFlags); 45 dest.writeString(permission); 46 } 47 48 public static final Creator<ServiceInfo> CREATOR = 49 new Creator<ServiceInfo>() { 50 public ServiceInfo createFromParcel(Parcel source) { 51 return new ServiceInfo(source); 52 } 53 public ServiceInfo[] newArray(int size) { 54 return new ServiceInfo[size]; 55 } 56 }; 57 58 private ServiceInfo(Parcel source) { 59 super(source); 60 permission = source.readString(); 61 } 62} 63