From f02b3d1a4217ed42031e4f6fc263411861245861 Mon Sep 17 00:00:00 2001 From: Andrei Arlou Date: Sun, 11 Aug 2019 10:10:37 +0300 Subject: [PATCH] Remove unnecessary generic type in Collections.empty*, replace "for" on Stream API, replace anonymous classes on lambda --- .../org/mapstruct/ap/MappingProcessor.java | 5 +- .../conversion/DateToStringConversion.java | 3 +- .../ap/internal/model/Annotation.java | 2 +- .../ap/internal/model/BeanMappingMethod.java | 54 ++++++++----------- .../model/LifecycleMethodResolver.java | 29 ++++------ .../ap/internal/model/MethodReference.java | 3 +- .../ap/internal/model/common/TypeFactory.java | 7 +-- .../internal/model/source/MappingOptions.java | 2 +- .../model/source/SelectionParameters.java | 4 +- .../model/source/SourceReference.java | 8 +-- .../util/AnnotationProcessorContext.java | 5 +- .../mapstruct/ap/internal/util/Fields.java | 4 +- .../ap/internal/util/MapperConfiguration.java | 5 +- 13 files changed, 44 insertions(+), 87 deletions(-) diff --git a/processor/src/main/java/org/mapstruct/ap/MappingProcessor.java b/processor/src/main/java/org/mapstruct/ap/MappingProcessor.java index 4878f3f98..5f7d3394f 100644 --- a/processor/src/main/java/org/mapstruct/ap/MappingProcessor.java +++ b/processor/src/main/java/org/mapstruct/ap/MappingProcessor.java @@ -341,10 +341,7 @@ public class MappingProcessor extends AbstractProcessor { @Override public int compare(ModelElementProcessor o1, ModelElementProcessor o2) { - return - o1.getPriority() < o2.getPriority() ? -1 : - o1.getPriority() == o2.getPriority() ? 0 : - 1; + return Integer.compare( o1.getPriority(), o2.getPriority() ); } } } diff --git a/processor/src/main/java/org/mapstruct/ap/internal/conversion/DateToStringConversion.java b/processor/src/main/java/org/mapstruct/ap/internal/conversion/DateToStringConversion.java index eff3731c8..361ce9d9a 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/conversion/DateToStringConversion.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/conversion/DateToStringConversion.java @@ -15,7 +15,6 @@ import org.mapstruct.ap.internal.model.HelperMethod; import org.mapstruct.ap.internal.model.TypeConversion; import org.mapstruct.ap.internal.model.common.Assignment; import org.mapstruct.ap.internal.model.common.ConversionContext; -import org.mapstruct.ap.internal.model.common.Type; import static java.util.Arrays.asList; import static org.mapstruct.ap.internal.util.Collections.asSet; @@ -31,7 +30,7 @@ public class DateToStringConversion implements ConversionProvider { @Override public Assignment to(ConversionContext conversionContext) { return new TypeConversion( asSet( conversionContext.getTypeFactory().getType( SimpleDateFormat.class ) ), - Collections.emptyList(), + Collections.emptyList(), getConversionExpression( conversionContext, "format" ) ); } diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/Annotation.java b/processor/src/main/java/org/mapstruct/ap/internal/model/Annotation.java index efc3fa073..405958ccd 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/Annotation.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/Annotation.java @@ -27,7 +27,7 @@ public class Annotation extends ModelElement { private List properties; public Annotation(Type type) { - this( type, Collections.emptyList() ); + this( type, Collections.emptyList() ); } public Annotation(Type type, List properties) { diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/BeanMappingMethod.java b/processor/src/main/java/org/mapstruct/ap/internal/model/BeanMappingMethod.java index ba78f7291..d5506b6bc 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/BeanMappingMethod.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/BeanMappingMethod.java @@ -17,9 +17,11 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; +import java.util.Objects; import java.util.Set; import java.util.function.Consumer; import java.util.function.Function; +import java.util.stream.Collectors; import javax.lang.model.type.DeclaredType; import javax.tools.Diagnostic; @@ -104,7 +106,7 @@ public class BeanMappingMethod extends NormalTypeMappingMethod { singleMapping = targetName -> getMappingByTargetName( targetName, sourceMethod.getMappingOptions().getMappings() ); mappingsInitializer = - mappings -> mappings.stream().forEach( mapping -> initReferencesForSourceMethodMapping( mapping ) ); + mappings -> mappings.stream().forEach( this::initReferencesForSourceMethodMapping ); this.method = sourceMethod; return this; } @@ -112,7 +114,7 @@ public class BeanMappingMethod extends NormalTypeMappingMethod { public Builder forgedMethod(Method method) { singleMapping = targetPropertyName -> null; mappingsInitializer = - mappings -> mappings.stream().forEach( mapping -> initReferencesForForgedMethodMapping( mapping ) ); + mappings -> mappings.stream().forEach( this::initReferencesForForgedMethodMapping ); this.method = method; return this; } @@ -177,8 +179,9 @@ public class BeanMappingMethod extends NormalTypeMappingMethod { continue; } Map readAccessors = sourceParameter.getType().getPropertyReadAccessors(); - for ( String key : readAccessors.keySet() ) { - unprocessedSourceProperties.put( key, readAccessors.get( key ) ); + + for ( Entry entry : readAccessors.entrySet() ) { + unprocessedSourceProperties.put( entry.getKey(), entry.getValue() ); } } existingVariableNames.addAll( method.getParameterNames() ); @@ -191,8 +194,8 @@ public class BeanMappingMethod extends NormalTypeMappingMethod { } // map properties with mapping - boolean mappingErrorOccured = handleDefinedMappings(); - if ( mappingErrorOccured ) { + boolean mappingErrorOccurred = handleDefinedMappings(); + if ( mappingErrorOccurred ) { return null; } @@ -366,13 +369,9 @@ public class BeanMappingMethod extends NormalTypeMappingMethod { } else { Collections.sort( - propertyMappings, new Comparator() { - @Override - public int compare(PropertyMapping o1, PropertyMapping o2) { - return graphAnalyzer.getTraversalSequence( o1.getName() ) - - graphAnalyzer.getTraversalSequence( o2.getName() ); - } - } + propertyMappings, + Comparator.comparingInt( propertyMapping -> + graphAnalyzer.getTraversalSequence( propertyMapping.getName() ) ) ); } } @@ -512,9 +511,8 @@ public class BeanMappingMethod extends NormalTypeMappingMethod { */ private static boolean isValidWhenReversed(Mapping mapping) { if ( mapping.getInheritContext() != null && mapping.getInheritContext().isReversed() ) { - return mapping.getTargetReference().isValid() && ( mapping.getSourceReference() != null ? - mapping.getSourceReference().isValid() : - true ); + return mapping.getTargetReference().isValid() && ( mapping.getSourceReference() == null || + mapping.getSourceReference().isValid() ); } return true; } @@ -1051,24 +1049,15 @@ public class BeanMappingMethod extends NormalTypeMappingMethod { } public List getSourceParametersExcludingPrimitives() { - List sourceParameters = new ArrayList<>(); - for ( Parameter sourceParam : getSourceParameters() ) { - if ( !sourceParam.getType().isPrimitive() ) { - sourceParameters.add( sourceParam ); - } - } - - return sourceParameters; + return getSourceParameters().stream() + .filter( parameter -> !parameter.getType().isPrimitive() ) + .collect( Collectors.toList() ); } public List getSourcePrimitiveParameters() { - List sourceParameters = new ArrayList<>(); - for ( Parameter sourceParam : getSourceParameters() ) { - if ( sourceParam.getType().isPrimitive() ) { - sourceParameters.add( sourceParam ); - } - } - return sourceParameters; + return getSourceParameters().stream() + .filter( parameter -> parameter.getType().isPrimitive() ) + .collect( Collectors.toList() ); } @Override @@ -1092,8 +1081,7 @@ public class BeanMappingMethod extends NormalTypeMappingMethod { if ( !super.equals( obj ) ) { return false; } - return propertyMappings != null ? propertyMappings.equals( that.propertyMappings ) : - that.propertyMappings == null; + return Objects.equals( propertyMappings, that.propertyMappings ); } private interface SingleMappingByTargetPropertyNameFunction { diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/LifecycleMethodResolver.java b/processor/src/main/java/org/mapstruct/ap/internal/model/LifecycleMethodResolver.java index 0448be5d4..40dbb7490 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/LifecycleMethodResolver.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/LifecycleMethodResolver.java @@ -9,6 +9,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Set; +import java.util.stream.Collectors; import org.mapstruct.ap.internal.model.common.Parameter; import org.mapstruct.ap.internal.model.common.Type; @@ -123,9 +124,7 @@ public final class LifecycleMethodResolver { List availableMethods = new ArrayList<>( methodsProvidedByParams.size() + sourceModelMethods.size() ); - for ( SourceMethod methodProvidedByParams : methodsProvidedByParams ) { - availableMethods.add( methodProvidedByParams ); - } + availableMethods.addAll( methodsProvidedByParams ); availableMethods.addAll( sourceModelMethods ); return availableMethods; @@ -141,7 +140,7 @@ public final class LifecycleMethodResolver { List> matchingMethods = selectors.getMatchingMethods( method, callbackMethods, - Collections. emptyList(), + Collections.emptyList(), targetType, SelectionCriteria.forLifecycleMethods( selectionParameters ) ); @@ -185,24 +184,14 @@ public final class LifecycleMethodResolver { } private static List filterBeforeMappingMethods(List methods) { - List result = new ArrayList<>(); - for ( SourceMethod method : methods ) { - if ( method.isBeforeMappingMethod() ) { - result.add( method ); - } - } - - return result; + return methods.stream() + .filter( SourceMethod::isBeforeMappingMethod ) + .collect( Collectors.toList() ); } private static List filterAfterMappingMethods(List methods) { - List result = new ArrayList<>(); - for ( SourceMethod method : methods ) { - if ( method.isAfterMappingMethod() ) { - result.add( method ); - } - } - - return result; + return methods.stream() + .filter( SourceMethod::isAfterMappingMethod ) + .collect( Collectors.toList() ); } } diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/MethodReference.java b/processor/src/main/java/org/mapstruct/ap/internal/model/MethodReference.java index 81d75a80e..69b9b81dc 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/MethodReference.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/MethodReference.java @@ -235,8 +235,7 @@ public class MethodReference extends ModelElement implements Assignment { @Override public List getThrownTypes() { - List exceptions = new ArrayList<>(); - exceptions.addAll( thrownTypes ); + List exceptions = new ArrayList<>( thrownTypes ); if ( assignment != null ) { exceptions.addAll( assignment.getThrownTypes() ); } diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/common/TypeFactory.java b/processor/src/main/java/org/mapstruct/ap/internal/model/common/TypeFactory.java index c94986e82..1ec8077a8 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/common/TypeFactory.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/common/TypeFactory.java @@ -68,12 +68,7 @@ import static org.mapstruct.ap.internal.model.common.ImplementationType.withLoad public class TypeFactory { private static final Extractor BUILDER_INFO_CREATION_METHOD_EXTRACTOR = - new Extractor() { - @Override - public String apply(BuilderInfo builderInfo) { - return builderInfo.getBuilderCreationMethod().toString(); - } - }; + builderInfo -> builderInfo.getBuilderCreationMethod().toString(); private final Elements elementUtils; private final Types typeUtils; diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/source/MappingOptions.java b/processor/src/main/java/org/mapstruct/ap/internal/model/source/MappingOptions.java index 81e93826a..0b8cf89f6 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/source/MappingOptions.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/source/MappingOptions.java @@ -85,7 +85,7 @@ public class MappingOptions { null, null, forForgedMethods ? BeanMapping.forForgedMethods() : null, - Collections.emptyList(), + Collections.emptyList(), restrictToDefinedMappings ); diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/source/SelectionParameters.java b/processor/src/main/java/org/mapstruct/ap/internal/model/source/SelectionParameters.java index 0600b0156..cdbf74560 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/source/SelectionParameters.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/source/SelectionParameters.java @@ -144,8 +144,8 @@ public class SelectionParameters { public static SelectionParameters forSourceRHS(SourceRHS sourceRHS) { return new SelectionParameters( - Collections.emptyList(), - Collections.emptyList(), + Collections.emptyList(), + Collections.emptyList(), null, null, sourceRHS diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/source/SourceReference.java b/processor/src/main/java/org/mapstruct/ap/internal/model/source/SourceReference.java index 4bdcf27f9..8b4a28d52 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/source/SourceReference.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/source/SourceReference.java @@ -20,7 +20,6 @@ import javax.lang.model.type.DeclaredType; import org.mapstruct.ap.internal.model.common.Parameter; import org.mapstruct.ap.internal.model.common.Type; import org.mapstruct.ap.internal.model.common.TypeFactory; -import org.mapstruct.ap.internal.util.Extractor; import org.mapstruct.ap.internal.util.FormattingMessager; import org.mapstruct.ap.internal.util.Message; import org.mapstruct.ap.internal.util.Strings; @@ -214,12 +213,7 @@ public class SourceReference { Strings.join( method.getSourceParameters(), ", ", - new Extractor() { - @Override - public String apply(Parameter parameter) { - return parameter.getName(); - } - } + Parameter::getName ) ); } diff --git a/processor/src/main/java/org/mapstruct/ap/internal/util/AnnotationProcessorContext.java b/processor/src/main/java/org/mapstruct/ap/internal/util/AnnotationProcessorContext.java index ae8cc62fb..2b6f353d0 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/util/AnnotationProcessorContext.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/util/AnnotationProcessorContext.java @@ -6,7 +6,6 @@ package org.mapstruct.ap.internal.util; import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import java.util.ServiceLoader; @@ -113,8 +112,8 @@ public class AnnotationProcessorContext implements MapStructProcessingEnvironmen AstModifyingAnnotationProcessor.class, AnnotationProcessorContext.class.getClassLoader() ); - for ( Iterator it = loader.iterator(); it.hasNext(); ) { - processors.add( it.next() ); + for ( AstModifyingAnnotationProcessor astModifyingAnnotationProcessor : loader ) { + processors.add( astModifyingAnnotationProcessor ); } return processors; diff --git a/processor/src/main/java/org/mapstruct/ap/internal/util/Fields.java b/processor/src/main/java/org/mapstruct/ap/internal/util/Fields.java index adf927aed..f394f4e8f 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/util/Fields.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/util/Fields.java @@ -84,9 +84,7 @@ public class Fields { private static void addFields(List alreadyCollected, List variablesToAdd) { List safeToAdd = new ArrayList<>( variablesToAdd.size() ); - for ( VariableElement toAdd : variablesToAdd ) { - safeToAdd.add( toAdd ); - } + safeToAdd.addAll( variablesToAdd ); alreadyCollected.addAll( 0, safeToAdd ); } diff --git a/processor/src/main/java/org/mapstruct/ap/internal/util/MapperConfiguration.java b/processor/src/main/java/org/mapstruct/ap/internal/util/MapperConfiguration.java index 909152b6a..451e8fe7c 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/util/MapperConfiguration.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/util/MapperConfiguration.java @@ -99,8 +99,7 @@ public class MapperConfiguration { } public List imports() { - List imports = new ArrayList<>(); - imports.addAll( mapperPrism.imports() ); + List imports = new ArrayList<>( mapperPrism.imports() ); if ( mapperConfigPrism != null ) { imports.addAll( mapperConfigPrism.imports() ); } @@ -262,7 +261,7 @@ public class MapperConfiguration { public boolean isDisableSubMappingMethodsGeneration() { if ( mapperPrism.disableSubMappingMethodsGeneration() ) { - return mapperPrism.disableSubMappingMethodsGeneration(); + return true; } if ( mapperConfigPrism != null && mapperConfigPrism.disableSubMappingMethodsGeneration() ) {