Class JavaGenerator
java.lang.Object
org.fusesource.hawtbuf.proto.compiler.JavaGenerator
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate boolean(package private) static final char[]private intprivate Stringprivate booleanprivate Fileprivate Stringprivate File[]private ProtoDescriptorprivate PrintWriter -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate StringasJavaString(String value) voidprivate StringconstantCase(String name) private StringconstantToUCamelCase(String name) private booleanprivate voidprivate voidprivate voidprivate voidprivate voidgenerateMethodAssertInitialized(MessageDescriptor m, String className) private voidprivate voidgenerateMethodEquals(MessageDescriptor m, String className) private voidgenerateMethodMergeFromBean(MessageDescriptor m, String className) private voidgenerateMethodMergeFromStream(MessageDescriptor m, String className) private voidgenerateMethodParseFrom(MessageDescriptor m, String className) private voidprivate voidprivate voidgenerateMethodType(MessageDescriptor m, String className) private voidIf the java_visitor message option is set, then this method generates a visitor method.private voidprivate voidprivate StringgetOut()File[]getPath()private voidindent()private booleanisInBaseClass(MessageDescriptor m, FieldDescriptor field) private booleanprivate StringjavaClassName(ProtoDescriptor proto) private Stringprivate StringjavaPackage(ProtoDescriptor proto) private StringjavaType(FieldDescriptor field) private StringjavaType(TypeDescriptor descriptor) private StringjavaTypeDefault(FieldDescriptor field) private static Stringprivate voidloadImports(ProtoDescriptor proto, File protoDir) static voidprivate voidp()private voidprivate static StringremoveFileExtension(String name) voidvoidprivate static Stringprivate voidunindent()private voidwriteFile(String className, JavaGenerator.Closure closure)
-
Field Details
-
out
-
path
-
proto
-
javaPackage
-
outerClassName
-
w
-
indent
private int indent -
errors
-
multipleFiles
private boolean multipleFiles -
deferredDecode
private boolean deferredDecode -
auto_clear_optional_fields
private boolean auto_clear_optional_fields -
HEX_TABLE
static final char[] HEX_TABLE
-
-
Constructor Details
-
JavaGenerator
public JavaGenerator()
-
-
Method Details
-
main
-
compile
- Throws:
CompilerException
-
writeFile
- Throws:
CompilerException
-
loadImports
-
generateProtoFile
- Throws:
CompilerException
-
generateFileHeader
private void generateFileHeader() -
generateMessageBean
-
isInBaseClass
-
generateMethodVisitor
If the java_visitor message option is set, then this method generates a visitor method. The option speifiies the class name of the visitor and optionally the return value and exceptions thrown by the visitor. Examples: option java_visitor = "org.apache.kahadb.store.Visitor"; generates: public void visit(org.apache.kahadb.store.Visitor visitor) { visitor.visit(this); } option java_visitor = "org.apache.kahadb.store.Visitor:int:java.io.IOException"; generates: public int visit(org.apache.kahadb.store.Visitor visitor) throws java.io.IOException { return visitor.visit(this); }- Parameters:
m-
-
generateMethodType
-
generateMethodParseFrom
-
generateMethodEquals
-
generateMethodSerializedSize
- Parameters:
m-
-
generateMethodWriteTo
- Parameters:
m-
-
generateMethodMergeFromStream
- Parameters:
m-className-
-
generateMethodMergeFromBean
- Parameters:
m-className-
-
generateMethodClear
- Parameters:
m-
-
generateMethodAssertInitialized
-
generateMethodToString
-
generateFieldAccessor
- Parameters:
field-className-
-
javaTypeDefault
-
asJavaString
-
generateEnum
-
javaCollectionType
-
javaType
-
javaType
-
equals
-
javaClassName
-
isMultipleFilesEnabled
-
javaPackage
-
indent
private void indent() -
unindent
private void unindent() -
p
-
p
private void p() -
getOption
-
removeFileExtension
-
uCamel
-
lCamel
-
constantToUCamelCase
-
constantCase
-
getOut
-
setOut
-
getPath
-
setPath
-