Clone Tools
  • last updated a few minutes ago
Constraints: committers
Constraints: files
Constraints: dates
MODE-1128 Eliminated the dependency on JCIP and its annotations

Changed the POM and Java source to eliminate the dependency on JCIP annotations. ModeShape

was using only 4 of the annotations (number of corresponding import statements is listed in parentheses):

net.jcip.annotations.GuardedBy (10)

net.jcip.annotations.Immutable (310)

net.jcip.annotations.NotThreadSafe (95)

net.jcip.annotations.ThreadSafe (97)

These were replaced with new annotations in 'org.modeshape.common.annotation' that are semantically

and lexically the same as the JCIP annotations.

The 'net.jcip' dependency was removed from all POMs. This change should be backward compatible.

If user code is explicitly using these annotations within Maven projects, they will have to have explicit

dependencies, and when upgrading to 2.5.0.Beta2 they will not have any issues. Similarly, non-Maven

projects will already have the JCIP JAR on their classpath, and can remove the library if they are not

explicitly using it.

All unit and integration tests continue to pass with these changes.

    • -0
    • +49
  1. … 510 more files in changeset.
MODE-824 Added Reflection.Property framework annotations to the other connectors. All unit and integration tests pass.

git-svn-id: 76366958-4244-0410-ad5e-bbfabb93f86b

    • -0
    • +48
  1. … 24 more files in changeset.
MODE-824 Improved the Reflection.Properties framework to be more flexible about where it looks for annotations (they can be on fields, getters or setters), allowing for Java properties that are not mapped to fields. Also added annotations to the InMemoryRepositorySource and InfinispanSource classes.

All unit and integration tests pass.

git-svn-id: 76366958-4244-0410-ad5e-bbfabb93f86b

  1. … 10 more files in changeset.
MODE-824 Changed how the representations of the properties are obtained from an object. Now, the Reflection class does all the work, and is able to find the category, label, and description using annotations rather than requiring the class implement an interface. This is much cleaner, and works with any POJO class. Additional unit tests were written to verify the annotations can reference the I18n internationalized messages or a literal value.

git-svn-id: 76366958-4244-0410-ad5e-bbfabb93f86b

  1. … 5 more files in changeset.