|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.io.Writer
org.castor.ddlgen.DDLWriter
public final class DDLWriter
Replace PrintStream and StringBuffer by a Writer implementation We have various properties to configure output that are in-depended of the schema object:
org.castor.ddlgen.CharFormat=SENSITIVE, UPPER and LOWER org.castor.ddlgen.Newline=\n org.castor.ddlgen.Indention=\t These properties are accessed at various places all around ddlgen at the moment.The idea is that these properties are set only once at the new Writer and do not need to be accessed elsewhere. This has the following advantages: improved performance as the properties don't need to be accessed for every object to output functionallity to format genertaed ddl is concentrated in one class: the new Writer all the toDDL(), toDropDDL(), toCreateDDL() methods get much shorter I thought of the following interface for the new Writer (not complete): write(String) outputs String as is writeln(String) calls write(String) followed by newline() newline() output newline and indention of next line indent() increases indention unindent() decreases indention More write() and writeln() methods for other data types may be added on demand. A further improvement could be to offer write(String, Object[]) methods that internally use MessageFormat. This would enable us to use a pattern based approach for DDL generation. These patterns may sometimes be much easier to read and maintain. In addition to the introduction of the new Writer it will be required to pass an instance of the Writer to every method where DDL gets generated. Therefore the parameterless toCreate() method have to be changed to toCreateDDL(DDLWriter). This also applies to other such methods.
Field Summary |
---|
Fields inherited from class java.io.Writer |
---|
lock |
Constructor Summary | |
---|---|
DDLWriter(java.io.OutputStream output,
Configuration conf)
Construct new DDLWriter with given output stream and configuration file. |
|
DDLWriter(java.io.Writer writer,
Configuration conf)
Construct new DDLWriter with given writer and configuration file. |
Method Summary | |
---|---|
void |
checkError()
Check if any error occured at previous operations of the writer. |
void |
close()
Close the writer. |
void |
flush()
Flush the writer. |
void |
indent()
Increase indention by 1. |
void |
print(char[] chars)
Print an array of characters. |
void |
print(double number)
Print a double-precision floating-point number. |
void |
print(int number)
Print an integer number. |
void |
print(long number)
Print a long number. |
void |
print(java.lang.Object object)
Print an object. |
void |
print(java.lang.String string)
Print a string. |
void |
print(java.lang.String pattern,
java.lang.Object[] arguments)
A convenience method to print a formatted string build by filling placeholders of the specified pattern with given arguments. |
void |
println()
Terminate the current line by writing the line separator string. |
void |
println(char[] chars)
Print an array of characters and terminate the line. |
void |
println(double number)
Print a double-precision floating-point number and terminate the line. |
void |
println(int number)
Print an integer number and terminate the line. |
void |
println(long number)
Print a long number and terminate the line. |
void |
println(java.lang.Object object)
Print an object and terminate the line. |
void |
println(java.lang.String string)
Print a string and terminate the line. |
void |
println(java.lang.String pattern,
java.lang.Object[] arguments)
A convenience method to print a formatted string build by filling placeholders of the specified pattern with given arguments. |
void |
unindent()
Decrease indention by 1. |
void |
write(char[] buf)
|
void |
write(char[] buf,
int off,
int len)
|
void |
write(int c)
|
void |
write(java.lang.String s)
|
void |
write(java.lang.String s,
int off,
int len)
|
Methods inherited from class java.io.Writer |
---|
append, append, append |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DDLWriter(java.io.OutputStream output, Configuration conf)
output
- Output stream to write output characters to.conf
- Configuration.public DDLWriter(java.io.Writer writer, Configuration conf)
writer
- Writer to write output characters to.conf
- Configuration.Method Detail |
---|
public void flush()
flush
in interface java.io.Flushable
flush
in class java.io.Writer
public void close()
close
in interface java.io.Closeable
close
in class java.io.Writer
public void checkError() throws java.io.IOException
java.io.IOException
- IOException caught at any previous operation of the writer.public void indent()
public void unindent()
public void write(char[] buf, int off, int len)
write
in class java.io.Writer
public void write(char[] buf)
write
in class java.io.Writer
public void write(int c)
write
in class java.io.Writer
public void write(java.lang.String s, int off, int len)
write
in class java.io.Writer
public void write(java.lang.String s)
write
in class java.io.Writer
public void print(char[] chars)
chars
- Array of chars to be printed.public void print(double number)
number
- Double to be printed.public void print(int number)
number
- Integer to be printed.public void print(long number)
number
- Long to be printed.public void print(java.lang.Object object)
object
- Object to be printed.public void print(java.lang.String string)
string
- String to be printed.public void print(java.lang.String pattern, java.lang.Object[] arguments)
pattern
- Pattern with placeholders.arguments
- Arguments to replace placeholders in pattern.public void println()
public void println(char[] chars)
chars
- Array of chars to be printed.public void println(double number)
number
- Double to be printed.public void println(int number)
number
- Integer to be printed.public void println(long number)
number
- Long to be printed.public void println(java.lang.Object object)
object
- Object to be printed.public void println(java.lang.String string)
string
- String to be printed.public void println(java.lang.String pattern, java.lang.Object[] arguments)
pattern
- Pattern with placeholders.arguments
- Arguments to replace placeholders in pattern.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |