jackrabbit-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ju...@apache.org
Subject svn commit: r896364 - in /jackrabbit/commons/jcr-rmi/trunk: NOTICE.txt src/main/javadoc/org/apache/jackrabbit/rmi/value/doc-files/ src/main/javadoc/org/apache/jackrabbit/rmi/value/package.html src/test/javadoc/ testng.xml
Date Wed, 06 Jan 2010 10:02:09 GMT
Author: jukka
Date: Wed Jan  6 10:02:07 2010
New Revision: 896364

URL: http://svn.apache.org/viewvc?rev=896364&view=rev
JCRRMI-26: JSR-283 support

Clean up old javadocs and test settings. Update copyright year to 2010.


Modified: jackrabbit/commons/jcr-rmi/trunk/NOTICE.txt
URL: http://svn.apache.org/viewvc/jackrabbit/commons/jcr-rmi/trunk/NOTICE.txt?rev=896364&r1=896363&r2=896364&view=diff
--- jackrabbit/commons/jcr-rmi/trunk/NOTICE.txt (original)
+++ jackrabbit/commons/jcr-rmi/trunk/NOTICE.txt Wed Jan  6 10:02:07 2010
@@ -1,5 +1,5 @@
 Apache Jackrabbit JCR-RMI
-Copyright 2009 The Apache Software Foundation
+Copyright 2010 The Apache Software Foundation
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).

Modified: jackrabbit/commons/jcr-rmi/trunk/src/main/javadoc/org/apache/jackrabbit/rmi/value/package.html
URL: http://svn.apache.org/viewvc/jackrabbit/commons/jcr-rmi/trunk/src/main/javadoc/org/apache/jackrabbit/rmi/value/package.html?rev=896364&r1=896363&r2=896364&view=diff
--- jackrabbit/commons/jcr-rmi/trunk/src/main/javadoc/org/apache/jackrabbit/rmi/value/package.html
+++ jackrabbit/commons/jcr-rmi/trunk/src/main/javadoc/org/apache/jackrabbit/rmi/value/package.html
Wed Jan  6 10:02:07 2010
@@ -18,64 +18,13 @@
 Serializable implementation of the JCR Value interfaces.
-This package contains a simple implementation of the JCR
+This package contains a simple in-memory implementation of the JCR
 {@link javax.jcr.Value Value} and {@link javax.jcr.ValueFactory ValueFactory}
 interfaces. The implementation has no external dependencies and supports
 serialization of Value instances.
-Note that the Value instances created by this package are not thread safe.
-<h2>Implementation notes</h2>
-This package uses the State design pattern (GoF) to implement the JCR
-{@link javax.jcr.Value Value} interface. A Value instance is initially
-in a fresh state that gets committed to a stream or non-stream state once
-the first value getter method is invoked. After that the Value state is
-no longer changed. The state diagram below illustrates the Value states.
-<p align="center">
-<img src="doc-files/state.jpg" alt="Value state diagram">
-The {@link GeneralValue GeneralValue} implementation class acts as the
-state context object. It contains a reference to another Value instance that
-represents the current Value state. The reference is initially set to
-an {@link InitialValue InitialValue} instance that is used to intercept
-the first value getter method. When the first method call is made, the
-InitialValue instance performs the correct state transition by changing
-the GenericValue state reference to a committed Value instance.
-The committed Value states are implemented by the type-specific classes
-{@link StringValue StringValue}, {@link LongValue LongValue},
-{@link DoubleValue DoubleValue}, {@link BooleanValue BooleanValue},
-{@link DateValue DateValue}, and {@link BinaryValue BinaryValue}.
-These classes handle no state transitions, but implement the value
-conversion rules defined in the JCR specification.
-The sequence diagram below illustrates the sequence of actions of
-creating a string value, committing it to the stream state, and finally
-using it in that state.
-<p align="center">
-<img src="doc-files/sequence.jpg" alt="Value sequence diagram">
-These implementation classes are all package-local and final, and their
-behaviour can therefore not be modified externally. The Decorator design
-pattern should be used if changes to Value behaviour are needed.
-<h2>About Value equality</h2>
-The current JCR specification (0.16.4) does not define a safe mechanism for
-implementing the {@link Object#equals(Object) equals} method in general.
-A proper implementation of this method would currently require potential
-state changes in the compared Value instances. Thus this package only defines
-equality comparisons between Value instances generated by this package and
-throws {@link UnsupportedOperationException UnsupportedOperationExceptions}
-for more general Value comparisons.
+Note that the Value instances created by this package <em>are</em> thread safe.

View raw message