| Overview | Package | Class | Tree | Deprecated | Index | Help | |||
| PREV CLASS | NEXT CLASS | FRAMES | NO FRAMES | ||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||
A Metadata object maintains a default list of metadata values that in principle should be protected from updates by other objects. This cannot be guaranteed if the default value returned is a reference to the same updatable object held in the default list. In this case, the metadata client could change the internal state of the metadatum which would affect all future accesses to it via the Metadata list. Note that this problem does not exist when the metadatum is of a non-updatable class, such as Double or Integer.
This interface can be used to identify an updatable class that is safe for use as a metadata value. If the user requests a SafeAsMetadata object as a value from the default list in a Metadata list, the Metadata object will first clone the value and return the copy.
Because this interface extends ExplicitlyCloneable, implementers must implement the clone() method. This allows the object to be cloned without the CloneNotSupportedException being thrown.
| Overview | Package | Class | Tree | Deprecated | Index | Help | |||
| PREV CLASS | NEXT CLASS | FRAMES | NO FRAMES | ||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||