diff options
| author | Vincent Breitmoser <valodim@mugenguild.com> | 2014-06-06 16:14:15 +0200 | 
|---|---|---|
| committer | Vincent Breitmoser <valodim@mugenguild.com> | 2014-06-06 16:14:15 +0200 | 
| commit | b995b836a38ef8a87aa189f408f8542bf5a2c94c (patch) | |
| tree | 0828f6fc64152b1c1113c5ce31ccc21495e019d5 /OpenKeychain/src/main/java/org | |
| parent | c84a1ecfff8d3f21ac83ef7b041f22f11e38936b (diff) | |
| download | open-keychain-b995b836a38ef8a87aa189f408f8542bf5a2c94c.tar.gz open-keychain-b995b836a38ef8a87aa189f408f8542bf5a2c94c.tar.bz2 open-keychain-b995b836a38ef8a87aa189f408f8542bf5a2c94c.zip  | |
import-log: improve operationresultparcel, add indentation
Diffstat (limited to 'OpenKeychain/src/main/java/org')
2 files changed, 37 insertions, 10 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OperationResultParcel.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OperationResultParcel.java index 497c3dd71..f2da4389d 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OperationResultParcel.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OperationResultParcel.java @@ -1,9 +1,10 @@  package org.sufficientlysecure.keychain.pgp; -import android.R;  import android.os.Parcel;  import android.os.Parcelable; +import org.sufficientlysecure.keychain.R; +  import java.util.ArrayList;  /** Represent the result of an operation. @@ -39,20 +40,26 @@ public class OperationResultParcel implements Parcelable {      /** One entry in the log. */      public static class LogEntryParcel implements Parcelable { -        final LogType mType;          final LogLevel mLevel; +        final LogType mType;          final String[] mParameters; +        final int mIndent; -        public LogEntryParcel(LogType type, LogLevel level, String[] parameters) { -            mType = type; +        public LogEntryParcel(LogLevel level, LogType type, String[] parameters, int indent) {              mLevel = level; +            mType = type;              mParameters = parameters; +            mIndent = indent; +        } +        public LogEntryParcel(LogLevel level, LogType type, String[] parameters) { +            this(level, type, parameters, 0);          }          public LogEntryParcel(Parcel source) { -            mType = LogType.values()[source.readInt()];              mLevel = LogLevel.values()[source.readInt()]; +            mType = LogType.values()[source.readInt()];              mParameters = source.createStringArray(); +            mIndent = source.readInt();          }          @Override @@ -62,9 +69,10 @@ public class OperationResultParcel implements Parcelable {          @Override          public void writeToParcel(Parcel dest, int flags) { -            dest.writeInt(mType.ordinal());              dest.writeInt(mLevel.ordinal()); +            dest.writeInt(mType.ordinal());              dest.writeStringArray(mParameters); +            dest.writeInt(mIndent);          }          public static final Creator<LogEntryParcel> CREATOR = new Creator<LogEntryParcel>() { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java index ca7e622bb..83b55cc14 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java @@ -29,6 +29,9 @@ import android.support.v4.util.LongSparseArray;  import org.sufficientlysecure.keychain.Constants;  import org.sufficientlysecure.keychain.pgp.KeyRing; +import org.sufficientlysecure.keychain.pgp.OperationResultParcel; +import org.sufficientlysecure.keychain.pgp.OperationResultParcel.LogType; +import org.sufficientlysecure.keychain.pgp.OperationResultParcel.LogLevel;  import org.sufficientlysecure.keychain.pgp.PgpHelper;  import org.sufficientlysecure.keychain.pgp.PgpKeyHelper;  import org.sufficientlysecure.keychain.pgp.UncachedKeyRing; @@ -59,12 +62,21 @@ import java.util.List;  import java.util.Set;  public class ProviderHelper { -    private Context mContext; -    private ContentResolver mContentResolver; +    private final Context mContext; +    private final ContentResolver mContentResolver; +    private final ArrayList<OperationResultParcel.LogEntryParcel> mLog; +    private int mIndent;      public ProviderHelper(Context context) { -        this.mContext = context; -        this.mContentResolver = context.getContentResolver(); +        this(context, null, 0); +    } + +    public ProviderHelper(Context context, ArrayList<OperationResultParcel.LogEntryParcel> log, +                          int indent) { +        mContext = context; +        mContentResolver = context.getContentResolver(); +        mLog = log; +        mIndent = indent;      }      public static class NotFoundException extends Exception { @@ -76,6 +88,13 @@ public class ProviderHelper {          }      } +    public void log(LogLevel level, LogType type) { +        mLog.add(new OperationResultParcel.LogEntryParcel(level, type, null, mIndent)); +    } +    public void log(LogLevel level, LogType type, String[] parameters) { +        mLog.add(new OperationResultParcel.LogEntryParcel(level, type, parameters, mIndent)); +    } +      // If we ever switch to api level 11, we can ditch this whole mess!      public static final int FIELD_TYPE_NULL = 1;      // this is called integer to stay coherent with the constants in Cursor (api level 11)  | 
