aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/research/ResearchLogDirectory.java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2014-05-29 07:30:15 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-05-29 07:30:16 +0000
commit262b1e75182ecd34e7488c6ac98341c45dc9f24d (patch)
tree3a7c53cc7f1543e95d41bdd1ff0d724540272a6e /java/src/com/android/inputmethod/research/ResearchLogDirectory.java
parent6dc21bd4e6b4854da65541a431d499489ece7246 (diff)
parentbbf556e8e1f2b522c555e05ec06c4efefed16e02 (diff)
downloadlatinime-262b1e75182ecd34e7488c6ac98341c45dc9f24d.tar.gz
latinime-262b1e75182ecd34e7488c6ac98341c45dc9f24d.tar.xz
latinime-262b1e75182ecd34e7488c6ac98341c45dc9f24d.zip
Merge "Remove researcher logger"
Diffstat (limited to 'java/src/com/android/inputmethod/research/ResearchLogDirectory.java')
-rw-r--r--java/src/com/android/inputmethod/research/ResearchLogDirectory.java113
1 files changed, 0 insertions, 113 deletions
diff --git a/java/src/com/android/inputmethod/research/ResearchLogDirectory.java b/java/src/com/android/inputmethod/research/ResearchLogDirectory.java
deleted file mode 100644
index d156068d6..000000000
--- a/java/src/com/android/inputmethod/research/ResearchLogDirectory.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright (C) 2013 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.inputmethod.research;
-
-import android.content.Context;
-import android.util.Log;
-
-import java.io.File;
-import java.io.FileFilter;
-
-/**
- * Manages log files.
- *
- * This class handles all aspects where and how research log data is stored. This includes
- * generating log filenames in the correct place with the correct names, and cleaning up log files
- * under this directory.
- */
-public class ResearchLogDirectory {
- public static final String TAG = ResearchLogDirectory.class.getSimpleName();
- /* package */ static final String LOG_FILENAME_PREFIX = "researchLog";
- private static final String FILENAME_SUFFIX = ".txt";
- private static final String USER_RECORDING_FILENAME_PREFIX = "recording";
-
- private static final ReadOnlyLogFileFilter sUploadableLogFileFilter =
- new ReadOnlyLogFileFilter();
-
- private final File mFilesDir;
-
- static class ReadOnlyLogFileFilter implements FileFilter {
- @Override
- public boolean accept(final File pathname) {
- return pathname.getName().startsWith(ResearchLogDirectory.LOG_FILENAME_PREFIX)
- && !pathname.canWrite();
- }
- }
-
- /**
- * Creates a new ResearchLogDirectory, creating the storage directory if it does not exist.
- */
- public ResearchLogDirectory(final Context context) {
- mFilesDir = getLoggingDirectory(context);
- if (mFilesDir == null) {
- throw new NullPointerException("No files directory specified");
- }
- if (!mFilesDir.exists()) {
- mFilesDir.mkdirs();
- }
- }
-
- private File getLoggingDirectory(final Context context) {
- // TODO: Switch to using a subdirectory of getFilesDir().
- return context.getFilesDir();
- }
-
- /**
- * Get an array of log files that are ready for uploading.
- *
- * A file is ready for uploading if it is marked as read-only.
- *
- * @return the array of uploadable files
- */
- public File[] getUploadableLogFiles() {
- try {
- return mFilesDir.listFiles(sUploadableLogFileFilter);
- } catch (final SecurityException e) {
- Log.e(TAG, "Could not cleanup log directory, permission denied", e);
- return new File[0];
- }
- }
-
- public void cleanupLogFilesOlderThan(final long time) {
- try {
- for (final File file : mFilesDir.listFiles()) {
- final String filename = file.getName();
- if ((filename.startsWith(LOG_FILENAME_PREFIX)
- || filename.startsWith(USER_RECORDING_FILENAME_PREFIX))
- && (file.lastModified() < time)) {
- file.delete();
- }
- }
- } catch (final SecurityException e) {
- Log.e(TAG, "Could not cleanup log directory, permission denied", e);
- }
- }
-
- public File getLogFilePath(final long time, final long nanoTime) {
- return new File(mFilesDir, getUniqueFilename(LOG_FILENAME_PREFIX, time, nanoTime));
- }
-
- public File getUserRecordingFilePath(final long time, final long nanoTime) {
- return new File(mFilesDir, getUniqueFilename(USER_RECORDING_FILENAME_PREFIX, time,
- nanoTime));
- }
-
- private static String getUniqueFilename(final String prefix, final long time,
- final long nanoTime) {
- return prefix + "-" + time + "-" + nanoTime + FILENAME_SUFFIX;
- }
-}