Make android.content.ComponentName implement java.lang.Comparable.
diff --git a/api/current.xml b/api/current.xml
index 643ea23..09f1b85 100644
--- a/api/current.xml
+++ b/api/current.xml
@@ -24667,6 +24667,8 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="java.lang.Comparable">
+</implements>
 <implements name="android.os.Parcelable">
 </implements>
 <constructor name="ComponentName"
@@ -24715,6 +24717,19 @@
 <parameter name="in" type="android.os.Parcel">
 </parameter>
 </constructor>
+<method name="compareTo"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="that" type="android.content.ComponentName">
+</parameter>
+</method>
 <method name="describeContents"
  return="int"
  abstract="false"
diff --git a/core/java/android/content/ComponentName.java b/core/java/android/content/ComponentName.java
index 32c6864..04552021 100644
--- a/core/java/android/content/ComponentName.java
+++ b/core/java/android/content/ComponentName.java
@@ -18,6 +18,7 @@
 
 import android.os.Parcel;
 import android.os.Parcelable;
+import java.lang.Comparable;
 
 /**
  * Identifier for a specific application component
@@ -29,7 +30,7 @@
  * name inside of that package.
  * 
  */
-public final class ComponentName implements Parcelable {
+public final class ComponentName implements Parcelable, Comparable<ComponentName> {
     private final String mPackage;
     private final String mClass;
 
@@ -196,6 +197,15 @@
     public int hashCode() {
         return mPackage.hashCode() + mClass.hashCode();
     }
+
+    public int compareTo(ComponentName that) {
+        int v;
+        v = this.mPackage.compareTo(that.mPackage);
+        if (v != 0) {
+            return v;
+        }
+        return this.mClass.compareTo(that.mClass);
+    }
     
     public int describeContents() {
         return 0;