Class JavaGenerator
java.lang.Object
org.fusesource.hawtbuf.proto.compiler.JavaGenerator
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
private boolean
(package private) static final char[]
private int
private String
private boolean
private File
private String
private File[]
private ProtoDescriptor
private PrintWriter
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate String
asJavaString
(String value) void
private String
constantCase
(String name) private String
constantToUCamelCase
(String name) private boolean
private void
private void
private void
private void
private void
generateMethodAssertInitialized
(MessageDescriptor m, String className) private void
private void
generateMethodEquals
(MessageDescriptor m, String className) private void
generateMethodMergeFromBean
(MessageDescriptor m, String className) private void
generateMethodMergeFromStream
(MessageDescriptor m, String className) private void
generateMethodParseFrom
(MessageDescriptor m, String className) private void
private void
private void
generateMethodType
(MessageDescriptor m, String className) private void
If the java_visitor message option is set, then this method generates a visitor method.private void
private void
private String
getOut()
File[]
getPath()
private void
indent()
private boolean
isInBaseClass
(MessageDescriptor m, FieldDescriptor field) private boolean
private String
javaClassName
(ProtoDescriptor proto) private String
private String
javaPackage
(ProtoDescriptor proto) private String
javaType
(FieldDescriptor field) private String
javaType
(TypeDescriptor descriptor) private String
javaTypeDefault
(FieldDescriptor field) private static String
private void
loadImports
(ProtoDescriptor proto, File protoDir) static void
private void
p()
private void
private static String
removeFileExtension
(String name) void
void
private static String
private void
unindent()
private void
writeFile
(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
-