aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/ParcelableKeyRing.java
diff options
context:
space:
mode:
authormar-v-in <github@rvin.mooo.com>2014-06-04 21:32:37 +0200
committermar-v-in <github@rvin.mooo.com>2014-06-04 21:32:37 +0200
commitcae0071342e746c934490298c3dd3ee230a2ee32 (patch)
tree5c540d7c8ad84b462fd3cbc87b0aea7c5513fc9c /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/ParcelableKeyRing.java
parent6a637462782b4ce57ecf154edf0974114181b8ad (diff)
parent52f1f30846ad7efa6e6ae11ed96f5b68626bfb3b (diff)
downloadopen-keychain-cae0071342e746c934490298c3dd3ee230a2ee32.tar.gz
open-keychain-cae0071342e746c934490298c3dd3ee230a2ee32.tar.bz2
open-keychain-cae0071342e746c934490298c3dd3ee230a2ee32.zip
Merge branch 'master' into automatic-contact-discovery
Conflicts: OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/KeychainIntentService.java
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/ParcelableKeyRing.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/ParcelableKeyRing.java51
1 files changed, 51 insertions, 0 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/ParcelableKeyRing.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/ParcelableKeyRing.java
new file mode 100644
index 000000000..3d3b6339a
--- /dev/null
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/ParcelableKeyRing.java
@@ -0,0 +1,51 @@
+package org.sufficientlysecure.keychain.keyimport;
+
+import android.os.Parcel;
+import android.os.Parcelable;
+
+import org.sufficientlysecure.keychain.pgp.UncachedKeyRing;
+import org.sufficientlysecure.keychain.pgp.exception.PgpGeneralException;
+
+import java.io.IOException;
+
+/** This is a trivial wrapper around UncachedKeyRing which implements Parcelable. It exists
+ * for the sole purpose of keeping spongycastle and android imports in separate packages.
+ */
+public class ParcelableKeyRing implements Parcelable {
+
+ final byte[] mBytes;
+ final String mExpectedFingerprint;
+
+ public ParcelableKeyRing(byte[] bytes) {
+ mBytes = bytes;
+ mExpectedFingerprint = null;
+ }
+ public ParcelableKeyRing(byte[] bytes, String expectedFingerprint) {
+ mBytes = bytes;
+ mExpectedFingerprint = expectedFingerprint;
+ }
+
+ public void writeToParcel(Parcel dest, int flags) {
+ dest.writeByteArray(mBytes);
+ dest.writeString(mExpectedFingerprint);
+ }
+
+ public static final Creator<ParcelableKeyRing> CREATOR = new Creator<ParcelableKeyRing>() {
+ public ParcelableKeyRing createFromParcel(final Parcel source) {
+ return new ParcelableKeyRing(source.createByteArray());
+ }
+
+ public ParcelableKeyRing[] newArray(final int size) {
+ return new ParcelableKeyRing[size];
+ }
+ };
+
+
+ public int describeContents() {
+ return 0;
+ }
+
+ public UncachedKeyRing getUncachedKeyRing() throws PgpGeneralException, IOException {
+ return UncachedKeyRing.decodeFromData(mBytes);
+ }
+}