Class AltJavaGenerator
java.lang.Object
org.fusesource.hawtbuf.proto.compiler.AltJavaGenerator
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
private String
private String
private String
private String
(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
generateBeanEquals
(MessageDescriptor m, String className) private void
generateBufferEquals
(MessageDescriptor m, String className) private void
private void
private void
generateFieldAccessor
(String beanClassName, FieldDescriptor field) private void
private void
private void
private void
private void
generateMethodCopyFromBean
(MessageDescriptor m, String className) private void
generateMethodFreeze
(MessageDescriptor m, String bufferClassName) private void
generateMethodMergeFromBean
(MessageDescriptor m, String getterClassName, String beanClassName) private void
generateMethodMergeFromStream
(MessageDescriptor m, String className) private void
generateMethodParseFrom
(MessageDescriptor m, String bufferClassName, String beanClassName) 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
generateParseDelegate
(EnumDescriptor descriptor, String methodName, String inputType, String exceptions) private void
private void
private String
getOut()
File[]
getPath()
private void
indent()
private boolean
isBuferOrString
(String type) private boolean
private boolean
isPrimitive
(String type) private String
javaClassName
(ProtoDescriptor proto) private String
private String
javaFactoryType
(TypeDescriptor descriptor) private String
javaPackage
(ProtoDescriptor proto) private String
javaType
(FieldDescriptor field) private String
javaTypeDefault
(FieldDescriptor field) private static String
private void
loadImports
(ProtoDescriptor proto, File protoDir) static void
private void
p()
private void
private String
private static String
removeFileExtension
(String name) void
void
private static String
private void
unindent()
private void
writeFile
(String className, AltJavaGenerator.Closure closure)
-
Field Details
-
out
-
path
-
proto
-
javaPackage
-
outerClassName
-
w
-
indent
private int indent -
errors
-
multipleFiles
private boolean multipleFiles -
auto_clear_optional_fields
private boolean auto_clear_optional_fields -
factoryFeild
-
getterCN
-
beanCN
-
bufferCN
-
HEX_TABLE
static final char[] HEX_TABLE
-
-
Constructor Details
-
AltJavaGenerator
public AltJavaGenerator()
-
-
Method Details
-
main
-
compile
- Throws:
CompilerException
-
writeFile
- Throws:
CompilerException
-
loadImports
-
generateProtoFile
- Throws:
CompilerException
-
generateFileHeader
private void generateFileHeader() -
generateMessageBean
-
generateMethodFreeze
-
isPrimitive
-
isBuferOrString
-
generateMethodCopyFromBean
- Parameters:
m
-className
-
-
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
private void generateMethodParseFrom(MessageDescriptor m, String bufferClassName, String beanClassName) -
generateBeanEquals
-
generateBufferEquals
-
generateMethodSerializedSize
- Parameters:
m
-
-
generateMethodWrite
- Parameters:
m
-
-
generateMethodMergeFromStream
- Parameters:
m
-className
-
-
generateMethodMergeFromBean
private void generateMethodMergeFromBean(MessageDescriptor m, String getterClassName, String beanClassName) - Parameters:
m
-getterClassName
-
-
generateMethodClear
- Parameters:
m
-
-
generateReadWriteExternal
-
generateMethodToString
-
generateBufferGetters
- Parameters:
field
-
-
generateFieldGetterSignatures
- Parameters:
field
-
-
generateFieldAccessor
- Parameters:
field
-
-
javaTypeDefault
-
asJavaString
-
generateEnum
-
generateParseDelegate
private void generateParseDelegate(EnumDescriptor descriptor, String methodName, String inputType, String exceptions) -
javaCollectionType
-
javaType
-
javaFactoryType
-
qualified
-
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
-