Merge branch 'release/2.0-RC2'
Project: http://git-wip-us.apache.org/repos/asf/zest-qi4j/repo Commit: http://git-wip-us.apache.org/repos/asf/zest-qi4j/commit/b43c0985 Tree: http://git-wip-us.apache.org/repos/asf/zest-qi4j/tree/b43c0985 Diff: http://git-wip-us.apache.org/repos/asf/zest-qi4j/diff/b43c0985 Branch: refs/heads/master Commit: b43c098576ad272e26b2ab7b6f69b6b49718c620 Parents: 24c791c 0d2ee4a Author: Paul Merlin <[email protected]> Authored: Mon Apr 15 14:03:36 2013 +0200 Committer: Paul Merlin <[email protected]> Committed: Mon Apr 15 14:03:36 2013 +0200 ---------------------------------------------------------------------- build.gradle | 46 +- buildSrc/build.gradle | 2 + core/api/build.gradle | 1 + core/api/src/docs/api.txt | 14 +- core/api/src/docs/application.txt | 182 +- core/api/src/docs/composition.txt | 27 +- core/api/src/docs/concern.txt | 80 +- core/api/src/docs/decoratormixin.txt | 83 + core/api/src/docs/mixin.txt | 31 +- core/api/src/docs/module.txt | 12 - core/api/src/docs/structure.txt | 38 +- core/api/src/docs/unitofwork.txt | 47 + core/api/src/docs/valuecomposite.txt | 125 +- core/api/src/main/java/org/json/JSONArray.java | 1195 ----------- .../src/main/java/org/json/JSONException.java | 45 - core/api/src/main/java/org/json/JSONObject.java | 1904 ------------------ core/api/src/main/java/org/json/JSONString.java | 34 - .../src/main/java/org/json/JSONStringer.java | 95 - .../api/src/main/java/org/json/JSONTokener.java | 501 ----- core/api/src/main/java/org/json/JSONWriter.java | 429 ---- core/api/src/main/java/org/json/package.html | 8 - core/api/src/main/java/org/qi4j/api/Qi4j.java | 69 +- .../org/qi4j/api/activation/Activation.java | 7 +- .../qi4j/api/activation/ActivationEvent.java | 12 + .../ActivationEventListenerRegistration.java | 10 +- .../api/activation/ActivationException.java | 30 + .../java/org/qi4j/api/activation/Activator.java | 13 +- .../qi4j/api/activation/ActivatorAdapter.java | 11 +- .../org/qi4j/api/activation/Activators.java | 1 - .../api/activation/PassivationException.java | 9 +- .../java/org/qi4j/api/activation/package.html | 17 +- .../org/qi4j/api/association/Association.java | 3 +- .../association/AssociationStateDescriptor.java | 3 +- .../api/association/AssociationStateHolder.java | 7 +- .../api/association/AssociationWrapper.java | 2 +- .../api/association/GenericAssociationInfo.java | 13 +- .../qi4j/api/association/ManyAssociation.java | 3 +- .../api/association/ManyAssociationWrapper.java | 2 +- .../qi4j/api/common/ConstructionException.java | 1 + .../java/org/qi4j/api/common/QualifiedName.java | 16 +- .../qi4j/api/composite/CompositeContext.java | 2 +- .../qi4j/api/composite/CompositeInvoker.java | 3 + .../api/composite/ConstructorDescriptor.java | 2 +- .../org/qi4j/api/composite/DecoratorMixin.java | 2 +- .../org/qi4j/api/composite/PropertyMapper.java | 8 +- .../org/qi4j/api/composite/StateDescriptor.java | 4 +- .../qi4j/api/configuration/Configuration.java | 12 +- .../ConstraintViolationException.java | 6 +- .../org/qi4j/api/entity/EntityReference.java | 53 +- .../org/qi4j/api/injection/scope/State.java | 2 +- .../java/org/qi4j/api/json/Base64Encoder.java | 224 --- .../org/qi4j/api/json/JSONDeserializer.java | 528 ----- .../org/qi4j/api/json/JSONObjectSerializer.java | 92 - .../java/org/qi4j/api/json/JSONSerializer.java | 335 --- .../org/qi4j/api/json/JSONWriterSerializer.java | 83 - .../main/java/org/qi4j/api/json/package.html | 5 - .../org/qi4j/api/mixin/MixinDescriptor.java | 2 +- .../org/qi4j/api/property/DefaultValues.java | 2 +- .../qi4j/api/property/GenericPropertyInfo.java | 8 +- .../property/InvalidPropertyTypeException.java | 22 + .../java/org/qi4j/api/property/Numbers.java | 8 +- .../org/qi4j/api/property/PropertyMixin.java | 2 + .../org/qi4j/api/property/PropertyWrapper.java | 2 +- .../qi4j/api/query/NotQueryableException.java | 3 +- .../src/main/java/org/qi4j/api/query/Query.java | 15 + .../api/query/QueryExpressionException.java | 5 +- .../org/qi4j/api/query/QueryExpressions.java | 422 +++- .../api/query/grammar/AssociationFunction.java | 8 +- .../AssociationNotNullSpecification.java | 4 +- .../grammar/AssociationNullSpecification.java | 4 +- .../api/query/grammar/BinarySpecification.java | 4 +- .../query/grammar/ComparisonSpecification.java | 10 +- .../query/grammar/ContainsAllSpecification.java | 4 +- .../query/grammar/ContainsSpecification.java | 4 +- .../query/grammar/ExpressionSpecification.java | 4 +- .../ManyAssociationContainsSpecification.java | 4 +- .../query/grammar/ManyAssociationFunction.java | 6 +- .../api/query/grammar/MatchesSpecification.java | 6 +- .../api/query/grammar/NotSpecification.java | 2 +- .../org/qi4j/api/query/grammar/OrderBy.java | 2 +- .../api/query/grammar/PropertyFunction.java | 20 +- .../grammar/PropertyNotNullSpecification.java | 4 +- .../grammar/PropertyNullSpecification.java | 4 +- .../api/query/grammar/QuerySpecification.java | 6 +- .../org/qi4j/api/query/grammar/Variable.java | 4 +- .../org/qi4j/api/service/ServiceReference.java | 12 + .../importer/ServiceInstanceImporter.java | 6 +- .../api/sideeffect/SideEffectDescriptor.java | 2 +- .../api/structure/ApplicationDescriptor.java | 10 +- .../main/java/org/qi4j/api/structure/Layer.java | 3 + .../org/qi4j/api/structure/LayerDescriptor.java | 8 +- .../java/org/qi4j/api/structure/Module.java | 26 +- .../java/org/qi4j/api/type/CollectionType.java | 25 +- .../main/java/org/qi4j/api/type/EnumType.java | 15 +- .../main/java/org/qi4j/api/type/MapType.java | 23 +- .../org/qi4j/api/type/ValueCompositeType.java | 2 +- .../main/java/org/qi4j/api/type/ValueType.java | 102 +- .../ConcurrentEntityModificationException.java | 7 +- .../unitofwork/EntityTypeNotFoundException.java | 7 +- .../api/unitofwork/NoSuchEntityException.java | 7 +- .../api/unitofwork/UnitOfWorkException.java | 9 +- .../unitofwork/concern/UnitOfWorkConcern.java | 10 +- .../qi4j/api/unitofwork/concern/package.html | 3 + .../main/java/org/qi4j/api/usecase/Usecase.java | 1 + .../java/org/qi4j/api/util/Annotations.java | 4 +- .../java/org/qi4j/api/util/Base64Encoder.java | 224 +++ .../main/java/org/qi4j/api/util/Classes.java | 24 +- .../src/main/java/org/qi4j/api/util/Dates.java | 8 + .../org/qi4j/api/value/ValueBuilderFactory.java | 48 +- .../org/qi4j/api/value/ValueDeserializer.java | 152 ++ .../org/qi4j/api/value/ValueSerialization.java | 48 + .../api/value/ValueSerializationException.java | 46 + .../org/qi4j/api/value/ValueSerializer.java | 130 ++ .../test/java/org/qi4j/api/OperatorsTest.java | 3 +- .../api/activation/ActivationEventsTest.java | 6 +- .../org/qi4j/api/common/QualifiedNameTest.java | 4 +- .../qi4j/api/concern/DocumentationSupport.java | 82 + .../api/configuration/ConfigurationTest.java | 4 +- .../DeclareConfigurationDefaultsTest.java | 7 +- .../dataset/iterable/IterableDataSetTest.java | 2 +- .../qi4j/api/docsupport/ApplicationDocs.java | 256 +++ .../qi4j/api/docsupport/CompositionDocs.java | 38 + .../java/org/qi4j/api/docsupport/package.html | 5 + .../api/injection/scope/StateFieldTest.java | 5 +- .../decoratorMixin/DecoratorMixinTest.java | 73 + .../qi4j/api/mixin/decoratorMixin/FooModel.java | 18 + .../api/mixin/decoratorMixin/FooModelImpl.java | 23 + .../FooModelInvocationHandler.java | 29 + .../qi4j/api/mixin/decoratorMixin/View1.java | 25 + .../qi4j/api/mixin/decoratorMixin/View2.java | 22 + .../qi4j/api/property/PropertyErrorTest.java | 5 +- .../org/qi4j/api/unitofwork/RemovalTest.java | 7 +- .../java/org/qi4j/api/util/ClassesTest.java | 30 +- .../qi4j/api/value/DocumentationSupport.java | 298 +++ .../org/qi4j/api/value/ValueCompositeTest.java | 2 +- .../qi4j/bootstrap/AssociationDeclarations.java | 2 +- .../java/org/qi4j/bootstrap/ClassScanner.java | 8 +- .../java/org/qi4j/bootstrap/Energy4Java.java | 13 +- .../bootstrap/ManyAssociationDeclarations.java | 2 +- .../org/qi4j/bootstrap/MetaInfoDeclaration.java | 18 +- .../org/qi4j/bootstrap/SingletonAssembler.java | 38 +- .../org/qi4j/bootstrap/StateDeclarations.java | 6 +- .../org/qi4j/bootstrap/ClassScannerTest.java | 8 +- .../qi4j/bootstrap/DocumentationSupport.java | 2 + core/functional/src/docs/functional.txt | 26 +- .../main/java/org/qi4j/functional/ForEach.java | 4 +- .../functional/docsupport/FunctionalDocs.java | 37 + core/io/src/docs/io.txt | 26 +- core/io/src/main/java/org/qi4j/io/Inputs.java | 74 + core/io/src/main/java/org/qi4j/io/Receiver.java | 4 + core/io/src/main/java/org/qi4j/io/Sender.java | 4 + .../src/main/java/org/qi4j/io/Transforms.java | 2 +- .../test/java/org/qi4j/io/InputOutputTest.java | 20 +- .../java/org/qi4j/io/docsupport/IoDocs.java | 35 + .../java/org/qi4j/runtime/Qi4jRuntimeImpl.java | 71 +- .../runtime/activation/ActivationDelegate.java | 32 +- .../runtime/activation/ActivatorsInstance.java | 12 +- .../runtime/activation/ActivatorsModel.java | 12 +- .../AbstractAssociationInstance.java | 2 +- .../association/AssociationInstance.java | 35 +- .../runtime/association/AssociationModel.java | 6 +- .../association/ManyAssociationInstance.java | 39 +- .../association/ManyAssociationModel.java | 8 +- .../bootstrap/ApplicationModelFactoryImpl.java | 2 +- .../bootstrap/CompositeAssemblyImpl.java | 18 +- .../runtime/bootstrap/EntityAssemblyImpl.java | 22 +- .../runtime/bootstrap/ServiceAssemblyImpl.java | 2 +- .../runtime/bootstrap/ValueAssemblyImpl.java | 22 +- .../composite/AbstractModifierModel.java | 8 +- .../runtime/composite/AtomicInstancePool.java | 4 +- .../composite/CompositeMethodInstance.java | 2 +- .../runtime/composite/CompositeMethodModel.java | 29 +- .../runtime/composite/ConstructorModel.java | 6 +- .../qi4j/runtime/composite/InstancePool.java | 4 +- .../org/qi4j/runtime/composite/MixinModel.java | 10 +- .../qi4j/runtime/composite/SideEffectModel.java | 2 +- .../org/qi4j/runtime/composite/StateModel.java | 6 +- ...SynchronizedCompositeMethodInstancePool.java | 4 +- .../composite/TransientBuilderInstance.java | 1 - .../runtime/composite/TransientInstance.java | 6 +- ...synchronizedCompositeMethodInstancePool.java | 4 +- .../org/qi4j/runtime/entity/EntityInstance.java | 4 +- .../org/qi4j/runtime/entity/EntityModel.java | 10 +- .../runtime/entity/EntityPropertyInstance.java | 4 +- .../runtime/entity/EntityStateInstance.java | 12 +- .../provider/StateInjectionProviderFactory.java | 2 +- .../qi4j/runtime/property/PropertyInstance.java | 61 +- .../qi4j/runtime/property/PropertyModel.java | 18 +- .../qi4j/runtime/query/IterableQuerySource.java | 4 +- .../java/org/qi4j/runtime/query/QueryImpl.java | 24 +- .../service/ImportedServiceInstance.java | 6 +- .../ImportedServiceReferenceInstance.java | 27 +- .../service/ImportedServicesInstance.java | 6 +- .../qi4j/runtime/service/ServiceInstance.java | 8 +- .../service/ServiceReferenceInstance.java | 6 +- .../qi4j/runtime/service/ServicesInstance.java | 6 +- .../runtime/structure/ApplicationInstance.java | 6 +- .../runtime/structure/ApplicationModel.java | 15 +- .../qi4j/runtime/structure/LayerInstance.java | 12 +- .../org/qi4j/runtime/structure/LayerModel.java | 3 +- .../qi4j/runtime/structure/ModuleInstance.java | 67 +- .../org/qi4j/runtime/structure/ModuleModel.java | 4 +- .../runtime/structure/ModuleUnitOfWork.java | 4 +- .../org/qi4j/runtime/structure/TypeLookup.java | 62 +- .../runtime/structure/UsedLayersInstance.java | 6 +- .../runtime/unitofwork/BuilderEntityState.java | 16 +- .../unitofwork/EntityBuilderInstance.java | 4 +- .../runtime/unitofwork/UnitOfWorkInstance.java | 2 +- .../value/ValueBuilderWithPrototype.java | 42 +- .../org/qi4j/runtime/value/ValueInstance.java | 54 +- .../qi4j/runtime/value/ValueStateInstance.java | 4 +- .../java/org/qi4j/api/common/OptionalTest.java | 6 +- .../org/qi4j/api/common/PropertyErrorTest.java | 5 +- .../org/qi4j/api/common/PropertyTypeTest.java | 5 +- .../java/org/qi4j/api/common/RemovalTest.java | 7 +- .../common/UnitOfWorkCallbackEntityTest.java | 5 +- .../org/qi4j/regression/qi94/IssueTest.java | 2 +- .../test/java/org/qi4j/runtime/Qi4jAPITest.java | 8 +- .../test/java/org/qi4j/runtime/Qi4jSPITest.java | 6 +- .../association/AssociationEqualityTest.java | 388 ++++ .../concerns/PropertyInheritanceTest.java | 94 + .../org/qi4j/runtime/entity/AggregatedTest.java | 5 +- .../entity/EntityCompositeEqualityTest.java | 6 +- .../qi4j/runtime/entity/EntityCreationTest.java | 5 +- .../org/qi4j/runtime/entity/EntityTypeTest.java | 4 +- .../runtime/entity/EntityVisibilityTest.java | 8 +- .../java/org/qi4j/runtime/entity/QI273Test.java | 5 +- .../entity/associations/AssociationTest.java | 5 +- .../associations/ImmutableAssociationTest.java | 5 +- .../ConstructorInjectionOfThisTest.java | 3 + .../IllegalUnitOfWorkInjectionTest.java | 4 +- .../runtime/injection/ServiceInjectionTest.java | 4 + .../injection/UnitOfWorkInjectionTest.java | 4 +- .../ServiceInstantiationTests.java | 4 +- .../instantiation/ValueInstantiationTests.java | 4 +- .../org/qi4j/runtime/mixin/JDKMixinTest.java | 38 +- .../objects/ObjectBuilderFactoryTest.java | 4 + .../qi4j/runtime/objects/ObjectConcernTest.java | 2 + .../runtime/objects/ObjectVisibilityTest.java | 10 +- .../runtime/property/PropertyEqualityTest.java | 430 ++++ .../runtime/query/IterableQuerySourceTest.java | 5 +- .../runtime/service/AvailableServiceTest.java | 4 + .../qi4j/runtime/service/ConfigurationTest.java | 5 +- .../qi4j/runtime/service/PassivationTest.java | 59 +- .../runtime/service/ServiceIdSelectorTest.java | 2 + .../runtime/service/ServiceVisibilityTest.java | 6 +- .../runtime/structure/ApplicationModeTest.java | 5 + .../structure/CompositeDescriptorTest.java | 2 +- .../structure/TypeToCompositeLookupTest.java | 13 +- .../transients/TransientBuilderFactoryTest.java | 4 + .../transients/TransientVisibilityTest.java | 6 +- .../runtime/types/JodaDateTimeTypeTest.java | 41 - .../types/JodaLocalDateTimeTypeTest.java | 41 - .../runtime/types/JodaLocalDateTypeTest.java | 40 - .../org/qi4j/runtime/types/ValueLookupTest.java | 69 - .../qi4j/runtime/unitofwork/RemovalTest.java | 4 +- .../org/qi4j/runtime/util/AnnotationsTest.java | 6 +- .../qi4j/runtime/value/CollectionTypeTest.java | 443 ---- .../qi4j/runtime/value/ValueComposite2Test.java | 7 +- .../qi4j/runtime/value/ValueEqualityTest.java | 238 +++ .../ValueInjectionDeserializationTest.java | 5 +- .../value/ValueTypeSerializationTest.java | 263 --- .../qi4j/runtime/value/ValueVisibilityTest.java | 6 +- .../importer/ServiceSelectorImporterTest.java | 4 + .../src/test/java/org/qi4j/test/ASMTest.java | 82 +- .../memory/MemoryEntityStoreTest.java | 3 + core/spi/build.gradle | 8 +- core/spi/src/docs/cache.txt | 4 + core/spi/src/docs/entitystore.txt | 4 + core/spi/src/docs/indexing.txt | 4 + core/spi/src/docs/metrics.txt | 2 +- core/spi/src/docs/spi.txt | 15 +- core/spi/src/docs/valueserialization.txt | 64 + .../spi/src/main/java/org/qi4j/spi/Qi4jSPI.java | 8 +- .../java/org/qi4j/spi/entity/EntityState.java | 10 +- .../org/qi4j/spi/entity/QualifiedIdentity.java | 7 +- ...currentEntityStateModificationException.java | 7 +- .../ConcurrentModificationCheckConcern.java | 42 +- .../DefaultEntityStoreUnitOfWork.java | 4 +- .../EntityAlreadyExistsException.java | 6 +- .../entitystore/EntityNotFoundException.java | 7 +- .../spi/entitystore/EntityStateVersions.java | 2 +- .../qi4j/spi/entitystore/EntityStoreSPI.java | 2 +- .../spi/entitystore/EntityStoreUnitOfWork.java | 2 +- .../entitystore/helpers/DefaultEntityState.java | 10 +- .../entitystore/helpers/JSONEntityState.java | 108 +- .../helpers/JSONManyAssociationState.java | 99 +- .../helpers/JSONMapEntityStoreMixin.java | 35 +- .../helpers/MapEntityStoreMixin.java | 40 +- .../spi/entitystore/helpers/StateStore.java | 2 +- .../qi4j/spi/metrics/NullMetricsFactory.java | 12 +- .../spi/value/ValueDeserializerAdapter.java | 1051 ++++++++++ .../qi4j/spi/value/ValueSerializerAdapter.java | 521 +++++ .../main/java/org/qi4j/spi/value/package.html | 5 + .../orgjson/OrgJsonValueDeserializer.java | 452 +++++ .../orgjson/OrgJsonValueSerialization.java | 144 ++ .../OrgJsonValueSerializationService.java | 28 + .../orgjson/OrgJsonValueSerializer.java | 112 ++ .../valueserialization/orgjson/package.html | 5 + .../helpers/JSONManyAssociationStateTest.java | 137 ++ .../qi4j/spi/property/DefaultValuesTest.java | 10 +- core/spi/src/test/resources/logback-test.xml | 16 + .../java/org/qi4j/test/EntityTestAssembler.java | 4 +- .../test/entity/AbstractEntityStoreTest.java | 214 +- .../java/org/qi4j/test/util/JSONAssert.java | 63 +- .../AbstractCollectionSerializationTest.java | 437 ++++ .../test/value/AbstractJsonDateFormatTest.java | 88 + .../AbstractPlainValueSerializationTest.java | 218 ++ ...AbstractValueCompositeSerializationTest.java | 441 ++++ .../main/java/org/qi4j/test/value/package.html | 5 + .../org/qi4j/cache/ehcache/EhCacheTest.java | 6 +- extensions/entitystore-file/build.gradle | 17 +- .../file/assembly/FileEntityStoreAssembler.java | 6 + .../entitystore/file/FileEntityStoreTest.java | 14 +- .../qi4j/entitystore/gae/GaeEntityState.java | 67 +- .../entitystore/gae/GaeEntityStoreMixin.java | 19 +- .../gae/GaeEntityStoreUnitOfWork.java | 29 +- extensions/entitystore-hazelcast/build.gradle | 22 +- .../assembly/HazelcastEntityStoreAssembler.java | 10 +- .../hazelcast/HazelcastEntityStoreTest.java | 17 +- extensions/entitystore-jclouds/build.gradle | 19 +- .../jclouds/JCloudsMapEntityStoreAssembler.java | 14 +- .../jclouds/JCloudsFilesystemTest.java | 11 +- .../jclouds/JCloudsTransientTest.java | 6 +- extensions/entitystore-jdbm/build.gradle | 1 + .../jdbm/assembly/JdbmEntityStoreAssembler.java | 25 +- .../entitystore/jdbm/JdbmEntityStoreTest.java | 93 +- extensions/entitystore-leveldb/build.gradle | 1 + .../leveldb/LevelDBEntityStoreAssembler.java | 1 - .../leveldb/JavaLevelDBEntityStoreTest.java | 4 +- .../leveldb/JniLevelDBEntityStoreTest.java | 3 +- extensions/entitystore-memory/build.gradle | 13 + extensions/entitystore-memory/dev-status.xml | 17 + .../entitystore-memory/src/docs/es-memory.txt | 23 + .../memory/MemoryEntityStoreAssembler.java | 49 + .../org/qi4j/entitystore/memory/package.html | 5 + .../memory/MemoryEntityStoreTest.java | 41 + extensions/entitystore-mongodb/build.gradle | 3 + .../mongodb/MongoEntityStoreConfiguration.java | 2 +- .../mongodb/MongoMapEntityStoreAssembler.java | 39 +- .../mongodb/MongoMapEntityStoreMixin.java | 11 - .../mongodb/MongoMapEntityStoreTest.java | 14 +- extensions/entitystore-neo4j/build.gradle | 1 + .../qi4j/entitystore/neo4j/NeoEntityState.java | 112 +- .../entitystore/neo4j/NeoEntityStoreMixin.java | 17 +- .../neo4j/NeoEntityStoreUnitOfWork.java | 11 +- .../neo4j/test/SimpleNeoStoreTest.java | 40 +- extensions/entitystore-preferences/build.gradle | 11 +- .../prefs/PreferencesEntityStoreInfo.java | 2 +- .../prefs/PreferencesEntityStoreMixin.java | 77 +- .../PreferenceEntityStoreAssembler.java | 1 + .../entitystore/PreferencesEntityStoreTest.java | 11 +- extensions/entitystore-redis/build.gradle | 15 +- .../redis/RedisMapEntityStoreAssembler.java | 1 - .../redis/RedisMapEntityStoreTest.java | 23 +- extensions/entitystore-riak/build.gradle | 19 +- .../riak/RiakHttpMapEntityStoreAssembler.java | 1 - .../RiakProtobufMapEntityStoreAssembler.java | 1 - .../riak/RiakHttpMapEntityStoreTest.java | 20 +- .../riak/RiakProtobufMapEntityStoreTest.java | 20 +- extensions/entitystore-sql/build.gradle | 1 + extensions/entitystore-sql/src/docs/es-sql.txt | 8 +- .../entitystore/sql/SQLEntityStoreMixin.java | 37 +- .../AbstractSQLEntityStoreAssembler.java | 58 +- .../sql/internal/SQLEntityState.java | 20 +- .../sql/DerbySQLEntityStoreTest.java | 6 +- .../entitystore/sql/H2SQLEntityStoreTest.java | 6 +- .../entitystore/sql/MySQLEntityStoreTest.java | 6 +- .../sql/PostgreSQLEntityStoreTest.java | 6 +- .../entitystore/sql/SQLiteEntityStoreTest.java | 6 +- extensions/entitystore-voldemort/build.gradle | 40 +- .../voldemort/assembly/VoldemortAssembler.java | 9 +- .../entitystore/voldemort/VoldemortTest.java | 17 +- .../elasticsearch/ElasticSearchFinder.java | 54 +- .../elasticsearch/ElasticSearchIndexer.java | 212 +- .../assembly/ESClusterIndexQueryAssembler.java | 5 + .../ESFilesystemIndexQueryAssembler.java | 5 + .../assembly/ESMemoryIndexQueryAssembler.java | 5 + .../ElasticSearchComplexQueryTest.java | 4 +- .../elasticsearch/ElasticSearchFinderTest.java | 4 +- .../elasticsearch/ElasticSearchQueryTest.java | 4 +- .../index/elasticsearch/ElasticSearchTest.java | 3 +- .../src/test/resources/logback-test.xml | 16 + extensions/indexing-rdf/build.gradle | 21 +- .../index/rdf/UnsupportedLanguageException.java | 2 +- .../rdf/assembly/RdfMemoryStoreAssembler.java | 3 + .../assembly/RdfNativeSesameStoreAssembler.java | 3 + .../assembly/RdfRdbmsSesameStoreAssembler.java | 3 + ...llectingQualifiedIdentityResultCallback.java | 2 +- .../qi4j/index/rdf/query/RdfQueryParser.java | 12 +- .../index/rdf/query/RdfQueryParserFactory.java | 9 +- .../qi4j/index/rdf/query/RdfQueryService.java | 20 +- .../SingleQualifiedIdentityResultCallback.java | 2 +- .../index/rdf/query/internal/Namespaces.java | 10 +- .../rdf/query/internal/RdfQueryParserImpl.java | 36 +- .../rdf/query/internal/RdfQueryParserImpl2.java | 238 +-- .../qi4j/index/rdf/query/internal/Triples.java | 26 +- .../org/qi4j/index/rdf/ContainsAllTest.java | 3 +- .../java/org/qi4j/index/rdf/ContainsTest.java | 51 +- .../org/qi4j/index/rdf/RDFPerformanceTest.java | 3 +- .../org/qi4j/index/rdf/RdfComplexQueryTest.java | 5 +- .../org/qi4j/index/rdf/RdfEntityFinderTest.java | 3 + .../org/qi4j/index/rdf/RdfNamedQueryTest.java | 3 + .../java/org/qi4j/index/rdf/RdfQueryTest.java | 7 +- .../qi4j/index/rdf/qi64/AbstractIssueTest.java | 8 +- .../org/qi4j/index/rdf/qi66/Qi66IssueTest.java | 6 +- .../org/qi4j/index/rdf/qi95/Qi95IssueTest.java | 13 +- extensions/indexing-solr/dev-status.xml | 2 +- .../qi4j/index/solr/EmbeddedSolrService.java | 8 +- .../java/org/qi4j/index/solr/SolrAssembler.java | 4 +- .../solr/internal/SolrEntityIndexerMixin.java | 4 +- .../solr/internal/SolrEntityQueryMixin.java | 8 +- .../support/skeletons/AbstractSQLIndexing.java | 12 +- .../support/skeletons/AbstractSQLQuerying.java | 89 +- .../support/skeletons/AbstractSQLStartup.java | 2 +- .../index/sql/postgresql/SQLTestHelper.java | 8 +- .../metrics/yammer/NoMetricsInstalledTest.java | 4 +- .../org/qi4j/metrics/yammer/YammerTest.java | 10 +- .../org/qi4j/migration/MigrationService.java | 4 +- .../assembly/EntityMigrationBuilder.java | 20 +- .../migration/assembly/EntityMigrationRule.java | 2 +- .../migration/assembly/MigrationBuilder.java | 4 +- .../qi4j/migration/assembly/MigrationRules.java | 8 +- .../assembly/PackageMigrationBuilder.java | 2 +- .../assembly/VersionMigrationBuilder.java | 4 +- .../java/org/qi4j/migration/MigrationTest.java | 3 +- .../reindexer/internal/ReindexerMixin.java | 2 +- .../org/qi4j/index/reindexer/ReindexerTest.java | 4 +- .../valueserialization-jackson/build.gradle | 17 + .../valueserialization-jackson/dev-status.xml | 17 + .../src/docs/vs-jackson.txt | 24 + .../jackson/JacksonValueDeserializer.java | 348 ++++ .../JacksonValueSerializationAssembler.java | 67 + .../JacksonValueSerializationService.java | 28 + .../jackson/JacksonValueSerializer.java | 88 + .../valueserialization/jackson/package.html | 5 + .../JacksonCollectionSerializationTest.java | 33 + .../jackson/JacksonJsonDateFormatTest.java | 33 + .../JacksonPlainValueSerializationTest.java | 34 + .../JacksonValueCompositeSerializationTest.java | 33 + .../src/test/resources/logback-test.xml | 18 + .../valueserialization-orgjson/build.gradle | 15 + .../valueserialization-orgjson/dev-status.xml | 17 + .../src/docs/vs-orgjson.txt | 24 + .../OrgJsonValueSerializationAssembler.java | 67 + .../valueserialization/orgjson/package.html | 5 + .../OrgJsonCollectionSerializationTest.java | 33 + .../orgjson/OrgJsonDateFormatTest.java | 33 + .../OrgJsonPlainValueSerializationTest.java | 34 + .../OrgJsonValueCompositeSerializationTest.java | 33 + extensions/valueserialization-stax/build.gradle | 16 + .../valueserialization-stax/dev-status.xml | 17 + .../src/docs/vs-stax.txt | 24 + .../stax/StaxValueDeserializer.java | 463 +++++ .../stax/StaxValueSerializationAssembler.java | 67 + .../stax/StaxValueSerializationService.java | 28 + .../stax/StaxValueSerializer.java | 130 ++ .../qi4j/valueserialization/stax/package.html | 5 + .../stax/StaxCollectionSerializationTest.java | 43 + .../stax/StaxPlainValueSerializationTest.java | 44 + .../StaxValueCompositeSerializationTest.java | 43 + .../src/test/resources/logback-test.xml | 19 + gradle/wrapper/gradle-wrapper.jar | Bin 46670 -> 46742 bytes gradle/wrapper/gradle-wrapper.properties | 4 +- gradlew | 4 +- libraries.gradle | 75 +- .../library/alarm/AlarmModelDescriptor.java | 2 +- .../library/alarm/AlarmHistoryImplTest.java | 6 +- .../qi4j/library/alarm/AlarmPointImplTest.java | 6 +- .../org/qi4j/library/alarm/AlarmProxyTest.java | 6 +- .../qi4j/library/alarm/AlarmServiceTest.java | 6 +- .../library/alarm/ExtendedAlarmModelTest.java | 8 +- .../library/alarm/SimpleAlarmModelTest.java | 6 +- .../library/alarm/StandardAlarmModelTest.java | 6 +- .../cache/CacheInvocationResultSideEffect.java | 2 +- .../org/qi4j/library/cache/InvocationCache.java | 4 +- .../library/cache/InvocationCacheMixin.java | 4 +- .../library/cache/ReturnCachedValueConcern.java | 2 +- .../ReturnCachedValueOnExceptionConcern.java | 2 +- .../library/circuitbreaker/CircuitBreaker.java | 390 ++-- .../library/circuitbreaker/CircuitBreakers.java | 2 +- .../circuitbreaker/jmx/CircuitBreakerJMX.java | 12 +- .../jmx/CircuitBreakerManagement.java | 2 +- ...stractEnabledCircuitBreakerAvailability.java | 2 +- .../service/BreakCircuitConcern.java | 4 +- .../service/ServiceCircuitBreaker.java | 2 +- .../service/ServiceCircuitBreakerMixin.java | 2 +- .../circuitbreaker/CircuitBreakerTest.java | 34 +- .../jmx/CircuitBreakerManagementTest.java | 4 +- .../conversion/values/EntityToValue.java | 231 ++- .../conversion/values/EntityToValueService.java | 17 + .../values/PropertyNotPresentException.java | 17 + .../conversion/values/EntityToValueTest.java | 55 +- .../qi4j/library/cxf/ValueCompositeCxfType.java | 21 +- libraries/eventsourcing-jdbm/build.gradle | 1 + .../source/jdbm/JdbmEventStoreService.java | 46 +- .../source/jdbm/JdbmEventStoreServiceTest.java | 13 +- .../replay/ApplicationEventPlayerService.java | 3 +- .../factory/DomainEventFactoryService.java | 2 +- .../domain/replay/DomainEventPlayerService.java | 5 +- .../domain/source/AbstractEventStoreMixin.java | 5 - .../source/helper/DomainEventTracker.java | 2 +- .../domain/source/helper/EventRouterTest.java | 2 + .../domain/source/helper/EventsTest.java | 2 + .../source/helper/UnitOfWorkRouterTest.java | 2 + .../fileconfig/FileConfigurationTest.java | 4 +- .../library/http/JettyJMXStatisticsTest.java | 4 +- .../org/qi4j/library/http/JettyServiceTest.java | 4 +- .../http/MutualSecureJettyServiceTest.java | 4 +- .../library/http/SecureJettyServiceTest.java | 4 +- .../http/VirtualHostJettyServiceTest.java | 4 +- .../jmx/ConfigurationManagerService.java | 14 +- .../test/java/org/qi4j/library/jmx/JMXTest.java | 3 +- .../org/qi4j/lang/scala/ScalaTraitMixin.java | 2 +- libraries/logging/src/docs/logging.txt | 55 +- .../debug/service/DebugOnConsoleSideEffect.java | 2 +- .../debug/service/DebuggingServiceMixin.java | 2 +- .../org/qi4j/logging/log/SimpleLogConcern.java | 2 +- .../log/service/LogOnConsoleSideEffect.java | 2 +- .../log/service/LoggingServiceMixin.java | 2 +- .../trace/service/TraceServiceMixin.java | 3 +- .../java/org/qi4j/logging/DebuggingTest.java | 4 +- .../test/java/org/qi4j/logging/TracingTest.java | 6 +- .../qi4j/logging/docsupport/LoggingDocs.java | 53 + libraries/neo4j/dev-status.xml | 2 +- libraries/rdf/build.gradle | 1 + .../rdf/entity/EntityStateSerializer.java | 65 +- .../rdf/entity/EntitySerializerTest.java | 11 +- .../rdf/entity/EntityTypeSerializerTest.java | 4 +- .../rdf/repository/NativeRepositoryTest.java | 4 +- libraries/rest-client/build.gradle | 17 +- libraries/rest-client/src/docs/primer.txt | 72 +- .../ValueCompositeRequestWriter.java | 47 +- .../responsereader/JSONResponseReader.java | 19 +- .../ContextResourceClientFactoryTest.java | 18 +- .../rest/client/ContinuousIntegrationTest.java | 7 +- .../qi4j/library/rest/client/RssReaderTest.java | 64 +- .../rest/client/docsupport/RestPrimerDocs.java | 107 + .../library/rest/common/ValueAssembler.java | 2 +- .../library/rest/common/table/TableQuery.java | 3 +- .../rest/server/api/ResourceValidity.java | 6 +- .../server/assembler/RestServerAssembler.java | 2 +- .../freemarker/ValueCompositeTemplateModel.java | 8 +- .../requestreader/DefaultRequestReader.java | 22 +- .../responsewriter/LinksResponseWriter.java | 10 +- .../ValueCompositeResponseWriter.java | 10 +- .../ValueDescriptorResponseWriter.java | 2 +- libraries/rest/build.gradle | 27 +- .../library/rest/admin/EntitiesResource.java | 60 +- .../qi4j/library/rest/admin/EntityResource.java | 280 ++- .../library/rest/admin/RestApplication.java | 4 +- .../qi4j/library/rest/admin/RDFAssembler.java | 2 + .../org/qi4j/library/rest/admin/RestTest.java | 163 +- .../rest/admin/RestletApplicationAssembler.java | 36 - libraries/scheduler/src/docs/scheduler.txt | 49 +- .../scheduler/docsupport/SchedulerDocs.java | 60 + .../library/shiro/web/WebHttpShiroTest.java | 4 +- .../library/shiro/web/WebRealmServiceTest.java | 4 +- .../bootstrap/Qi4jApplicationBootstrap.java | 4 +- .../bootstrap/internal/application/package.html | 5 + .../spring/bootstrap/internal/package.html | 5 + .../bootstrap/internal/service/package.html | 5 + .../qi4j/library/spring/bootstrap/package.html | 5 + .../qi4j/library/spring/importer/package.html | 5 + .../spring/importer/Qi4jImportServiceTest.java | 4 + libraries/sql-liquibase/build.gradle | 3 +- .../sql/liquibase/LiquibaseServiceTest.java | 8 +- .../library/sql/datasource/DataSources.java | 2 +- .../DataSourceConfigurationManagerService.java | 6 +- ...taSourceConfigurationManagerServiceTest.java | 9 +- .../struts2/ConstraintViolationInterceptor.java | 2 +- .../library/struts2/Qi4jPropertyAccessor.java | 4 +- manual/build.gradle | 5 +- .../tutorials/howto-assembly-application.txt | 17 +- .../docs/tutorials/howto-configure-service.txt | 30 +- .../tutorials/howto-contextual-fragments.txt | 8 +- .../src/docs/tutorials/howto-create-concern.txt | 83 +- .../docs/tutorials/howto-create-constraint.txt | 69 +- .../src/docs/tutorials/howto-create-entity.txt | 17 +- .../docs/tutorials/howto-create-sideeffect.txt | 80 +- .../tutorials/howto-leverage-properties.txt | 103 +- manual/src/docs/tutorials/howto-use-io.txt | 60 +- .../src/docs/tutorials/howto-writing-docs.txt | 4 +- manual/src/docs/userguide/extensions.txt | 17 + manual/src/docs/website/home.txt | 4 +- manual/src/docs/website/xsl/head.xsl | 4 - .../hedhman/travel/ExpediaService.properties | 10 - .../java/org/niclas/hedhman/travel/Main.java | 44 - .../hedhman/travel/OrbitzService.properties | 10 - .../org/niclas/hedhman/travel/TravelPlan.java | 8 - .../hedhman/travel/TravelPlanConfiguration.java | 18 - .../niclas/hedhman/travel/TravelPlanMixin.java | 33 - .../hedhman/travel/TravelPlanService.java | 13 - .../hedhman/travel/TravelPlanService.properties | 11 - .../org/qi4j/manual/recipes/assemble/Docs.java | 36 + .../manual/recipes/concern/AnyMixinType.java | 20 + .../recipes/concern/InventoryConcern.java | 15 + .../qi4j/manual/recipes/concern/LineItem.java | 6 + .../manual/recipes/concern/MyAnnotation.java | 5 + .../recipes/concern/MyAppliesToFilter.java | 22 + .../recipes/concern/MyGenericConcern.java | 24 + .../org/qi4j/manual/recipes/concern/Order.java | 15 + .../createConstraint/HasPhoneNumber.java | 3 +- .../ParameterViolationConcern.java | 40 + .../PhoneNumberParameterViolationConcern.java | 41 + .../java/org/qi4j/manual/recipes/io/Docs.java | 20 + .../qi4j/manual/recipes/properties/Book.java | 15 + .../manual/recipes/properties/BookFactory.java | 27 + .../manual/recipes/properties/SwingInfo.java | 14 + .../manual/recipes/properties/SwingPanel.java | 30 + .../manual/recipes/properties/pojo/Book.java | 9 + .../recipes/properties/pojo/MutableBook.java | 10 + .../recipes/sideeffects/AnyMixinType.java | 20 + .../manual/recipes/sideeffects/Confirmable.java | 5 + .../manual/recipes/sideeffects/HasCustomer.java | 5 + .../recipes/sideeffects/HasLineItems.java | 5 + .../recipes/sideeffects/HasSequenceNumber.java | 5 + .../sideeffects/MailNotifySideEffect.java | 8 + .../recipes/sideeffects/MyAnnotation.java | 5 + .../recipes/sideeffects/MyAppliesToFilter.java | 22 + .../sideeffects/MyGenericSideEffect.java | 33 + .../qi4j/manual/recipes/sideeffects/Order.java | 5 + .../manual/recipes/sideeffects/OrderEntity.java | 13 + .../manual/travel/ExpediaService.properties | 10 + .../main/java/org/qi4j/manual/travel/Main.java | 44 + .../qi4j/manual/travel/OrbitzService.properties | 10 + .../java/org/qi4j/manual/travel/TravelPlan.java | 8 + .../manual/travel/TravelPlanConfiguration.java | 18 + .../org/qi4j/manual/travel/TravelPlanMixin.java | 33 + .../qi4j/manual/travel/TravelPlanService.java | 13 + .../manual/travel/TravelPlanService.properties | 11 + .../src/resources/js/progressive-enhancement.js | 97 +- manual/src/resources/js/versionswitcher.js | 222 -- samples/dci-cargo/dcisample_a/build.gradle | 1 + .../sample_a/bootstrap/assembly/Assembler.java | 26 +- .../data/shipping/cargo/RouteSpecification.java | 5 +- .../data/shipping/delivery/Delivery.java | 7 +- .../delivery/ExpectedHandlingEvent.java | 5 +- .../sample_a/data/shipping/itinerary/Leg.java | 7 +- .../data/shipping/voyage/CarrierMovement.java | 5 +- .../conversion/EntityToDTOService.java | 16 +- .../infrastructure/model/JSONModel.java | 20 +- .../sample_a/bootstrap/test/TestAssembler.java | 20 +- samples/dci-cargo/dcisample_b/build.gradle | 1 + .../sample_b/bootstrap/assembly/Assembler.java | 25 +- .../structure/cargo/RouteSpecification.java | 5 +- .../data/structure/delivery/Delivery.java | 3 +- .../structure/delivery/NextHandlingEvent.java | 5 +- .../sample_b/data/structure/itinerary/Leg.java | 15 +- .../conversion/EntityToDTOService.java | 16 +- .../infrastructure/model/JSONModel.java | 20 +- .../bootstrap/test/TestApplication.java | 7 + .../sample_b/bootstrap/test/TestAssembler.java | 26 +- .../context/test/booking/BookNewCargoTest.java | 27 +- .../moneytransfer/test/TransferMoneyTest.java | 7 +- .../moneytransfer/test/TransferMoneyTest2.java | 7 +- .../samples/forum/assembler/ForumAssembler.java | 8 +- .../org/qi4j/samples/forum/context/Context.java | 2 +- .../qi4j/samples/forum/data/entity/User.java | 2 +- .../java/org/qi4j/sample/rental/web/Page.java | 2 +- .../qi4j/sample/rental/web/QuikitServlet.java | 3 +- .../org/qi4j/sample/rental/web/UrlService.java | 2 +- .../qi4j/lib/swing/binding/example/Main.java | 1 + settings.gradle | 6 +- tests/performance/build.gradle | 27 +- .../MemoryEntityStorePerformanceTest.java | 5 + .../CompositeCreationPerformanceTest.java | 2 + .../object/ObjectCreationPerformanceTest.java | 2 + .../tests/regression/qi328/Qi328TestCase.java | 6 +- .../swing/entityviewer/PropertiesPanel.java | 4 +- .../qi4j/envisage/detail/DependencyPane.java | 2 +- .../org/qi4j/envisage/detail/MethodPane.java | 4 +- .../org/qi4j/envisage/detail/StatePane.java | 8 +- .../cargo/step2/SequencingConcernTest.java | 3 + tutorials/composites/src/docs/step5.txt | 32 +- .../composites/src/docs/tut-composites.txt | 7 + tutorials/introduction/build.gradle | 8 + .../introduction/src/docs/state-modeling.txt | 102 +- .../introduction/src/docs/whats-an-object.txt | 33 +- .../org/qi4j/demo/intro/StateModelingDocs.java | 120 ++ .../org/qi4j/demo/intro/WhatsAnObjectDocs.java | 59 + .../tenminutes/src/docs/ten-minutes.txt | 10 + .../qi4j/demo/tenminute/HasSequenceNumber.java | 3 + .../java/org/qi4j/demo/tenminute/Order.java | 1 + .../introduction/thirtyminutes/build.gradle | 1 + .../thirtyminutes/src/docs/thirty-minutes.txt | 229 +-- .../demo/thirtyminutes/ThirtyMinutesDocs.java | 274 +++ .../twominutes/src/docs/two-minutes.txt | 7 + .../main/java/org/qi4j/demo/twominute/Main.java | 1 + tutorials/services/src/docs/tut-services.txt | 7 + .../tutorials/services/step4/LibraryTest.java | 6 +- .../tutorials/services/step5/LibraryTest.java | 6 +- .../tutorials/services/step6/LibraryTest.java | 6 +- 693 files changed, 15426 insertions(+), 11089 deletions(-) ----------------------------------------------------------------------
