Package org.reflections.serializers
Class JavaCodeSerializer
- java.lang.Object
-
- org.reflections.serializers.JavaCodeSerializer
-
- All Implemented Interfaces:
Serializer
public class JavaCodeSerializer extends java.lang.Object implements Serializer
source code serialization forReflections
an example of produced java source:reflections.save(file, new JavaCodeSerializer())
public interface MyTestModelStore { interface org { interface reflections { interface TestModel$C4 { interface fields { interface f1 {} interface f2 {} } interface methods { interface m1 {} interface add {} } interface annotations { ... } } } } }
this allows strongly typed access by fqn to type elements - packages, classes, annotations, fields and methods:
MyTestModelStore.org.reflections.TestModel$C1.methods.m1.class
depends on
TypeElementsScanner
configured
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
arrayDescriptor
private static java.lang.String
dotSeparator
private static java.lang.String
doubleSeparator
private int
indent
private static java.lang.String
pathSeparator
private java.util.List<java.lang.String>
prevPaths
private java.lang.StringBuilder
sb
private static java.lang.String
tokenSeparator
-
Constructor Summary
Constructors Constructor Description JavaCodeSerializer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addAnnotations(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> annotations)
protected void
addClass(java.util.List<java.lang.String> typePaths, java.lang.String className)
protected void
addFields(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> fields)
protected void
addMethods(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> fields, java.util.List<java.lang.String> methods)
protected void
addPackages(java.util.List<java.lang.String> typePaths, int i)
private java.lang.String
indent(int times)
protected void
indentClose(java.util.List<java.lang.String> prevPaths)
protected int
indentOpen(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> prevPaths)
private java.lang.String
normalize(java.lang.String candidate)
Reflections
read(java.io.InputStream inputStream)
reads the input stream into a new Reflections instance, populating it's storejava.io.File
save(Reflections reflections, java.lang.String name)
serialize and save to java source codeprivate void
toString(Reflections reflections)
private java.lang.String
uniqueName(java.lang.String candidate, java.util.List<java.lang.String> prev)
private java.lang.String
uniqueName(java.lang.String candidate, java.util.List<java.lang.String> prev, int offset)
-
-
-
Field Detail
-
pathSeparator
private static final java.lang.String pathSeparator
- See Also:
- Constant Field Values
-
doubleSeparator
private static final java.lang.String doubleSeparator
- See Also:
- Constant Field Values
-
dotSeparator
private static final java.lang.String dotSeparator
- See Also:
- Constant Field Values
-
arrayDescriptor
private static final java.lang.String arrayDescriptor
- See Also:
- Constant Field Values
-
tokenSeparator
private static final java.lang.String tokenSeparator
- See Also:
- Constant Field Values
-
sb
private java.lang.StringBuilder sb
-
prevPaths
private java.util.List<java.lang.String> prevPaths
-
indent
private int indent
-
-
Method Detail
-
read
public Reflections read(java.io.InputStream inputStream)
Description copied from interface:Serializer
reads the input stream into a new Reflections instance, populating it's store- Specified by:
read
in interfaceSerializer
-
save
public java.io.File save(Reflections reflections, java.lang.String name)
serialize and save to java source code- Specified by:
save
in interfaceSerializer
- Parameters:
name
- should be in the patternpath/path/path/package.package.classname
,
-
toString
private void toString(Reflections reflections)
-
indentOpen
protected int indentOpen(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> prevPaths)
-
indentClose
protected void indentClose(java.util.List<java.lang.String> prevPaths)
-
addPackages
protected void addPackages(java.util.List<java.lang.String> typePaths, int i)
-
addClass
protected void addClass(java.util.List<java.lang.String> typePaths, java.lang.String className)
-
addFields
protected void addFields(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> fields)
-
addMethods
protected void addMethods(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> fields, java.util.List<java.lang.String> methods)
-
addAnnotations
protected void addAnnotations(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> annotations)
-
uniqueName
private java.lang.String uniqueName(java.lang.String candidate, java.util.List<java.lang.String> prev, int offset)
-
normalize
private java.lang.String normalize(java.lang.String candidate)
-
uniqueName
private java.lang.String uniqueName(java.lang.String candidate, java.util.List<java.lang.String> prev)
-
indent
private java.lang.String indent(int times)
-
-