Replacing loop with Stream API.
Project: http://git-wip-us.apache.org/repos/asf/zest-qi4j/repo Commit: http://git-wip-us.apache.org/repos/asf/zest-qi4j/commit/61280dc5 Tree: http://git-wip-us.apache.org/repos/asf/zest-qi4j/tree/61280dc5 Diff: http://git-wip-us.apache.org/repos/asf/zest-qi4j/diff/61280dc5 Branch: refs/heads/3.0 Commit: 61280dc5e42226e274e0c4c2035bcf968464ac2d Parents: 7f04a7c Author: Niclas Hedhman <[email protected]> Authored: Sat Oct 4 14:58:01 2014 +0800 Committer: Niclas Hedhman <[email protected]> Committed: Sat Oct 4 14:58:01 2014 +0800 ---------------------------------------------------------------------- .../java/org/qi4j/api/concern/ConcernOf.java | 3 +- .../org/qi4j/api/concern/GenericConcern.java | 3 +- .../ConstraintViolationException.java | 59 ++++++++------------ 3 files changed, 26 insertions(+), 39 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/61280dc5/core/api/src/main/java/org/qi4j/api/concern/ConcernOf.java ---------------------------------------------------------------------- diff --git a/core/api/src/main/java/org/qi4j/api/concern/ConcernOf.java b/core/api/src/main/java/org/qi4j/api/concern/ConcernOf.java index 33cdd01..1b73ad6 100644 --- a/core/api/src/main/java/org/qi4j/api/concern/ConcernOf.java +++ b/core/api/src/main/java/org/qi4j/api/concern/ConcernOf.java @@ -38,7 +38,6 @@ public abstract class ConcernOf<T> * the next concern in the chain or the mixin * to be invoked. */ - final @ConcernFor - protected T next = null; + final protected T next = null; } http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/61280dc5/core/api/src/main/java/org/qi4j/api/concern/GenericConcern.java ---------------------------------------------------------------------- diff --git a/core/api/src/main/java/org/qi4j/api/concern/GenericConcern.java b/core/api/src/main/java/org/qi4j/api/concern/GenericConcern.java index 2986ff8..6f675c5 100644 --- a/core/api/src/main/java/org/qi4j/api/concern/GenericConcern.java +++ b/core/api/src/main/java/org/qi4j/api/concern/GenericConcern.java @@ -25,8 +25,7 @@ import java.lang.reflect.InvocationHandler; * "next" field in {@link ConcernOf} to continue the invocation * chain. */ -public abstract class GenericConcern - extends ConcernOf<InvocationHandler> +public abstract class GenericConcern extends ConcernOf<InvocationHandler> implements InvocationHandler { } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/61280dc5/core/api/src/main/java/org/qi4j/api/constraint/ConstraintViolationException.java ---------------------------------------------------------------------- diff --git a/core/api/src/main/java/org/qi4j/api/constraint/ConstraintViolationException.java b/core/api/src/main/java/org/qi4j/api/constraint/ConstraintViolationException.java index 9697a8b..7fa2207 100644 --- a/core/api/src/main/java/org/qi4j/api/constraint/ConstraintViolationException.java +++ b/core/api/src/main/java/org/qi4j/api/constraint/ConstraintViolationException.java @@ -21,11 +21,11 @@ import java.lang.annotation.Annotation; import java.lang.reflect.Member; import java.text.MessageFormat; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; -import java.util.function.Function; import org.qi4j.api.Qi4j; import org.qi4j.api.composite.Composite; import org.qi4j.functional.Iterables; @@ -54,7 +54,8 @@ public class ConstraintViolationException Collection<ConstraintViolation> constraintViolations ) { - this( instance.toString(), Qi4j.FUNCTION_DESCRIPTOR_FOR.apply( instance ).types(), method, constraintViolations ); + this( instance.toString(), Qi4j.FUNCTION_DESCRIPTOR_FOR.apply( instance ) + .types(), method, constraintViolations ); } public ConstraintViolationException( String instanceToString, @@ -155,21 +156,7 @@ public class ConstraintViolationException Locale locale; if( bundle != null ) { - try - { - pattern = bundle.getString( "qi4j.constraint." + mixinTypeName + "." + methodName ); - } - catch( MissingResourceException e1 ) - { - try - { - pattern = bundle.getString( "qi4j.constraint" ); - } - catch( MissingResourceException e2 ) - { - // ignore. The default pattern will be used. - } - } + pattern = getResourceString( bundle, pattern ); locale = bundle.getLocale(); } else @@ -188,14 +175,7 @@ public class ConstraintViolationException } else { - classes = "[" + Iterables.<Class<?>>toString( instanceTypes, new Function<Class<?>, String>() - { - @Override - public String apply( Class<?> from ) - { - return from.getSimpleName(); - } - }, "," ) + "]"; + classes = "[" + Iterables.toString( instanceTypes, Class::getSimpleName, "," ) + "]"; } Object[] args = new Object[] { @@ -216,21 +196,30 @@ public class ConstraintViolationException return result; } - public String localizedMessage() + private String getResourceString( ResourceBundle bundle, String pattern ) { - String[] messages = localizedMessagesFrom( null ); - StringBuilder result = new StringBuilder(); - boolean first = true; - for( String message : messages ) + try + { + pattern = bundle.getString( "qi4j.constraint." + mixinTypeName + "." + methodName ); + } + catch( MissingResourceException e1 ) { - if( !first ) + try { - result.append( ',' ); + pattern = bundle.getString( "qi4j.constraint" ); + } + catch( MissingResourceException e2 ) + { + // ignore. The default pattern will be used. } - first = false; - result.append( message ); } - return result.toString(); + return pattern; + } + + public String localizedMessage() + { + String[] messages = localizedMessagesFrom( null ); + return Arrays.stream( messages ).reduce( ( left, right ) -> left + "," + right ).get(); } @Override
