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.classdepends on
TypeElementsScannerconfigured
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringarrayDescriptorprivate static java.lang.StringdotSeparatorprivate static java.lang.StringdoubleSeparatorprivate intindentprivate static java.lang.StringpathSeparatorprivate java.util.List<java.lang.String>prevPathsprivate java.lang.StringBuildersbprivate static java.lang.StringtokenSeparator
-
Constructor Summary
Constructors Constructor Description JavaCodeSerializer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddAnnotations(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> annotations)protected voidaddClass(java.util.List<java.lang.String> typePaths, java.lang.String className)protected voidaddFields(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> fields)protected voidaddMethods(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> fields, java.util.List<java.lang.String> methods)protected voidaddPackages(java.util.List<java.lang.String> typePaths, int i)private java.lang.Stringindent(int times)protected voidindentClose(java.util.List<java.lang.String> prevPaths)protected intindentOpen(java.util.List<java.lang.String> typePaths, java.util.List<java.lang.String> prevPaths)private java.lang.Stringnormalize(java.lang.String candidate)Reflectionsread(java.io.InputStream inputStream)reads the input stream into a new Reflections instance, populating it's storejava.io.Filesave(Reflections reflections, java.lang.String name)serialize and save to java source codeprivate voidtoString(Reflections reflections)private java.lang.StringuniqueName(java.lang.String candidate, java.util.List<java.lang.String> prev)private java.lang.StringuniqueName(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:Serializerreads the input stream into a new Reflections instance, populating it's store- Specified by:
readin interfaceSerializer
-
save
public java.io.File save(Reflections reflections, java.lang.String name)
serialize and save to java source code- Specified by:
savein 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)
-
-