You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@polygene.apache.org by pa...@apache.org on 2017/03/13 15:27:29 UTC

[1/3] polygene-java git commit: Minor edits, remove unused imports, simplify expression

Repository: polygene-java
Updated Branches:
  refs/heads/develop 01949a6d6 -> ed4cca574


Minor edits, remove unused imports, simplify expression


Project: http://git-wip-us.apache.org/repos/asf/polygene-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/polygene-java/commit/3570a919
Tree: http://git-wip-us.apache.org/repos/asf/polygene-java/tree/3570a919
Diff: http://git-wip-us.apache.org/repos/asf/polygene-java/diff/3570a919

Branch: refs/heads/develop
Commit: 3570a91945e781c1d79be2c498d7601bb78e4119
Parents: 01949a6
Author: Paul Merlin <pa...@apache.org>
Authored: Mon Mar 13 16:22:29 2017 +0100
Committer: Paul Merlin <pa...@apache.org>
Committed: Mon Mar 13 16:22:29 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/polygene/api/property/PropertyDescriptor.java | 1 -
 .../java/org/apache/polygene/runtime/property/PropertyModel.java  | 3 +--
 2 files changed, 1 insertion(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/polygene-java/blob/3570a919/core/api/src/main/java/org/apache/polygene/api/property/PropertyDescriptor.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/apache/polygene/api/property/PropertyDescriptor.java b/core/api/src/main/java/org/apache/polygene/api/property/PropertyDescriptor.java
index 2f5e641..47a8db1 100644
--- a/core/api/src/main/java/org/apache/polygene/api/property/PropertyDescriptor.java
+++ b/core/api/src/main/java/org/apache/polygene/api/property/PropertyDescriptor.java
@@ -24,7 +24,6 @@ import java.lang.reflect.AccessibleObject;
 import java.lang.reflect.Type;
 import org.apache.polygene.api.common.QualifiedName;
 import org.apache.polygene.api.structure.MetaInfoHolder;
-import org.apache.polygene.api.structure.Module;
 import org.apache.polygene.api.structure.ModuleDescriptor;
 import org.apache.polygene.api.type.ValueType;
 

http://git-wip-us.apache.org/repos/asf/polygene-java/blob/3570a919/core/runtime/src/main/java/org/apache/polygene/runtime/property/PropertyModel.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/polygene/runtime/property/PropertyModel.java b/core/runtime/src/main/java/org/apache/polygene/runtime/property/PropertyModel.java
index 565b218..48696eb 100644
--- a/core/runtime/src/main/java/org/apache/polygene/runtime/property/PropertyModel.java
+++ b/core/runtime/src/main/java/org/apache/polygene/runtime/property/PropertyModel.java
@@ -343,8 +343,7 @@ public class PropertyModel
                 {
                     if( valueType instanceof ValueCompositeType )
                     {
-                        Class<?> propertyType = valueType().types().findFirst().orElse( null );
-                        value = module.instance().newValue( propertyType );
+                        value = module.instance().newValue( valueType.primaryType() );
                     }
                     else
                     {


[2/3] polygene-java git commit: Add some coverage for Initializable

Posted by pa...@apache.org.
Add some coverage for Initializable


Project: http://git-wip-us.apache.org/repos/asf/polygene-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/polygene-java/commit/9a52edf4
Tree: http://git-wip-us.apache.org/repos/asf/polygene-java/tree/9a52edf4
Diff: http://git-wip-us.apache.org/repos/asf/polygene-java/diff/9a52edf4

Branch: refs/heads/develop
Commit: 9a52edf4333fedd59b2e8d652f8e7dde13e18f72
Parents: 3570a91
Author: Paul Merlin <pa...@apache.org>
Authored: Mon Mar 13 16:25:58 2017 +0100
Committer: Paul Merlin <pa...@apache.org>
Committed: Mon Mar 13 16:25:58 2017 +0100

----------------------------------------------------------------------
 .../runtime/mixin/InitializableTest.java        | 162 +++++++++++++++++--
 1 file changed, 149 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/polygene-java/blob/9a52edf4/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java b/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java
index d7edfaf..cc5e054 100644
--- a/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java
+++ b/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java
@@ -20,11 +20,15 @@
 
 package org.apache.polygene.runtime.mixin;
 
+import org.apache.polygene.api.injection.scope.This;
+import org.apache.polygene.api.unitofwork.UnitOfWork;
+import org.apache.polygene.test.EntityTestAssembler;
+import org.apache.polygene.test.util.NotYetImplemented;
+import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Test;
-import org.apache.polygene.api.composite.TransientComposite;
 import org.apache.polygene.api.mixin.Initializable;
 import org.apache.polygene.api.mixin.Mixins;
-import org.apache.polygene.bootstrap.AssemblyException;
 import org.apache.polygene.bootstrap.ModuleAssembly;
 import org.apache.polygene.test.AbstractPolygeneTest;
 
@@ -34,58 +38,190 @@ import static org.junit.Assert.assertThat;
 /**
  * Test of Initializable interface
  */
-public class InitializableTest
-    extends AbstractPolygeneTest
+public class InitializableTest extends AbstractPolygeneTest
 {
     public void assemble( ModuleAssembly module )
-        throws AssemblyException
     {
         module.objects( TestObject.class );
-        module.transients( TestComposite.class );
+        module.transients( TestComposite.class, NoMethod.class );
+        module.values( TestComposite.class );
+        module.services( TestComposite.class );
+        module.entities( TestComposite.class );
+        new EntityTestAssembler().assemble( module );
     }
 
     @Test
-    public void givenCompositeWithInitializableMixinWhenInstantiatedThenInvokeInitialize()
+    public void givenTransientWithInitializableMixinWhenInstantiatedThenInvokeInitialize()
     {
         TestComposite instance = transientBuilderFactory.newTransient( TestComposite.class );
         assertThat( "mixin has been initialized", instance.ok(), equalTo( true ) );
     }
 
     @Test
+    public void givenValueWithInitializableMixinWhenInstantiatedThenInvokeInitialize()
+    {
+        TestComposite instance = valueBuilderFactory.newValue( TestComposite.class );
+        assertThat( "mixin has been initialized", instance.ok(), equalTo( true ) );
+    }
+
+    @Test
+    public void givenServiceWithInitializableMixinWhenInstantiatedThenInvokeInitialize()
+    {
+        TestComposite instance = serviceFinder.findService( TestComposite.class ).get();
+        assertThat( "mixin has been initialized", instance.ok(), equalTo( true ) );
+    }
+
+    @Test
+    public void givenEntityWithInitializableMixinWhenInstantiatedThenInvokeInitialize()
+    {
+        try( UnitOfWork uow = unitOfWorkFactory.newUnitOfWork() )
+        {
+            TestComposite instance = uow.newEntity( TestComposite.class );
+            assertThat( "mixin has been initialized", instance.ok(), equalTo( true ) );
+        }
+    }
+
+    @Test
     public void givenObjectImplementingInitializableWhenInstantiatedThenInvokeInitialize()
     {
         TestObject instance = objectFactory.newObject( TestObject.class );
         assertThat( "object has been initialized", instance.ok(), equalTo( true ) );
     }
 
+    @NotYetImplemented( reason = "Mixin of types with no method are not scrutinized for Initializable implementation" )
+    @Test
+    public void givenTypeWithNoMethodsAndInitializableMixinWhenInstantiatedThenInvokeInitialize()
+    {
+        NoMethod instance = transientBuilderFactory.newTransient( NoMethod.class );
+        assertThat( "mixin has been initialized", noMethodMixinOk, equalTo( true ) );
+    }
+
     @Mixins( TestMixin.class )
-    public interface TestComposite
-        extends TransientComposite
+    public interface TestComposite extends ComposedInitializable
+    {
+        boolean ok();
+    }
+
+    public abstract static class TestMixin implements TestComposite, Initializable
+    {
+        boolean ok = false;
+
+        @This
+        ComposedInitializable composedInitializable;
+
+        @This
+        PrivateInitializable privateInitializable;
+
+        @Override
+        public void initialize()
+        {
+            ok = true;
+        }
+
+        @Override
+        public boolean ok()
+        {
+            return ok && composedInitializable.composedOk() && privateInitializable.ok();
+        }
+    }
+
+    @Mixins( ComposedInitializableMixin.class )
+    public interface ComposedInitializable
+    {
+        boolean composedOk();
+    }
+
+    public static class ComposedInitializableMixin implements ComposedInitializable, Initializable
+    {
+        boolean ok = false;
+
+        @Override
+        public void initialize()
+        {
+            ok = true;
+        }
+
+        @Override
+        public boolean composedOk()
+        {
+            return ok;
+        }
+    }
+
+    @Mixins( PrivateInitializableMixin.class )
+    public interface PrivateInitializable
     {
         boolean ok();
     }
 
-    public abstract static class TestMixin
-        implements TestComposite, Initializable
+    public static class PrivateInitializableMixin implements PrivateInitializable, Initializable
     {
+        @This
+        NestedInitializable nestedInitializable;
+
         boolean ok = false;
 
+        @Override
         public void initialize()
         {
             ok = true;
         }
 
+        @Override
         public boolean ok()
         {
+            return ok && nestedInitializable.nestedOk();
+        }
+    }
+
+    @Mixins( NestedInitializableMixin.class )
+    public interface NestedInitializable
+    {
+        boolean nestedOk();
+    }
+
+    public static class NestedInitializableMixin implements NestedInitializable, Initializable
+    {
+        boolean ok = false;
+
+        @Override
+        public void initialize()
+        {
+            ok = true;
+        }
+
+        @Override
+        public boolean nestedOk()
+        {
             return ok;
         }
     }
 
-    public static class TestObject
-        implements Initializable
+    static boolean noMethodMixinOk;
+
+    @Before
+    public void resetNoMethodMixinStaticState()
+    {
+        noMethodMixinOk = false;
+    }
+
+    @Mixins( NoMethodMixin.class )
+    public interface NoMethod {}
+
+    public static class NoMethodMixin implements Initializable
+    {
+        @Override
+        public void initialize()
+        {
+            noMethodMixinOk = true;
+        }
+    }
+
+    public static class TestObject implements Initializable
     {
         boolean ok = false;
 
+        @Override
         public void initialize()
         {
             ok = true;


[3/3] polygene-java git commit: Solr Indexing: do not expose RDF library in API dependencies

Posted by pa...@apache.org.
Solr Indexing: do not expose RDF library in API dependencies


Project: http://git-wip-us.apache.org/repos/asf/polygene-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/polygene-java/commit/ed4cca57
Tree: http://git-wip-us.apache.org/repos/asf/polygene-java/tree/ed4cca57
Diff: http://git-wip-us.apache.org/repos/asf/polygene-java/diff/ed4cca57

Branch: refs/heads/develop
Commit: ed4cca574f78adee4def3461d7ed47934be44de6
Parents: 9a52edf
Author: Paul Merlin <pa...@apache.org>
Authored: Mon Mar 13 16:26:22 2017 +0100
Committer: Paul Merlin <pa...@apache.org>
Committed: Mon Mar 13 16:26:22 2017 +0100

----------------------------------------------------------------------
 extensions/indexing-solr/build.gradle | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/polygene-java/blob/ed4cca57/extensions/indexing-solr/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/indexing-solr/build.gradle b/extensions/indexing-solr/build.gradle
index fd991f6..20ad610 100644
--- a/extensions/indexing-solr/build.gradle
+++ b/extensions/indexing-solr/build.gradle
@@ -27,8 +27,8 @@ jar { manifest { name = "Apache Polygene\u2122 Extension - Indexing - Solr" } }
 dependencies {
   api polygene.core.bootstrap
   api polygene.library( 'fileconfig' )
-  api polygene.library( 'rdf' )
 
+  implementation polygene.library( 'rdf' )
   implementation libraries.solr
 
   runtimeOnly polygene.core.runtime