Rename [I]DropBox[Service] to [I]DropBoxManager[Service].

Un-hide the DropBoxManager interface, and update the public API accordingly.
diff --git a/Android.mk b/Android.mk
index f538d8e..a46e4f7 100644
--- a/Android.mk
+++ b/Android.mk
@@ -136,7 +136,7 @@
 	core/java/com/android/internal/appwidget/IAppWidgetService.aidl \
 	core/java/com/android/internal/appwidget/IAppWidgetHost.aidl \
 	core/java/com/android/internal/backup/IBackupTransport.aidl \
-	core/java/com/android/internal/os/IDropBoxService.aidl \
+	core/java/com/android/internal/os/IDropBoxManagerService.aidl \
 	core/java/com/android/internal/os/IResultReceiver.aidl \
 	core/java/com/android/internal/view/IInputContext.aidl \
 	core/java/com/android/internal/view/IInputContextCallback.aidl \
@@ -218,7 +218,7 @@
 	frameworks/base/core/java/android/appwidget/AppWidgetProviderInfo.aidl \
 	frameworks/base/core/java/android/net/Uri.aidl \
 	frameworks/base/core/java/android/os/Bundle.aidl \
-	frameworks/base/core/java/android/os/DropBox.aidl \
+	frameworks/base/core/java/android/os/DropBoxManager.aidl \
 	frameworks/base/core/java/android/os/ParcelFileDescriptor.aidl \
 	frameworks/base/core/java/android/os/ParcelUuid.aidl \
 	frameworks/base/core/java/android/view/KeyEvent.aidl \
diff --git a/api/current.xml b/api/current.xml
index 81148ed..662c068 100644
--- a/api/current.xml
+++ b/api/current.xml
@@ -32012,6 +32012,17 @@
  visibility="public"
 >
 </field>
+<field name="DROPBOX_SERVICE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;dropbox&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
 <field name="INPUT_METHOD_SERVICE"
  type="java.lang.String"
  transient="false"
@@ -102116,6 +102127,326 @@
 >
 </field>
 </class>
+<class name="DropBoxManager"
+ extends="java.lang.Object"
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<constructor name="DropBoxManager"
+ type="android.os.DropBoxManager"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+</constructor>
+<method name="addData"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="data" type="byte[]">
+</parameter>
+<parameter name="flags" type="int">
+</parameter>
+</method>
+<method name="addFile"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="fd" type="android.os.ParcelFileDescriptor">
+</parameter>
+<parameter name="flags" type="int">
+</parameter>
+</method>
+<method name="addText"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="data" type="java.lang.String">
+</parameter>
+</method>
+<method name="getNextEntry"
+ return="android.os.DropBoxManager.Entry"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="msec" type="long">
+</parameter>
+</method>
+<method name="isTagEnabled"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+</method>
+<field name="IS_EMPTY"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="1"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="IS_GZIPPED"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="4"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="IS_TEXT"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="2"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</class>
+<class name="DropBoxManager.Entry"
+ extends="java.lang.Object"
+ abstract="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<implements name="android.os.Parcelable">
+</implements>
+<constructor name="DropBoxManager.Entry"
+ type="android.os.DropBoxManager.Entry"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="millis" type="long">
+</parameter>
+</constructor>
+<constructor name="DropBoxManager.Entry"
+ type="android.os.DropBoxManager.Entry"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="millis" type="long">
+</parameter>
+<parameter name="text" type="java.lang.String">
+</parameter>
+</constructor>
+<constructor name="DropBoxManager.Entry"
+ type="android.os.DropBoxManager.Entry"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="millis" type="long">
+</parameter>
+<parameter name="data" type="byte[]">
+</parameter>
+<parameter name="flags" type="int">
+</parameter>
+</constructor>
+<constructor name="DropBoxManager.Entry"
+ type="android.os.DropBoxManager.Entry"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="millis" type="long">
+</parameter>
+<parameter name="data" type="android.os.ParcelFileDescriptor">
+</parameter>
+<parameter name="flags" type="int">
+</parameter>
+</constructor>
+<constructor name="DropBoxManager.Entry"
+ type="android.os.DropBoxManager.Entry"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="tag" type="java.lang.String">
+</parameter>
+<parameter name="millis" type="long">
+</parameter>
+<parameter name="data" type="java.io.File">
+</parameter>
+<parameter name="flags" type="int">
+</parameter>
+<exception name="IOException" type="java.io.IOException">
+</exception>
+</constructor>
+<method name="close"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</method>
+<method name="describeContents"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</method>
+<method name="getFlags"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</method>
+<method name="getInputStream"
+ return="java.io.InputStream"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<exception name="IOException" type="java.io.IOException">
+</exception>
+</method>
+<method name="getTag"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</method>
+<method name="getText"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="maxBytes" type="int">
+</parameter>
+</method>
+<method name="getTimeMillis"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</method>
+<method name="writeToParcel"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="out" type="android.os.Parcel">
+</parameter>
+<parameter name="flags" type="int">
+</parameter>
+</method>
+<field name="CREATOR"
+ type="android.os.Parcelable.Creator"
+ transient="false"
+ volatile="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</class>
 <class name="Environment"
  extends="java.lang.Object"
  abstract="false"
