Package org.reflections.util
Class AnnotationMergeCollector
- java.lang.Object
-
- org.reflections.util.AnnotationMergeCollector
-
- All Implemented Interfaces:
java.util.stream.Collector<java.lang.annotation.Annotation,java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>>
public class AnnotationMergeCollector extends java.lang.Object implements java.util.stream.Collector<java.lang.annotation.Annotation,java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>>
merge annotations by mappingReflectionUtils.toMap(Annotation)
and reduce using the givenmergeFunction
mergeFunction
defaults toconcatValues(Object, Object)
.optional
annotatedElement
used byReflectionUtils.toMap(Annotation, AnnotatedElement)
get(Annotations.of(...)) .stream() .collect(new AnnotationMergeCollector())
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.reflect.AnnotatedElement
annotatedElement
private java.util.function.BiFunction<java.lang.Object,java.lang.Object,java.lang.Object>
mergeFunction
-
Constructor Summary
Constructors Constructor Description AnnotationMergeCollector()
AnnotationMergeCollector(java.lang.reflect.AnnotatedElement annotatedElement)
AnnotationMergeCollector(java.lang.reflect.AnnotatedElement annotatedElement, java.util.function.BiFunction<java.lang.Object,java.lang.Object,java.lang.Object> mergeFunction)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.function.BiConsumer<java.util.Map<java.lang.String,java.lang.Object>,java.lang.annotation.Annotation>
accumulator()
private static java.lang.Object[]
arrayAdd(java.lang.Object[] o1, java.lang.Object[] o2)
java.util.Set<java.util.stream.Collector.Characteristics>
characteristics()
java.util.function.BinaryOperator<java.util.Map<java.lang.String,java.lang.Object>>
combiner()
private static java.lang.Object
concatValues(java.lang.Object v1, java.lang.Object v2)
java.util.function.Function<java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>>
finisher()
private java.util.Map<java.lang.String,java.lang.Object>
mergeMaps(java.util.Map<java.lang.String,java.lang.Object> m1, java.util.Map<java.lang.String,java.lang.Object> m2)
private static java.lang.Object
stringArrayConcat(java.lang.String[] v1, java.lang.String[] v2)
private static java.lang.Object
stringConcat(java.lang.String v1, java.lang.String v2)
java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.Object>>
supplier()
-
-
-
Constructor Detail
-
AnnotationMergeCollector
public AnnotationMergeCollector(java.lang.reflect.AnnotatedElement annotatedElement, java.util.function.BiFunction<java.lang.Object,java.lang.Object,java.lang.Object> mergeFunction)
-
AnnotationMergeCollector
public AnnotationMergeCollector()
-
AnnotationMergeCollector
public AnnotationMergeCollector(java.lang.reflect.AnnotatedElement annotatedElement)
-
-
Method Detail
-
supplier
public java.util.function.Supplier<java.util.Map<java.lang.String,java.lang.Object>> supplier()
- Specified by:
supplier
in interfacejava.util.stream.Collector<java.lang.annotation.Annotation,java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>>
-
accumulator
public java.util.function.BiConsumer<java.util.Map<java.lang.String,java.lang.Object>,java.lang.annotation.Annotation> accumulator()
- Specified by:
accumulator
in interfacejava.util.stream.Collector<java.lang.annotation.Annotation,java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>>
-
combiner
public java.util.function.BinaryOperator<java.util.Map<java.lang.String,java.lang.Object>> combiner()
- Specified by:
combiner
in interfacejava.util.stream.Collector<java.lang.annotation.Annotation,java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>>
-
finisher
public java.util.function.Function<java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>> finisher()
- Specified by:
finisher
in interfacejava.util.stream.Collector<java.lang.annotation.Annotation,java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>>
-
characteristics
public java.util.Set<java.util.stream.Collector.Characteristics> characteristics()
- Specified by:
characteristics
in interfacejava.util.stream.Collector<java.lang.annotation.Annotation,java.util.Map<java.lang.String,java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>>
-
mergeMaps
private java.util.Map<java.lang.String,java.lang.Object> mergeMaps(java.util.Map<java.lang.String,java.lang.Object> m1, java.util.Map<java.lang.String,java.lang.Object> m2)
-
concatValues
private static java.lang.Object concatValues(java.lang.Object v1, java.lang.Object v2)
-
arrayAdd
private static java.lang.Object[] arrayAdd(java.lang.Object[] o1, java.lang.Object[] o2)
-
stringArrayConcat
private static java.lang.Object stringArrayConcat(java.lang.String[] v1, java.lang.String[] v2)
-
stringConcat
private static java.lang.Object stringConcat(java.lang.String v1, java.lang.String v2)
-
-