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