am de3e5fbf: Merge "Cleanup in preparation for tests"

# Via Android (Google) Code Review (1) and Kurt Partridge (1)
* commit 'de3e5fbf9dfb2e4e34095e0c34e8aec8d8de02f5':
  Cleanup in preparation for tests
main
Kurt Partridge 2013-02-13 15:35:50 -08:00 committed by Android Git Automerger
commit d4d515f4bf
3 changed files with 16 additions and 9 deletions

View File

@ -35,7 +35,7 @@ import java.io.IOException;
* associated with the {@code String[] keys} are likely to reveal information about the user. The
* actual values are stored separately.
*/
class LogStatement {
public class LogStatement {
private static final String TAG = LogStatement.class.getSimpleName();
private static final boolean DEBUG = false && ProductionFlag.IS_EXPERIMENTAL_DEBUG;
@ -166,6 +166,8 @@ class LogStatement {
/**
* Write the contents out through jsonWriter.
*
* The JsonWriter class must have already had {@code JsonWriter.beginArray} called on it.
*
* Note that this method is not thread safe for the same jsonWriter. Callers must ensure
* thread safety.
*/

View File

@ -110,7 +110,13 @@ import java.util.List;
}
/**
* Publish the contents of this LogUnit to researchLog.
* Publish the contents of this LogUnit to {@code researchLog}.
*
* For each publishable {@code LogStatement}, invoke {@link LogStatement#outputToLocked}.
*
* @param researchLog where to publish the contents of this {@code LogUnit}
* @param canIncludePrivateData whether the private data in this {@code LogUnit} should be
* included
*/
public synchronized void publishTo(final ResearchLog researchLog,
final boolean canIncludePrivateData) {

View File

@ -81,10 +81,7 @@ public class ResearchLog {
}
}
public ResearchLog(final File outputFile, Context context) {
if (outputFile == null) {
throw new IllegalArgumentException();
}
public ResearchLog(final File outputFile, final Context context) {
mExecutor = Executors.newSingleThreadScheduledExecutor();
mFile = outputFile;
mContext = context;
@ -112,7 +109,7 @@ public class ResearchLog {
Log.d(TAG, "error when closing ResearchLog:");
e.printStackTrace();
} finally {
if (mFile.exists()) {
if (mFile != null && mFile.exists()) {
mFile.setWritable(false, false);
}
if (onClosed != null) {
@ -139,8 +136,10 @@ public class ResearchLog {
mHasWrittenData = false;
}
} finally {
if (mFile != null) {
mIsAbortSuccessful = mFile.delete();
}
}
return null;
}
});
@ -209,7 +208,7 @@ public class ResearchLog {
*/
public JsonWriter getValidJsonWriterLocked() {
try {
if (mJsonWriter == NULL_JSON_WRITER) {
if (mJsonWriter == NULL_JSON_WRITER && mFile != null) {
final FileOutputStream fos =
mContext.openFileOutput(mFile.getName(), Context.MODE_PRIVATE);
mJsonWriter = new JsonWriter(new BufferedWriter(new OutputStreamWriter(fos)));