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 2016/11/28 16:07:51 UTC
[06/14] zest-java git commit: forum sample: prefer Streams over
core/functional
forum sample: prefer Streams over core/functional
Project: http://git-wip-us.apache.org/repos/asf/zest-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/zest-java/commit/ce93c2ee
Tree: http://git-wip-us.apache.org/repos/asf/zest-java/tree/ce93c2ee
Diff: http://git-wip-us.apache.org/repos/asf/zest-java/diff/ce93c2ee
Branch: refs/heads/develop
Commit: ce93c2ee4b36902adf8fda2e8910082d060640a3
Parents: 94f7cca
Author: Paul Merlin <pa...@apache.org>
Authored: Mon Nov 28 09:55:34 2016 +0100
Committer: Paul Merlin <pa...@apache.org>
Committed: Mon Nov 28 09:55:34 2016 +0100
----------------------------------------------------------------------
.../sample/forum/assembler/ForumAssembler.java | 32 +++++++++++---------
.../sample/forum/context/EventsService.java | 15 +++------
.../sample/forum/domainevent/DomainEvent.java | 15 +++------
3 files changed, 27 insertions(+), 35 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/zest-java/blob/ce93c2ee/samples/forum/src/main/java/org/apache/zest/sample/forum/assembler/ForumAssembler.java
----------------------------------------------------------------------
diff --git a/samples/forum/src/main/java/org/apache/zest/sample/forum/assembler/ForumAssembler.java b/samples/forum/src/main/java/org/apache/zest/sample/forum/assembler/ForumAssembler.java
index 6ef446f..d629d06 100644
--- a/samples/forum/src/main/java/org/apache/zest/sample/forum/assembler/ForumAssembler.java
+++ b/samples/forum/src/main/java/org/apache/zest/sample/forum/assembler/ForumAssembler.java
@@ -20,7 +20,7 @@
package org.apache.zest.sample.forum.assembler;
import java.lang.reflect.Modifier;
-
+import java.util.List;
import org.apache.zest.api.common.Visibility;
import org.apache.zest.api.entity.EntityComposite;
import org.apache.zest.api.value.ValueComposite;
@@ -42,20 +42,20 @@ import org.apache.zest.library.rest.server.restlet.RequestReaderDelegator;
import org.apache.zest.library.rest.server.restlet.ResponseWriterDelegator;
import org.apache.zest.library.rest.server.spi.CommandResult;
import org.apache.zest.sample.forum.context.Context;
-import org.apache.zest.sample.forum.domainevent.DomainCommandResult;
-import org.apache.zest.sample.forum.rest.resource.RootResource;
import org.apache.zest.sample.forum.context.EventsService;
import org.apache.zest.sample.forum.data.entity.User;
+import org.apache.zest.sample.forum.domainevent.DomainCommandResult;
import org.apache.zest.sample.forum.domainevent.DomainEventValue;
import org.apache.zest.sample.forum.domainevent.ParameterValue;
import org.apache.zest.sample.forum.rest.ForumRestlet;
+import org.apache.zest.sample.forum.rest.resource.RootResource;
import org.apache.zest.sample.forum.service.BootstrapData;
import org.apache.zest.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
import org.restlet.service.MetadataService;
+import static java.util.stream.Collectors.toList;
import static org.apache.zest.api.util.Classes.hasModifier;
import static org.apache.zest.api.util.Classes.isAssignableFrom;
-import static org.apache.zest.functional.Iterables.filter;
/**
* TODO
@@ -103,17 +103,19 @@ public class ForumAssembler
LayerAssembly data = assembly.layer( "Data" ).uses( infrastructure );
{
ModuleAssembly forum = data.module( "Forum" );
- for( Class<?> dataClass : filter( hasModifier( Modifier.INTERFACE ), filter( isAssignableFrom( EntityComposite.class ), ClassScanner
- .findClasses( User.class ) ) ) )
- {
- forum.entities( dataClass ).visibleIn( Visibility.application );
- }
+ ClassScanner.findClasses( User.class )
+ .filter( isAssignableFrom( EntityComposite.class ) )
+ .filter( hasModifier( Modifier.INTERFACE ) )
+ .forEach( dataClass -> forum.entities( dataClass ).visibleIn( Visibility.application ) );
}
LayerAssembly context = assembly.layer( "Context" ).uses( data );
{
ModuleAssembly contexts = context.module( "Context" );
- for( Class<?> contextClass : filter( hasModifier( Modifier.INTERFACE ).negate(), ClassScanner.findClasses( Context.class ) ) )
+ List<? extends Class<?>> contextClasses = ClassScanner.findClasses( Context.class )
+ .filter( hasModifier( Modifier.INTERFACE ).negate() )
+ .collect( toList() );
+ for( Class<?> contextClass : contextClasses )
{
if( contextClass.getName().contains( "$" ) )
{
@@ -125,10 +127,9 @@ public class ForumAssembler
}
}
- for( Class<?> valueClass : filter( isAssignableFrom( ValueComposite.class ), ClassScanner.findClasses( Context.class ) ) )
- {
- contexts.values( valueClass ).visibleIn( Visibility.application );
- }
+ ClassScanner.findClasses( Context.class )
+ .filter( isAssignableFrom( ValueComposite.class ) )
+ .forEach( valueClass -> contexts.values( valueClass ).visibleIn( Visibility.application ) );
contexts.services( EventsService.class );
@@ -159,7 +160,8 @@ public class ForumAssembler
}
ModuleAssembly resources = rest.module( "Resources" );
- for( Class<?> resourceClass : ClassScanner.findClasses( RootResource.class ) )
+ List<? extends Class<?>> resourceClasses = ClassScanner.findClasses( RootResource.class ).collect( toList() );
+ for( Class<?> resourceClass : resourceClasses )
{
resources.objects( resourceClass ).visibleIn( Visibility.layer );
}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/ce93c2ee/samples/forum/src/main/java/org/apache/zest/sample/forum/context/EventsService.java
----------------------------------------------------------------------
diff --git a/samples/forum/src/main/java/org/apache/zest/sample/forum/context/EventsService.java b/samples/forum/src/main/java/org/apache/zest/sample/forum/context/EventsService.java
index db1410b..e8a9414 100644
--- a/samples/forum/src/main/java/org/apache/zest/sample/forum/context/EventsService.java
+++ b/samples/forum/src/main/java/org/apache/zest/sample/forum/context/EventsService.java
@@ -21,7 +21,6 @@ package org.apache.zest.sample.forum.context;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
-import java.util.function.Function;
import org.apache.zest.api.injection.scope.Structure;
import org.apache.zest.api.mixin.Mixins;
import org.apache.zest.api.service.ServiceComposite;
@@ -32,12 +31,13 @@ import org.apache.zest.api.unitofwork.UnitOfWorkCompletionException;
import org.apache.zest.api.unitofwork.UnitOfWorkFactory;
import org.apache.zest.api.value.ValueBuilder;
import org.apache.zest.api.value.ValueBuilderFactory;
-import org.apache.zest.functional.Iterables;
import org.apache.zest.library.rest.server.api.ObjectSelection;
import org.apache.zest.sample.forum.domainevent.DomainEventValue;
import org.apache.zest.sample.forum.domainevent.ParameterValue;
import org.restlet.Request;
+import static java.util.stream.Collectors.toCollection;
+
/**
* TODO
*/
@@ -81,14 +81,9 @@ public interface EventsService
prototype.parameters().get().add( parameterBuilder.newInstance() );
}
- Iterables.addAll( prototype.selection().get(), Iterables.map( new Function<Object, String>()
- {
- @Override
- public String apply( Object o )
- {
- return o.toString();
- }
- }, ObjectSelection.current().selection() ) );
+ ObjectSelection.current().selection().stream()
+ .map( Object::toString )
+ .collect( toCollection( () -> prototype.selection().get() ) );
final DomainEventValue domainEvent = builder.newInstance();
http://git-wip-us.apache.org/repos/asf/zest-java/blob/ce93c2ee/samples/forum/src/main/java/org/apache/zest/sample/forum/domainevent/DomainEvent.java
----------------------------------------------------------------------
diff --git a/samples/forum/src/main/java/org/apache/zest/sample/forum/domainevent/DomainEvent.java b/samples/forum/src/main/java/org/apache/zest/sample/forum/domainevent/DomainEvent.java
index eae9ed9..df937fd 100644
--- a/samples/forum/src/main/java/org/apache/zest/sample/forum/domainevent/DomainEvent.java
+++ b/samples/forum/src/main/java/org/apache/zest/sample/forum/domainevent/DomainEvent.java
@@ -22,7 +22,6 @@ package org.apache.zest.sample.forum.domainevent;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.Method;
-import java.util.function.Function;
import org.apache.zest.api.concern.Concerns;
import org.apache.zest.api.concern.GenericConcern;
import org.apache.zest.api.injection.scope.Structure;
@@ -33,10 +32,11 @@ import org.apache.zest.api.unitofwork.UnitOfWorkCompletionException;
import org.apache.zest.api.unitofwork.UnitOfWorkFactory;
import org.apache.zest.api.value.ValueBuilder;
import org.apache.zest.api.value.ValueBuilderFactory;
-import org.apache.zest.functional.Iterables;
import org.apache.zest.library.rest.server.api.ObjectSelection;
import org.restlet.Request;
+import static java.util.stream.Collectors.toCollection;
+
/**
* TODO
*/
@@ -82,14 +82,9 @@ public @interface DomainEvent
prototype.parameters().get().add( parameterBuilder.newInstance() );
}
- Iterables.addAll( prototype.selection().get(), Iterables.map( new Function<Object, String>()
- {
- @Override
- public String apply( Object o )
- {
- return o.toString();
- }
- }, ObjectSelection.current().selection() ) );
+ ObjectSelection.current().selection().stream()
+ .map( Object::toString )
+ .collect( toCollection( () -> prototype.selection().get() ) );
final DomainEventValue domainEvent = builder.newInstance();