POLYGENE-222 : Re-instate some requirement for "extends ValueComposite" which is required to do the right thing in indexing-sql. For some reason that is not needed in indexing-rdf and indexing-elasticsearch, so it should probably be investigated further. I should probably also try to fail the query that tries to use non-ValueComposites in query expressions. So, I will keep the issue open and just change the target for 3.1
Project: http://git-wip-us.apache.org/repos/asf/polygene-java/repo Commit: http://git-wip-us.apache.org/repos/asf/polygene-java/commit/a6fb0cd6 Tree: http://git-wip-us.apache.org/repos/asf/polygene-java/tree/a6fb0cd6 Diff: http://git-wip-us.apache.org/repos/asf/polygene-java/diff/a6fb0cd6 Branch: refs/heads/develop Commit: a6fb0cd6c395beb999412a5ad3316e50fff98007 Parents: e8ba5cb Author: niclas <[email protected]> Authored: Tue Apr 11 20:02:56 2017 +0800 Committer: niclas <[email protected]> Committed: Tue Apr 11 20:02:56 2017 +0800 ---------------------------------------------------------------------- .../runtime/entity/EntityMixinsModel.java | 9 +- .../runtime/injection/InjectedMethodsModel.java | 2 + .../test/indexing/AbstractQueryTest.java | 2 +- .../org/apache/polygene/test/model/Domain.java | 1 + .../org/apache/polygene/test/model/Host.java | 3 +- .../apache/polygene/test/model/Protocol.java | 3 +- .../org/apache/polygene/test/model/URL.java | 3 +- .../sql/PostgreSQLEntityStoreTest.java | 4 +- .../support/skeletons/AbstractSQLStartup.java | 887 +++++++++---------- .../skeletons/SQLCompatEntityStateWrapper.java | 3 +- .../sql/postgresql/PostgreSQLQueryTest.java | 4 +- .../library/scripting/SimpleSpeaker.groovy | 26 + 12 files changed, 490 insertions(+), 457 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/polygene-java/blob/a6fb0cd6/core/runtime/src/main/java/org/apache/polygene/runtime/entity/EntityMixinsModel.java ---------------------------------------------------------------------- diff --git a/core/runtime/src/main/java/org/apache/polygene/runtime/entity/EntityMixinsModel.java b/core/runtime/src/main/java/org/apache/polygene/runtime/entity/EntityMixinsModel.java index 6993b6f..566557b 100644 --- a/core/runtime/src/main/java/org/apache/polygene/runtime/entity/EntityMixinsModel.java +++ b/core/runtime/src/main/java/org/apache/polygene/runtime/entity/EntityMixinsModel.java @@ -40,7 +40,7 @@ import org.apache.polygene.runtime.model.Resolution; public final class EntityMixinsModel extends MixinsModel { - List<Integer> lifecycleMixins; + private List<Integer> lifecycleMixins; @Override public void bind( Resolution resolution ) @@ -52,11 +52,12 @@ public final class EntityMixinsModel for( int i = 0; i < mixinModels.size(); i++ ) { MixinModel mixinModel = mixinModels.get( i ); + if( Lifecycle.class.isAssignableFrom( mixinModel.mixinClass() ) ) { if( lifecycleMixins == null ) { - lifecycleMixins = new ArrayList<Integer>(); + lifecycleMixins = new ArrayList<>(); } lifecycleMixins.add( i ); @@ -64,7 +65,7 @@ public final class EntityMixinsModel } } - public Object newMixin( EntityInstance entityInstance, StateHolder state, Object[] mixins, Method method ) + Object newMixin( EntityInstance entityInstance, StateHolder state, Object[] mixins, Method method ) { MixinModel model = methodImplementation.get( method ); InjectionContext injectionContext = new InjectionContext( entityInstance, UsesInstance.EMPTY_USES, state ); @@ -73,7 +74,7 @@ public final class EntityMixinsModel return mixin; } - public void invokeLifecycle( boolean create, Object[] mixins, CompositeInstance instance, StateHolder state ) + void invokeLifecycle( boolean create, Object[] mixins, CompositeInstance instance, StateHolder state ) { if( lifecycleMixins != null ) { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/a6fb0cd6/core/runtime/src/main/java/org/apache/polygene/runtime/injection/InjectedMethodsModel.java ---------------------------------------------------------------------- diff --git a/core/runtime/src/main/java/org/apache/polygene/runtime/injection/InjectedMethodsModel.java b/core/runtime/src/main/java/org/apache/polygene/runtime/injection/InjectedMethodsModel.java index 388a17b..b2d4c89 100644 --- a/core/runtime/src/main/java/org/apache/polygene/runtime/injection/InjectedMethodsModel.java +++ b/core/runtime/src/main/java/org/apache/polygene/runtime/injection/InjectedMethodsModel.java @@ -29,6 +29,7 @@ import java.util.Arrays; import java.util.List; import java.util.Optional; import java.util.stream.Stream; +import javax.annotation.PostConstruct; import org.apache.polygene.api.injection.InjectionScope; import org.apache.polygene.api.util.Classes; import org.apache.polygene.api.util.Methods; @@ -96,6 +97,7 @@ public final class InjectedMethodsModel } ); } + @PostConstruct private Type createParameterizedTypeInstance( ParameterizedType genericType ) { return new ParameterizedTypeInstance( http://git-wip-us.apache.org/repos/asf/polygene-java/blob/a6fb0cd6/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractQueryTest.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractQueryTest.java b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractQueryTest.java index 24fb780..f005398 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractQueryTest.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractQueryTest.java @@ -432,7 +432,7 @@ public abstract class AbstractQueryTest { QueryBuilder<Person> qb = this.moduleInstance.newQueryBuilder( Person.class ); Person person = templateFor( Person.class ); - QueryParam queryParam = null; // oneOf( person.personalWebsite().get().queryParams() ); + QueryParam queryParam = null; //oneOf( person.personalWebsite().get().queryParams() ); Query<Person> query = unitOfWork.newQuery( qb.where( and( eq( queryParam.name(), "foo" ), eq( queryParam.value(), "bar" ) ) ) ); System.out.println( "*** script30: " + query ); verifyUnorderedResults( query, "Jack Doe" ); http://git-wip-us.apache.org/repos/asf/polygene-java/blob/a6fb0cd6/core/testsupport/src/main/java/org/apache/polygene/test/model/Domain.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/model/Domain.java b/core/testsupport/src/main/java/org/apache/polygene/test/model/Domain.java index 09536d5..d157f56 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/model/Domain.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/model/Domain.java @@ -20,6 +20,7 @@ package org.apache.polygene.test.model; import org.apache.polygene.api.property.Property; +import org.apache.polygene.api.value.ValueComposite; /** * JAVADOC Add JavaDoc http://git-wip-us.apache.org/repos/asf/polygene-java/blob/a6fb0cd6/core/testsupport/src/main/java/org/apache/polygene/test/model/Host.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/model/Host.java b/core/testsupport/src/main/java/org/apache/polygene/test/model/Host.java index cf9b428..1da358d 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/model/Host.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/model/Host.java @@ -20,11 +20,12 @@ package org.apache.polygene.test.model; import org.apache.polygene.api.property.Property; +import org.apache.polygene.api.value.ValueComposite; /** * JAVADOC Add JavaDoc. */ -public interface Host +public interface Host extends ValueComposite { Property<String> value(); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/a6fb0cd6/core/testsupport/src/main/java/org/apache/polygene/test/model/Protocol.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/model/Protocol.java b/core/testsupport/src/main/java/org/apache/polygene/test/model/Protocol.java index 3466c9c..d05c6db 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/model/Protocol.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/model/Protocol.java @@ -20,11 +20,12 @@ package org.apache.polygene.test.model; import org.apache.polygene.api.property.Property; +import org.apache.polygene.api.value.ValueComposite; /** * JAVADOC Add JavaDoc. */ -public interface Protocol +public interface Protocol extends ValueComposite { Property<String> value(); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/a6fb0cd6/core/testsupport/src/main/java/org/apache/polygene/test/model/URL.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/model/URL.java b/core/testsupport/src/main/java/org/apache/polygene/test/model/URL.java index dfc5e10..e30e565 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/model/URL.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/model/URL.java @@ -23,11 +23,12 @@ import java.util.Collection; import org.apache.polygene.api.common.Optional; import org.apache.polygene.api.entity.Queryable; import org.apache.polygene.api.property.Property; +import org.apache.polygene.api.value.ValueComposite; /** * JAVADOC Add JavaDoc. */ -public interface URL +public interface URL extends ValueComposite { Property<Protocol> protocol(); http://git-wip-us.apache.org/repos/asf/polygene-java/blob/a6fb0cd6/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java index 18b347c..1da7b58 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java @@ -77,7 +77,9 @@ public class PostgreSQLEntityStoreTest extends AbstractEntityStoreTest { @ClassRule - public static final DockerRule DOCKER = new DockerRule( "postgres", 3000L, "PostgreSQL init process complete; ready for start up." ); + public static final DockerRule DOCKER = new DockerRule( "postgres", + 3000L, + "PostgreSQL init process complete; ready for start up." ); @Override // START SNIPPET: assembly
