diff options
| author | 2016-03-30 22:04:23 +0000 | |
|---|---|---|
| committer | 2016-03-30 22:04:24 +0000 | |
| commit | 3d6dc3a60a0edcdc4bf6eb4cccb3a20c807b6975 (patch) | |
| tree | 7c3c94188e5814811487a73b38ef5b699f4a07c1 | |
| parent | 612b4c588bbd81e36753f5a0f424208e91e580b6 (diff) | |
| parent | 4e8c7f61bea7c8a3dd750db13b6319a7bd84dc3c (diff) | |
Merge "Add metrics for create directory and rename file operations" into nyc-dev
3 files changed, 62 insertions, 5 deletions
diff --git a/packages/DocumentsUI/src/com/android/documentsui/CreateDirectoryFragment.java b/packages/DocumentsUI/src/com/android/documentsui/CreateDirectoryFragment.java index ebc9082185b1..5b5a96e5c043 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/CreateDirectoryFragment.java +++ b/packages/DocumentsUI/src/com/android/documentsui/CreateDirectoryFragment.java @@ -153,10 +153,12 @@ public class CreateDirectoryFragment extends DialogFragment { if (result != null) { // Navigate into newly created child mActivity.onDirectoryCreated(result); + Metrics.logCreateDirOperation(getContext()); } else { - Snackbars.makeSnackbar(mActivity, R.string.create_error, Snackbar.LENGTH_SHORT).show(); + Snackbars.makeSnackbar(mActivity, R.string.create_error, Snackbar.LENGTH_SHORT) + .show(); + Metrics.logCreateDirError(getContext()); } - mActivity.setPending(false); } } diff --git a/packages/DocumentsUI/src/com/android/documentsui/Metrics.java b/packages/DocumentsUI/src/com/android/documentsui/Metrics.java index a4776365c26d..f1f47c832d66 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/Metrics.java +++ b/packages/DocumentsUI/src/com/android/documentsui/Metrics.java @@ -147,10 +147,14 @@ public final class Metrics { private static final int FILEOP_MOVE_SYSTEM_PROVIDER = 6; // Move to a system provider. private static final int FILEOP_MOVE_EXTERNAL_PROVIDER = 7; // Move to a 3rd-party provider. private static final int FILEOP_DELETE = 8; + private static final int FILEOP_RENAME = 9; + private static final int FILEOP_CREATE_DIR = 10; private static final int FILEOP_OTHER_ERROR = 100; private static final int FILEOP_DELETE_ERROR = 101; private static final int FILEOP_MOVE_ERROR = 102; private static final int FILEOP_COPY_ERROR = 103; + private static final int FILEOP_RENAME_ERROR = 104; + private static final int FILEOP_CREATE_DIR_ERROR = 105; @IntDef(flag = true, value = { FILEOP_OTHER, @@ -161,10 +165,14 @@ public final class Metrics { FILEOP_MOVE_SYSTEM_PROVIDER, FILEOP_MOVE_EXTERNAL_PROVIDER, FILEOP_DELETE, + FILEOP_RENAME, + FILEOP_CREATE_DIR, FILEOP_OTHER_ERROR, FILEOP_COPY_ERROR, FILEOP_MOVE_ERROR, - FILEOP_DELETE_ERROR + FILEOP_DELETE_ERROR, + FILEOP_RENAME_ERROR, + FILEOP_CREATE_DIR_ERROR }) @Retention(RetentionPolicy.SOURCE) public @interface FileOp {} @@ -347,6 +355,28 @@ public final class Metrics { } /** + * Logs create directory operation. It is a part of file operation stats. We do not + * differentiate between internal and external locations, all create directory operations are + * logged under COUNT_FILEOP_SYSTEM. Call this when a create directory operation has completed. + * + * @param context + */ + public static void logCreateDirOperation(Context context) { + logHistogram(context, COUNT_FILEOP_SYSTEM, FILEOP_CREATE_DIR); + } + + /** + * Logs rename file operation. It is a part of file operation stats. We do not differentiate + * between internal and external locations, all rename operations are logged under + * COUNT_FILEOP_SYSTEM. Call this when a rename file operation has completed. + * + * @param context + */ + public static void logRenameFileOperation(Context context) { + logHistogram(context, COUNT_FILEOP_SYSTEM, FILEOP_RENAME); + } + + /** * Logs some kind of file operation error. Call this when a file operation (e.g. copy, delete) * fails. * @@ -379,6 +409,28 @@ public final class Metrics { } /** + * Logs create directory operation error. We do not differentiate between internal and external + * locations, all create directory errors are logged under COUNT_FILEOP_SYSTEM. Call this when a + * create directory operation fails. + * + * @param context + */ + public static void logCreateDirError(Context context) { + logHistogram(context, COUNT_FILEOP_SYSTEM, FILEOP_CREATE_DIR); + } + + /** + * Logs rename file operation error. We do not differentiate between internal and external + * locations, all rename errors are logged under COUNT_FILEOP_SYSTEM. Call this + * when a rename file operation fails. + * + * @param context + */ + public static void logRenameFileError(Context context) { + logHistogram(context, COUNT_FILEOP_SYSTEM, FILEOP_RENAME_ERROR); + } + + /** * Logs the cancellation of a file operation. Call this when a Job is canceled. * @param context * @param operationType diff --git a/packages/DocumentsUI/src/com/android/documentsui/dirlist/RenameDocumentFragment.java b/packages/DocumentsUI/src/com/android/documentsui/dirlist/RenameDocumentFragment.java index 884abbbe980b..73aa366ed639 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/dirlist/RenameDocumentFragment.java +++ b/packages/DocumentsUI/src/com/android/documentsui/dirlist/RenameDocumentFragment.java @@ -44,6 +44,7 @@ import android.widget.TextView.OnEditorActionListener; import com.android.documentsui.BaseActivity; import com.android.documentsui.DocumentsApplication; +import com.android.documentsui.Metrics; import com.android.documentsui.R; import com.android.documentsui.Shared; import com.android.documentsui.Snackbars; @@ -227,11 +228,13 @@ public class RenameDocumentFragment extends DialogFragment { @Override protected void onPostExecute(DocumentInfo result) { - if (result == null) { + if (result != null) { + Metrics.logRenameFileOperation(getContext()); + } else { Snackbars.makeSnackbar(mActivity, R.string.rename_error, Snackbar.LENGTH_SHORT) .show(); + Metrics.logRenameFileError(getContext()); } - mActivity.setPending(false); } } |