diff --git a/cleanspec.mk b/cleanspec.mk
new file mode 100644
index 0000000..683e303
--- /dev/null
+++ b/cleanspec.mk
@@ -0,0 +1 @@
+$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/core/java/com/android/internal/os/IDropBoxService.java)
diff --git a/core/java/android/app/ApplicationContext.java b/core/java/android/app/ApplicationContext.java
index 305ee6a..1e04abf 100644
--- a/core/java/android/app/ApplicationContext.java
+++ b/core/java/android/app/ApplicationContext.java
@@ -70,7 +70,7 @@
 import android.net.wifi.WifiManager;
 import android.os.Binder;
 import android.os.Bundle;
-import android.os.DropBox;
+import android.os.DropBoxManager;
 import android.os.FileUtils;
 import android.os.Handler;
 import android.os.IBinder;
@@ -94,7 +94,7 @@
 import android.accounts.AccountManager;
 import android.accounts.IAccountManager;
 
-import com.android.internal.os.IDropBoxService;
+import com.android.internal.os.IDropBoxManagerService;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -185,7 +185,7 @@
     private ClipboardManager mClipboardManager = null;
     private boolean mRestricted;
     private AccountManager mAccountManager; // protected by mSync
-    private DropBox mDropBox = null;
+    private DropBoxManager mDropBoxManager = null;
 
     private final Object mSync = new Object();
 
@@ -901,7 +901,7 @@
         } else if (WALLPAPER_SERVICE.equals(name)) {
             return getWallpaperManager();
         } else if (DROPBOX_SERVICE.equals(name)) {
-            return getDropBox();
+            return getDropBoxManager();
         }
 
         return null;
@@ -1060,15 +1060,15 @@
         return mAudioManager;
     }
 
