| Index: components/invalidation/impl/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java
|
| diff --git a/components/invalidation/impl/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java b/components/invalidation/impl/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java
|
| index deee2e3b9768c0f2ebfe3ce5feefb8bd470f91fc..1ec8c8334cadbe732b06de6828521dcc8476b0ac 100644
|
| --- a/components/invalidation/impl/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java
|
| +++ b/components/invalidation/impl/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java
|
| @@ -93,6 +93,26 @@ public class PendingInvalidation {
|
| */
|
| @Nullable
|
| public static Bundle decodeToBundle(String encoded) {
|
| + Invalidation invalidation = decodeToInvalidation(encoded);
|
| + if (invalidation == null) return null;
|
| + return createBundle(invalidation.objectId, invalidation.objectSource,
|
| + invalidation.version != null ? invalidation.version : 0L, invalidation.payload);
|
| + }
|
| +
|
| + /**
|
| + * Decode the invalidation encoded as a String into a PendingInvalidation.
|
| + * Return value is {@code null} if the string could not be parsed or is an invalidation for all.
|
| + */
|
| + @Nullable
|
| + public static PendingInvalidation decodeToPendingInvalidation(String encoded) {
|
| + Invalidation invalidation = decodeToInvalidation(encoded);
|
| + if (invalidation == null) return null;
|
| + return new PendingInvalidation(invalidation.objectId, invalidation.objectSource,
|
| + invalidation.version, invalidation.payload);
|
| + }
|
| +
|
| + @Nullable
|
| + private static Invalidation decodeToInvalidation(String encoded) {
|
| assert encoded != null;
|
| byte[] decoded = Base64.decode(encoded, Base64.DEFAULT);
|
| Invalidation invalidation;
|
| @@ -104,8 +124,7 @@ public class PendingInvalidation {
|
| }
|
| assert invalidation != null;
|
| if (invalidation.objectSource == null || invalidation.objectSource == 0) return null;
|
| - return createBundle(invalidation.objectId, invalidation.objectSource,
|
| - invalidation.version != null ? invalidation.version : 0L, invalidation.payload);
|
| + return invalidation;
|
| }
|
|
|
| public String toDebugString() {
|
|
|