diff options
| author | Bernardo Rufino <brufino@google.com> | 2021-10-06 10:08:22 +0100 |
|---|---|---|
| committer | Bernardo Rufino <brufino@google.com> | 2021-10-06 15:25:33 +0000 |
| commit | 40e22dc991d25120cb0288c17c23706cea347285 (patch) | |
| tree | 6cffc19e605506d6cb8524409c62037a87f5bef1 /core/java/android | |
| parent | 2885623021713f808431ba90b14015eaa9d7860d (diff) | |
Improve Bundle/PersistableBundle docs
around equals(), hashCode(), toString()
Test: TH passes
Bug: 122589814
Bug: 62611412
Bug: 122589479
Change-Id: Ia644e437f9b5642228c2a7138b0518f73ef2996c
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/os/Bundle.java | 7 | ||||
| -rw-r--r-- | core/java/android/os/PersistableBundle.java | 9 |
2 files changed, 15 insertions, 1 deletions
diff --git a/core/java/android/os/Bundle.java b/core/java/android/os/Bundle.java index b3827b3106b8..6d5cdc2a531b 100644 --- a/core/java/android/os/Bundle.java +++ b/core/java/android/os/Bundle.java @@ -33,6 +33,9 @@ import java.util.List; /** * A mapping from String keys to various {@link Parcelable} values. * + * <p><b>Warning:</b> Note that {@link Bundle} is a lazy container and as such it does NOT implement + * {@link #equals(Object)} or {@link #hashCode()}. + * * @see PersistableBundle */ public final class Bundle extends BaseBundle implements Cloneable, Parcelable { @@ -1229,6 +1232,10 @@ public final class Bundle extends BaseBundle implements Cloneable, Parcelable { maybePrefillHasFds(); } + /** + * Returns a string representation of the {@link Bundle} that may be suitable for debugging. It + * won't print the internal map if its content hasn't been unparcelled. + */ @Override public synchronized String toString() { if (mParcelledData != null) { diff --git a/core/java/android/os/PersistableBundle.java b/core/java/android/os/PersistableBundle.java index c7edbec6749d..ce615aa660ec 100644 --- a/core/java/android/os/PersistableBundle.java +++ b/core/java/android/os/PersistableBundle.java @@ -42,6 +42,9 @@ import java.util.ArrayList; * supported by this class is purposefully restricted to simple objects that can * safely be persisted to and restored from disk. * + * <p><b>Warning:</b> Note that {@link PersistableBundle} is a lazy container and as such it does + * NOT implement {@link #equals(Object)} or {@link #hashCode()}. + * * @see Bundle */ public final class PersistableBundle extends BaseBundle implements Cloneable, Parcelable, @@ -310,8 +313,12 @@ public final class PersistableBundle extends BaseBundle implements Cloneable, Pa return new PersistableBundle(); // An empty mutable PersistableBundle } + /** + * Returns a string representation of the {@link PersistableBundle} that may be suitable for + * debugging. It won't print the internal map if its content hasn't been unparcelled. + */ @Override - synchronized public String toString() { + public synchronized String toString() { if (mParcelledData != null) { if (isEmptyParcel()) { return "PersistableBundle[EMPTY_PARCEL]"; |