-    private DropBox getDropBox() {
+    private DropBoxManager getDropBoxManager() {
         synchronized (mSync) {
-            if (mDropBox == null) {
+            if (mDropBoxManager == null) {
                 IBinder b = ServiceManager.getService(DROPBOX_SERVICE);
-                IDropBoxService service = IDropBoxService.Stub.asInterface(b);
-                mDropBox = new DropBox(service);
+                IDropBoxManagerService service = IDropBoxManagerService.Stub.asInterface(b);
+                mDropBoxManager = new DropBoxManager(service);
             }
         }
-        return mDropBox;
+        return mDropBoxManager;
     }
 
     @Override
diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java
index b4ab408..d77a6ca 100644
--- a/core/java/android/content/Context.java
+++ b/core/java/android/content/Context.java
@@ -1324,7 +1324,6 @@
      * Use with {@link #getSystemService} to retrieve a
      * {@blink android.os.DropBox DropBox} instance for recording
      * diagnostic logs.
-     * @hide
      * @see #getSystemService
      */
     public static final String DROPBOX_SERVICE = "dropbox";
diff --git a/core/java/android/os/DropBox.aidl b/core/java/android/os/DropBoxManager.aidl
similarity index 94%
rename from core/java/android/os/DropBox.aidl
rename to core/java/android/os/DropBoxManager.aidl
index 77abd22..6474ec2 100644
--- a/core/java/android/os/DropBox.aidl
+++ b/core/java/android/os/DropBoxManager.aidl
@@ -16,4 +16,4 @@
 
 package android.os;
 
-parcelable DropBox.Entry;
+parcelable DropBoxManager.Entry;
diff --git a/core/java/android/os/DropBox.java b/core/java/android/os/DropBoxManager.java
similarity index 95%
rename from core/java/android/os/DropBox.java
rename to core/java/android/os/DropBoxManager.java
index 0551dc1..b374043 100644
--- a/core/java/android/os/DropBox.java
+++ b/core/java/android/os/DropBoxManager.java
@@ -18,7 +18,7 @@
 
 import android.util.Log;
 
-import com.android.internal.os.IDropBoxService;
+import com.android.internal.os.IDropBoxManagerService;
 
 import java.io.ByteArrayInputStream;
 import java.io.File;
@@ -37,14 +37,12 @@
  * {@link android.content.Context#getSystemService}
  * with {@link android.content.Context#DROPBOX_SERVICE}.
  *
- * <p>DropBox entries are not sent anywhere directly, but other system services
- * and debugging tools may scan and upload entries for processing.
- *
- * {@pending}
+ * <p>DropBoxManager entries are not sent anywhere directly, but other system
+ * services and debugging tools may scan and upload entries for processing.
  */
-public class DropBox {
-    private static final String TAG = "DropBox";
-    private final IDropBoxService mService;
+public class DropBoxManager {
+    private static final String TAG = "DropBoxManager";
+    private final IDropBoxManagerService mService;
 
     /** Flag value: Entry's content was deleted to save space. */
     public static final int IS_EMPTY = 1;
@@ -198,14 +196,14 @@
     }
 
     /** {@hide} */
-    public DropBox(IDropBoxService service) { mService = service; }
+    public DropBoxManager(IDropBoxManagerService service) { mService = service; }
 
     /**
      * Create a dummy instance for testing.  All methods will fail unless
      * overridden with an appropriate mock implementation.  To obtain a
      * functional instance, use {@link android.content.Context#getSystemService}.
      */
-    protected DropBox() { mService = null; }
+    protected DropBoxManager() { mService = null; }
 
     /**
      * Stores human-readable text.  The data may be discarded eventually (or even
diff --git a/core/java/com/android/internal/os/IDropBoxManagerService.aidl b/core/java/com/android/internal/os/IDropBoxManagerService.aidl
new file mode 100644
index 0000000..d067926
--- /dev/null
+++ b/core/java/com/android/internal/os/IDropBoxManagerService.aidl
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2009 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.internal.os;
+
+import android.os.DropBoxManager;
+import android.os.ParcelFileDescriptor;
+
+/**
+ * "Backend" interface used by {@link android.os.DropBoxManager} to talk to the
+ * DropBoxManagerService that actually implements the drop box functionality.
+ *
+ * @see DropBoxManager
+ * @hide
+ */
+interface IDropBoxManagerService {
+    /**
+     * @see DropBoxManager#addText
+     * @see DropBoxManager#addData
+     * @see DropBoxManager#addFile
+     */
+    void add(in DropBoxManager.Entry entry);
+
+    /** @see DropBoxManager#getNextEntry */
+    boolean isTagEnabled(String tag);
+
+    /** @see DropBoxManager#getNextEntry */
+    DropBoxManager.Entry getNextEntry(String tag, long millis);
+}
diff --git a/core/java/com/android/internal/os/IDropBoxService.aidl b/core/java/com/android/internal/os/IDropBoxService.aidl
deleted file mode 100644
index f940041..0000000
--- a/core/java/com/android/internal/os/IDropBoxService.aidl
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (C) 2009 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.internal.os;
-
-import android.os.DropBox;
-import android.os.ParcelFileDescriptor;
-
-/**
- * "Backend" interface used by {@link android.os.DropBox} to talk to the
- * DropBoxService that actually implements the drop box functionality.
- *
- * @see DropBox
- * @hide
- */
-interface IDropBoxService {
-    /**
-     * @see DropBox#addText
-     * @see DropBox#addData
-     * @see DropBox#addFile
-     */
-    void add(in DropBox.Entry entry);
-
-    /** @see DropBox#getNextEntry */
-    boolean isTagEnabled(String tag);
-
-    /** @see DropBox#getNextEntry */
-    DropBox.Entry getNextEntry(String tag, long millis);
-}
diff --git a/services/java/com/android/server/DropBoxService.java b/services/java/com/android/server/DropBoxManagerService.java
similarity index 91%
rename from services/java/com/android/server/DropBoxService.java
rename to services/java/com/android/server/DropBoxManagerService.java
index f4e5ebc..48d455d 100644
--- a/services/java/com/android/server/DropBoxService.java
+++ b/services/java/com/android/server/DropBoxManagerService.java
@@ -23,7 +23,7 @@
 import android.content.IntentFilter;
 import android.content.pm.PackageManager;
 import android.net.Uri;
-import android.os.DropBox;
+import android.os.DropBoxManager;
 import android.os.ParcelFileDescriptor;
 import android.os.StatFs;
 import android.os.SystemClock;
@@ -31,7 +31,7 @@
 import android.text.format.DateFormat;
 import android.util.Log;
 
-import com.android.internal.os.IDropBoxService;
+import com.android.internal.os.IDropBoxManagerService;
 
 import java.io.File;
 import java.io.FileDescriptor;
@@ -54,13 +54,13 @@
 import java.util.zip.GZIPOutputStream;
 
 /**
- * Implementation of {@link IDropBoxService} using the filesystem.
- * Clients use {@link DropBox} to access this service.
+ * Implementation of {@link IDropBoxManagerService} using the filesystem.
+ * Clients use {@link DropBoxManager} to access this service.
  *
  * {@hide}
  */
-public final class DropBoxService extends IDropBoxService.Stub {
-    private static final String TAG = "DropBoxService";
+public final class DropBoxManagerService extends IDropBoxManagerService.Stub {
+    private static final String TAG = "DropBoxManagerService";
     private static final int DEFAULT_RESERVE_PERCENT = 10;
     private static final int DEFAULT_QUOTA_PERCENT = 10;
     private static final int DEFAULT_QUOTA_KB = 5 * 1024;
@@ -113,7 +113,7 @@
      * @param context to use for receiving free space & gservices intents
      * @param path to store drop box entries in
      */
-    public DropBoxService(Context context, File path) {
+    public DropBoxManagerService(Context context, File path) {
         mDropBoxDir = path;
 
         // Set up intent receivers
@@ -131,13 +131,13 @@
         mContext.unregisterReceiver(mReceiver);
     }
 
-    public void add(DropBox.Entry entry) {
+    public void add(DropBoxManager.Entry entry) {
         File temp = null;
         OutputStream output = null;
         final String tag = entry.getTag();
         try {
             int flags = entry.getFlags();
-            if ((flags & DropBox.IS_EMPTY) != 0) throw new IllegalArgumentException();
+            if ((flags & DropBoxManager.IS_EMPTY) != 0) throw new IllegalArgumentException();
 
             init();
             if (!isTagEnabled(tag)) return;
@@ -162,9 +162,9 @@
 
             temp = new File(mDropBoxDir, "drop" + Thread.currentThread().getId() + ".tmp");
             output = new FileOutputStream(temp);
-            if (read == buffer.length && ((flags & DropBox.IS_GZIPPED) == 0)) {
+            if (read == buffer.length && ((flags & DropBoxManager.IS_GZIPPED) == 0)) {
                 output = new GZIPOutputStream(output);
-                flags = flags | DropBox.IS_GZIPPED;
+                flags = flags | DropBoxManager.IS_GZIPPED;
             }
 
             do {
@@ -209,7 +209,7 @@
                 mContentResolver, Settings.Gservices.DROPBOX_TAG_PREFIX + tag));
     }
 
-    public synchronized DropBox.Entry getNextEntry(String tag, long millis) {
+    public synchronized DropBoxManager.Entry getNextEntry(String tag, long millis) {
         if (mContext.checkCallingOrSelfPermission(android.Manifest.permission.READ_LOGS)
                 != PackageManager.PERMISSION_GRANTED) {
             throw new SecurityException("READ_LOGS permission required");
@@ -227,11 +227,12 @@
 
         for (EntryFile entry : list.contents.tailSet(new EntryFile(millis + 1))) {
             if (entry.tag == null) continue;
-            if ((entry.flags & DropBox.IS_EMPTY) != 0) {
-                return new DropBox.Entry(entry.tag, entry.timestampMillis);
+            if ((entry.flags & DropBoxManager.IS_EMPTY) != 0) {
+                return new DropBoxManager.Entry(entry.tag, entry.timestampMillis);
             }
             try {
-                return new DropBox.Entry(entry.tag, entry.timestampMillis, entry.file, entry.flags);
+                return new DropBoxManager.Entry(
+                        entry.tag, entry.timestampMillis, entry.file, entry.flags);
             } catch (IOException e) {
                 Log.e(TAG, "Can't read: " + entry.file, e);
                 // Continue to next file
@@ -244,7 +245,7 @@
     public synchronized void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
         if (mContext.checkCallingOrSelfPermission(android.Manifest.permission.DUMP)
                 != PackageManager.PERMISSION_GRANTED) {
-            pw.println("Permission Denial: Can't dump DropBoxService");
+            pw.println("Permission Denial: Can't dump DropBoxManagerService");
             return;
         }
 
@@ -298,25 +299,25 @@
             if (entry.file == null) {
                 pw.println(" (no file)");
                 continue;
-            } else if ((entry.flags & DropBox.IS_EMPTY) != 0) {
+            } else if ((entry.flags & DropBoxManager.IS_EMPTY) != 0) {
                 pw.println(" (contents lost)");
                 continue;
             } else {
-                pw.print((entry.flags & DropBox.IS_GZIPPED) != 0 ? " (comopressed " : " (");
-                pw.print((entry.flags & DropBox.IS_TEXT) != 0 ? "text" : "data");
+                pw.print((entry.flags & DropBoxManager.IS_GZIPPED) != 0 ? " (comopressed " : " (");
+                pw.print((entry.flags & DropBoxManager.IS_TEXT) != 0 ? "text" : "data");
                 pw.format(", %d bytes)", entry.file.length());
                 pw.println();
             }
 
-            if (doFile || (doPrint && (entry.flags & DropBox.IS_TEXT) == 0)) {
+            if (doFile || (doPrint && (entry.flags & DropBoxManager.IS_TEXT) == 0)) {
                 if (!doPrint) pw.print("    ");
                 pw.println(entry.file.getPath());
             }
 
-            if ((entry.flags & DropBox.IS_TEXT) != 0 && (doPrint || !doFile)) {
-                DropBox.Entry dbe = null;
+            if ((entry.flags & DropBoxManager.IS_TEXT) != 0 && (doPrint || !doFile)) {
+                DropBoxManager.Entry dbe = null;
                 try {
-                    dbe = new DropBox.Entry(
+                    dbe = new DropBoxManager.Entry(
                              entry.tag, entry.timestampMillis, entry.file, entry.flags);
 
                     if (doPrint) {
@@ -408,14 +409,14 @@
          */
         public EntryFile(File temp, File dir, String tag,long timestampMillis,
                          int flags, int blockSize) throws IOException {
-            if ((flags & DropBox.IS_EMPTY) != 0) throw new IllegalArgumentException();
+            if ((flags & DropBoxManager.IS_EMPTY) != 0) throw new IllegalArgumentException();
 
             this.tag = tag;
             this.timestampMillis = timestampMillis;
             this.flags = flags;
             this.file = new File(dir, Uri.encode(tag) + "@" + timestampMillis +
-                    ((flags & DropBox.IS_TEXT) != 0 ? ".txt" : ".dat") +
-                    ((flags & DropBox.IS_GZIPPED) != 0 ? ".gz" : ""));
+                    ((flags & DropBoxManager.IS_TEXT) != 0 ? ".txt" : ".dat") +
+                    ((flags & DropBoxManager.IS_GZIPPED) != 0 ? ".gz" : ""));
 
             if (!temp.renameTo(this.file)) {
                 throw new IOException("Can't rename " + temp + " to " + this.file);
@@ -433,7 +434,7 @@
         public EntryFile(File dir, String tag, long timestampMillis) throws IOException {
             this.tag = tag;
             this.timestampMillis = timestampMillis;
-            this.flags = DropBox.IS_EMPTY;
+            this.flags = DropBoxManager.IS_EMPTY;
             this.file = new File(dir, Uri.encode(tag) + "@" + timestampMillis + ".lost");
             this.blocks = 0;
             new FileOutputStream(this.file).close();
@@ -453,26 +454,26 @@
             if (at < 0) {
                 this.tag = null;
                 this.timestampMillis = 0;
-                this.flags = DropBox.IS_EMPTY;
+                this.flags = DropBoxManager.IS_EMPTY;
                 return;
             }
 
             int flags = 0;
             this.tag = Uri.decode(name.substring(0, at));
             if (name.endsWith(".gz")) {
-                flags |= DropBox.IS_GZIPPED;
+                flags |= DropBoxManager.IS_GZIPPED;
                 name = name.substring(0, name.length() - 3);
             }
             if (name.endsWith(".lost")) {
-                flags |= DropBox.IS_EMPTY;
+                flags |= DropBoxManager.IS_EMPTY;
                 name = name.substring(at + 1, name.length() - 5);
             } else if (name.endsWith(".txt")) {
-                flags |= DropBox.IS_TEXT;
+                flags |= DropBoxManager.IS_TEXT;
                 name = name.substring(at + 1, name.length() - 4);
             } else if (name.endsWith(".dat")) {
                 name = name.substring(at + 1, name.length() - 4);
             } else {
-                this.flags = DropBox.IS_EMPTY;
+                this.flags = DropBoxManager.IS_EMPTY;
                 this.timestampMillis = 0;
                 return;
             }
@@ -490,7 +491,7 @@
         public EntryFile(long millis) {
             this.tag = null;
             this.timestampMillis = millis;
-            this.flags = DropBox.IS_EMPTY;
+            this.flags = DropBoxManager.IS_EMPTY;
             this.file = null;
             this.blocks = 0;
         }
@@ -585,7 +586,7 @@
                 mAllFiles.blocks -= late.blocks;
                 FileList tagFiles = mFilesByTag.get(late.tag);
                 if (tagFiles.contents.remove(late)) tagFiles.blocks -= late.blocks;
-                if ((late.flags & DropBox.IS_EMPTY) == 0) {
+                if ((late.flags & DropBoxManager.IS_EMPTY) == 0) {
                     enrollEntry(new EntryFile(
                             late.file, mDropBoxDir, late.tag, t++, late.flags, mBlockSize));
                 } else {
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java
index 5f30710..3cfd1a9 100644
--- a/services/java/com/android/server/SystemServer.java
+++ b/services/java/com/android/server/SystemServer.java
@@ -297,9 +297,9 @@
             try {
                 Log.i(TAG, "DropBox Service");
                 ServiceManager.addService(Context.DROPBOX_SERVICE,
-                        new DropBoxService(context, new File("/data/system/dropbox")));
+                        new DropBoxManagerService(context, new File("/data/system/dropbox")));
             } catch (Throwable e) {
-                Log.e(TAG, "Failure starting DropBox Service", e);
+                Log.e(TAG, "Failure starting DropBoxManagerService", e);
             }
 
             try {
diff --git a/tests/AndroidTests/src/com/android/unit_tests/DropBoxTest.java b/tests/AndroidTests/src/com/android/unit_tests/DropBoxTest.java
index 286f702..a0d096e 100644
--- a/tests/AndroidTests/src/com/android/unit_tests/DropBoxTest.java
+++ b/tests/AndroidTests/src/com/android/unit_tests/DropBoxTest.java
@@ -19,14 +19,14 @@
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
-import android.os.DropBox;
+import android.os.DropBoxManager;
 import android.os.ParcelFileDescriptor;
 import android.os.ServiceManager;
 import android.os.StatFs;
 import android.provider.Settings;
 import android.test.AndroidTestCase;
 
-import com.android.server.DropBoxService;
+import com.android.server.DropBoxManagerService;
 
 import java.io.File;
 import java.io.FileOutputStream;
@@ -35,7 +35,7 @@
 import java.util.Random;
 import java.util.zip.GZIPOutputStream;
 
-/** Test {@link DropBox} functionality. */
+/** Test {@link DropBoxManager} functionality. */
 public class DropBoxTest extends AndroidTestCase {
     public void tearDown() throws Exception {
         Intent override = new Intent(Settings.Gservices.OVERRIDE_ACTION);
@@ -46,7 +46,8 @@
     }
 
     public void testAddText() throws Exception {
-        DropBox dropbox = (DropBox) getContext().getSystemService(Context.DROPBOX_SERVICE);
+        DropBoxManager dropbox = (DropBoxManager) getContext().getSystemService(
+                Context.DROPBOX_SERVICE);
         long before = System.currentTimeMillis();
         Thread.sleep(5);
         dropbox.addText("DropBoxTest", "TEST0");
@@ -58,9 +59,9 @@
         Thread.sleep(5);
         long after = System.currentTimeMillis();
 
-        DropBox.Entry e0 = dropbox.getNextEntry("DropBoxTest", before);
-        DropBox.Entry e1 = dropbox.getNextEntry("DropBoxTest", e0.getTimeMillis());
-        DropBox.Entry e2 = dropbox.getNextEntry("DropBoxTest", e1.getTimeMillis());
+        DropBoxManager.Entry e0 = dropbox.getNextEntry("DropBoxTest", before);
+        DropBoxManager.Entry e1 = dropbox.getNextEntry("DropBoxTest", e0.getTimeMillis());
+        DropBoxManager.Entry e2 = dropbox.getNextEntry("DropBoxTest", e1.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry("DropBoxTest", e2.getTimeMillis()));
 
         assertTrue(e0.getTimeMillis() > before);
@@ -79,12 +80,13 @@
     }
 
     public void testAddData() throws Exception {
-        DropBox dropbox = (DropBox) getContext().getSystemService(Context.DROPBOX_SERVICE);
+        DropBoxManager dropbox = (DropBoxManager) getContext().getSystemService(
+                Context.DROPBOX_SERVICE);
         long before = System.currentTimeMillis();
         dropbox.addData("DropBoxTest", "TEST".getBytes(), 0);
         long after = System.currentTimeMillis();
 
-        DropBox.Entry e = dropbox.getNextEntry("DropBoxTest", before);
+        DropBoxManager.Entry e = dropbox.getNextEntry("DropBoxTest", before);
         assertTrue(null == dropbox.getNextEntry("DropBoxTest", e.getTimeMillis()));
 
         assertEquals("DropBoxTest", e.getTag());
@@ -122,7 +124,8 @@
         os2.close();
         gz3.close();
 
-        DropBox dropbox = (DropBox) getContext().getSystemService(Context.DROPBOX_SERVICE);
+        DropBoxManager dropbox = (DropBoxManager) getContext().getSystemService(
+                Context.DROPBOX_SERVICE);
         int mode = ParcelFileDescriptor.MODE_READ_ONLY;
 
         ParcelFileDescriptor pfd0 = ParcelFileDescriptor.open(f0, mode);
@@ -130,20 +133,20 @@
         ParcelFileDescriptor pfd2 = ParcelFileDescriptor.open(f2, mode);
         ParcelFileDescriptor pfd3 = ParcelFileDescriptor.open(f3, mode);
 
-        dropbox.addFile("DropBoxTest", pfd0, DropBox.IS_TEXT);
-        dropbox.addFile("DropBoxTest", pfd1, DropBox.IS_TEXT | DropBox.IS_GZIPPED);
+        dropbox.addFile("DropBoxTest", pfd0, DropBoxManager.IS_TEXT);
+        dropbox.addFile("DropBoxTest", pfd1, DropBoxManager.IS_TEXT | DropBoxManager.IS_GZIPPED);
         dropbox.addFile("DropBoxTest", pfd2, 0);
-        dropbox.addFile("DropBoxTest", pfd3, DropBox.IS_GZIPPED);
+        dropbox.addFile("DropBoxTest", pfd3, DropBoxManager.IS_GZIPPED);
 
         pfd0.close();
         pfd1.close();
         pfd2.close();
         pfd3.close();
 
-        DropBox.Entry e0 = dropbox.getNextEntry("DropBoxTest", before);
-        DropBox.Entry e1 = dropbox.getNextEntry("DropBoxTest", e0.getTimeMillis());
-        DropBox.Entry e2 = dropbox.getNextEntry("DropBoxTest", e1.getTimeMillis());
-        DropBox.Entry e3 = dropbox.getNextEntry("DropBoxTest", e2.getTimeMillis());
+        DropBoxManager.Entry e0 = dropbox.getNextEntry("DropBoxTest", before);
+        DropBoxManager.Entry e1 = dropbox.getNextEntry("DropBoxTest", e0.getTimeMillis());
+        DropBoxManager.Entry e2 = dropbox.getNextEntry("DropBoxTest", e1.getTimeMillis());
+        DropBoxManager.Entry e3 = dropbox.getNextEntry("DropBoxTest", e2.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry("DropBoxTest", e3.getTimeMillis()));
 
         assertTrue(e0.getTimeMillis() > before);
@@ -151,8 +154,8 @@
         assertTrue(e2.getTimeMillis() > e1.getTimeMillis());
         assertTrue(e3.getTimeMillis() > e2.getTimeMillis());
 
-        assertEquals(DropBox.IS_TEXT, e0.getFlags());
-        assertEquals(DropBox.IS_TEXT, e1.getFlags());
+        assertEquals(DropBoxManager.IS_TEXT, e0.getFlags());
+        assertEquals(DropBoxManager.IS_TEXT, e1.getFlags());
         assertEquals(0, e2.getFlags());
         assertEquals(0, e3.getFlags());
 
@@ -198,14 +201,14 @@
         // Tombstone in the far future
         new FileOutputStream(new File(dir, "DropBoxTest@" + (before + 100002) + ".lost")).close();
 
-        DropBoxService service = new DropBoxService(getContext(), dir);
-        DropBox dropbox = new DropBox(service);
+        DropBoxManagerService service = new DropBoxManagerService(getContext(), dir);
+        DropBoxManager dropbox = new DropBoxManager(service);
 
         // Until a write, the timestamps are taken at face value
-        DropBox.Entry e0 = dropbox.getNextEntry(null, before);
-        DropBox.Entry e1 = dropbox.getNextEntry(null, e0.getTimeMillis());
-        DropBox.Entry e2 = dropbox.getNextEntry(null, e1.getTimeMillis());
-        DropBox.Entry e3 = dropbox.getNextEntry(null, e2.getTimeMillis());
+        DropBoxManager.Entry e0 = dropbox.getNextEntry(null, before);
+        DropBoxManager.Entry e1 = dropbox.getNextEntry(null, e0.getTimeMillis());
+        DropBoxManager.Entry e2 = dropbox.getNextEntry(null, e1.getTimeMillis());
+        DropBoxManager.Entry e3 = dropbox.getNextEntry(null, e2.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry(null, e3.getTimeMillis()));
 
         assertEquals("FUTURE0", e0.getText(80));
@@ -249,7 +252,8 @@
     }
 
     public void testIsTagEnabled() throws Exception {
-        DropBox dropbox = (DropBox) getContext().getSystemService(Context.DROPBOX_SERVICE);
+        DropBoxManager dropbox = (DropBoxManager) getContext().getSystemService(
+                Context.DROPBOX_SERVICE);
         long before = System.currentTimeMillis();
         dropbox.addText("DropBoxTest", "TEST-ENABLED");
         assertTrue(dropbox.isTagEnabled("DropBoxTest"));
@@ -268,8 +272,8 @@
         dropbox.addText("DropBoxTest", "TEST-ENABLED-AGAIN");
         assertTrue(dropbox.isTagEnabled("DropBoxTest"));
 
-        DropBox.Entry e0 = dropbox.getNextEntry("DropBoxTest", before);
-        DropBox.Entry e1 = dropbox.getNextEntry("DropBoxTest", e0.getTimeMillis());
+        DropBoxManager.Entry e0 = dropbox.getNextEntry("DropBoxTest", before);
+        DropBoxManager.Entry e1 = dropbox.getNextEntry("DropBoxTest", e0.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry("DropBoxTest", e1.getTimeMillis()));
 
         assertEquals("TEST-ENABLED", e0.getText(80));
@@ -281,24 +285,24 @@
 
     public void testGetNextEntry() throws Exception {
         File dir = getEmptyDir("testGetNextEntry");
-        DropBoxService service = new DropBoxService(getContext(), dir);
-        DropBox dropbox = new DropBox(service);
+        DropBoxManagerService service = new DropBoxManagerService(getContext(), dir);
+        DropBoxManager dropbox = new DropBoxManager(service);
 
         long before = System.currentTimeMillis();
         dropbox.addText("DropBoxTest.A", "A0");
         dropbox.addText("DropBoxTest.B", "B0");
         dropbox.addText("DropBoxTest.A", "A1");
 
-        DropBox.Entry a0 = dropbox.getNextEntry("DropBoxTest.A", before);
-        DropBox.Entry a1 = dropbox.getNextEntry("DropBoxTest.A", a0.getTimeMillis());
+        DropBoxManager.Entry a0 = dropbox.getNextEntry("DropBoxTest.A", before);
+        DropBoxManager.Entry a1 = dropbox.getNextEntry("DropBoxTest.A", a0.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry("DropBoxTest.A", a1.getTimeMillis()));
 
-        DropBox.Entry b0 = dropbox.getNextEntry("DropBoxTest.B", before);
+        DropBoxManager.Entry b0 = dropbox.getNextEntry("DropBoxTest.B", before);
         assertTrue(null == dropbox.getNextEntry("DropBoxTest.B", b0.getTimeMillis()));
 
-        DropBox.Entry x0 = dropbox.getNextEntry(null, before);
-        DropBox.Entry x1 = dropbox.getNextEntry(null, x0.getTimeMillis());
-        DropBox.Entry x2 = dropbox.getNextEntry(null, x1.getTimeMillis());
+        DropBoxManager.Entry x0 = dropbox.getNextEntry(null, before);
+        DropBoxManager.Entry x1 = dropbox.getNextEntry(null, x0.getTimeMillis());
+        DropBoxManager.Entry x2 = dropbox.getNextEntry(null, x1.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry(null, x2.getTimeMillis()));
 
         assertEquals("DropBoxTest.A", a0.getTag());
@@ -345,8 +349,8 @@
 
         final int overhead = 64;
         long before = System.currentTimeMillis();
-        DropBoxService service = new DropBoxService(getContext(), dir);
-        DropBox dropbox = new DropBox(service);
+        DropBoxManagerService service = new DropBoxManagerService(getContext(), dir);
+        DropBoxManager dropbox = new DropBoxManager(service);
 
         addRandomEntry(dropbox, "DropBoxTest0", blockSize - overhead);
         addRandomEntry(dropbox, "DropBoxTest0", blockSize - overhead);
@@ -361,16 +365,16 @@
         addRandomEntry(dropbox, "DropBoxTest2", blockSize - overhead);
         addRandomEntry(dropbox, "DropBoxTest2", blockSize - overhead);
 
-        DropBox.Entry e0 = dropbox.getNextEntry(null, before);
-        DropBox.Entry e1 = dropbox.getNextEntry(null, e0.getTimeMillis());
-        DropBox.Entry e2 = dropbox.getNextEntry(null, e1.getTimeMillis());
-        DropBox.Entry e3 = dropbox.getNextEntry(null, e2.getTimeMillis());
-        DropBox.Entry e4 = dropbox.getNextEntry(null, e3.getTimeMillis());
-        DropBox.Entry e5 = dropbox.getNextEntry(null, e4.getTimeMillis());
-        DropBox.Entry e6 = dropbox.getNextEntry(null, e5.getTimeMillis());
-        DropBox.Entry e7 = dropbox.getNextEntry(null, e6.getTimeMillis());
-        DropBox.Entry e8 = dropbox.getNextEntry(null, e7.getTimeMillis());
-        DropBox.Entry e9 = dropbox.getNextEntry(null, e8.getTimeMillis());
+        DropBoxManager.Entry e0 = dropbox.getNextEntry(null, before);
+        DropBoxManager.Entry e1 = dropbox.getNextEntry(null, e0.getTimeMillis());
+        DropBoxManager.Entry e2 = dropbox.getNextEntry(null, e1.getTimeMillis());
+        DropBoxManager.Entry e3 = dropbox.getNextEntry(null, e2.getTimeMillis());
+        DropBoxManager.Entry e4 = dropbox.getNextEntry(null, e3.getTimeMillis());
+        DropBoxManager.Entry e5 = dropbox.getNextEntry(null, e4.getTimeMillis());
+        DropBoxManager.Entry e6 = dropbox.getNextEntry(null, e5.getTimeMillis());
+        DropBoxManager.Entry e7 = dropbox.getNextEntry(null, e6.getTimeMillis());
+        DropBoxManager.Entry e8 = dropbox.getNextEntry(null, e7.getTimeMillis());
+        DropBoxManager.Entry e9 = dropbox.getNextEntry(null, e8.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry(null, e9.getTimeMillis()));
 
         assertEquals("DropBoxTest0", e0.getTag());
@@ -409,9 +413,9 @@
 
         // Specifying a tag name skips tombstone records.
 
-        DropBox.Entry t0 = dropbox.getNextEntry("DropBoxTest1", before);
-        DropBox.Entry t1 = dropbox.getNextEntry("DropBoxTest1", t0.getTimeMillis());
-        DropBox.Entry t2 = dropbox.getNextEntry("DropBoxTest1", t1.getTimeMillis());
+        DropBoxManager.Entry t0 = dropbox.getNextEntry("DropBoxTest1", before);
+        DropBoxManager.Entry t1 = dropbox.getNextEntry("DropBoxTest1", t0.getTimeMillis());
+        DropBoxManager.Entry t2 = dropbox.getNextEntry("DropBoxTest1", t1.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry("DropBoxTest1", t2.getTimeMillis()));
 
         assertEquals("DropBoxTest1", t0.getTag());
@@ -441,15 +445,15 @@
 
         // Write one normal entry and another so big that it is instantly tombstoned
         long before = System.currentTimeMillis();
-        DropBoxService service = new DropBoxService(getContext(), dir);
-        DropBox dropbox = new DropBox(service);
+        DropBoxManagerService service = new DropBoxManagerService(getContext(), dir);
+        DropBoxManager dropbox = new DropBoxManager(service);
 
         dropbox.addText("DropBoxTest", "TEST");
         addRandomEntry(dropbox, "DropBoxTest", blockSize * 20);
 
         // Verify that things are as expected
-        DropBox.Entry e0 = dropbox.getNextEntry(null, before);
-        DropBox.Entry e1 = dropbox.getNextEntry(null, e0.getTimeMillis());
+        DropBoxManager.Entry e0 = dropbox.getNextEntry(null, before);
+        DropBoxManager.Entry e1 = dropbox.getNextEntry(null, e0.getTimeMillis());
         assertTrue(null == dropbox.getNextEntry(null, e1.getTimeMillis()));
 
         assertEquals("TEST", e0.getText(80));
@@ -469,15 +473,15 @@
         e0.close();
     }
 
-    public void testCreateDropBoxWithInvalidDirectory() throws Exception {
-        // If created with an invalid directory, the DropBox should suffer quietly
+    public void testCreateDropBoxManagerWithInvalidDirectory() throws Exception {
+        // If created with an invalid directory, the DropBoxManager should suffer quietly
         // and fail all operations (this is how it survives a full disk).
         // Once the directory becomes possible to create, it will start working.
 
-        File dir = new File(getEmptyDir("testCreateDropBoxWith"), "InvalidDirectory");
+        File dir = new File(getEmptyDir("testCreateDropBoxManagerWith"), "InvalidDirectory");
         new FileOutputStream(dir).close();  // Create an empty file
-        DropBoxService service = new DropBoxService(getContext(), dir);
-        DropBox dropbox = new DropBox(service);
+        DropBoxManagerService service = new DropBoxManagerService(getContext(), dir);
+        DropBoxManager dropbox = new DropBoxManager(service);
 
         dropbox.addText("DropBoxTest", "should be ignored");
         dropbox.addData("DropBoxTest", "should be ignored".getBytes(), 0);
@@ -485,7 +489,7 @@
 
         dir.delete();  // Remove the file so a directory can be created
         dropbox.addText("DropBoxTest", "TEST");
-        DropBox.Entry e = dropbox.getNextEntry("DropBoxTest", 0);
+        DropBoxManager.Entry e = dropbox.getNextEntry("DropBoxTest", 0);
         assertTrue(null == dropbox.getNextEntry("DropBoxTest", e.getTimeMillis()));
         assertEquals("DropBoxTest", e.getTag());
         assertEquals("TEST", e.getText(80));
@@ -493,7 +497,7 @@
         service.stop();
     }
 
-    private void addRandomEntry(DropBox dropbox, String tag, int size) throws Exception {
+    private void addRandomEntry(DropBoxManager dropbox, String tag, int size) throws Exception {
         byte[] bytes = new byte[size];
         new Random(System.currentTimeMillis()).nextBytes(bytes);
 
@@ -507,7 +511,7 @@
         fd.close();
     }
 
-    private int getEntrySize(DropBox.Entry e) throws Exception {
+    private int getEntrySize(DropBoxManager.Entry e) throws Exception {
         InputStream is = e.getInputStream();
         if (is == null) return -1;
         int length = 0;