Merge "Cleanup in preparation for tests"
commit
de3e5fbf9d
|
@ -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.
|
||||
*/
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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)));
|
||||
|
|
Loading…
Reference in New Issue