From d479253768d296a40b4f699e1de9b03c7146a97a Mon Sep 17 00:00:00 2001 From: Jesse Morgan Date: Tue, 3 Dec 2013 14:03:28 -0800 Subject: Adding javadocs and Carbonado User Guide --- apidocs/com/amazon/carbonado/Independent.html | 193 ++++++++++++++++++++++++++ 1 file changed, 193 insertions(+) create mode 100644 apidocs/com/amazon/carbonado/Independent.html (limited to 'apidocs/com/amazon/carbonado/Independent.html') diff --git a/apidocs/com/amazon/carbonado/Independent.html b/apidocs/com/amazon/carbonado/Independent.html new file mode 100644 index 0000000..439e0c2 --- /dev/null +++ b/apidocs/com/amazon/carbonado/Independent.html @@ -0,0 +1,193 @@ + + + + + + +Independent (Carbonado 1.2.3 API) + + + + + + + +
+ + + + + +
+ + + +
+
com.amazon.carbonado
+

Annotation Type Independent

+
+
+
+
    +
  • +
    +
    +
    @Documented
    +@Retention(value=RUNTIME)
    +@Target(value={TYPE,METHOD})
    +public @interface Independent
    +
    A hint for a dependent Repository to allow a Storable property or type + to be undefined in the underlying schema. Ordinarily, if a dependent repository cannot + find a matching property, it throws MismatchException when the Storage is + first retrieved for the storable. This annotation suppresses that exception, and instead + makes the property or type unsupported. Any subsequent invocation of a property access + method for the independent type or property will cause an UnsupportedOperationException + to be thrown. + +

    One example of when this might be used would be to store a calculated + field in the cached representation of the object. It is not + necessary to prevent implemented methods of the form "get<value>" + from being inadvertently interpreted as properties of the storable; any + implementation is by definition not a property. + +

    If a correctly matching property actually is found, then this annotation + is ignored and the property or type is defined as usual. If the Repository + finds a property whose name matches, but whose type does not match, a + MismatchException will be thrown regardless of this annotation. + +

    Independent repositories completely ignore this annotation. + +

    Example:

    + public interface UserInfo extends Storable<UserInfo> {
    +     @Independent
    +     String getName();
    +     void setName(String name);
    +
    +     ...
    + }
    + 
    + + Note: If a versioned Storable with an independent + property is managed by a replicating repository, updates which modify just + the independent property still update the master Storable, in order to get a + new record version. Therefore, independent properties should not be used as + a performance enhancement which avoids writes to a master repository.
    +
    Author:
    +
    Brian S O'Neill
    +
  • +
+
+
+ + +
+ + + + + +
+ + +

Copyright © 2006-2013 Amazon Technologies, Inc.. All Rights Reserved.

+ + -- cgit v1.2.3