com.sun.codemodel
Class CodeWriter

java.lang.Object
  extended by com.sun.codemodel.CodeWriter
Direct Known Subclasses:
FileCodeWriter, FilterCodeWriter, SingleStreamCodeWriter, ZipCodeWriter

public abstract class CodeWriter
extends java.lang.Object

Receives generated code and writes to the appropriate storage.

Author:
Kohsuke Kawaguchi (kohsuke.kawaguchi@sun.com)

Constructor Summary
CodeWriter()
           
 
Method Summary
abstract  void close()
          Called by CodeModel at the end of the process.
abstract  java.io.OutputStream openBinary(JPackage pkg, java.lang.String fileName)
          Called by CodeModel to store the specified file.
 java.io.Writer openSource(JPackage pkg, java.lang.String fileName)
          Called by CodeModel to store the specified file.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CodeWriter

public CodeWriter()
Method Detail

openBinary

public abstract java.io.OutputStream openBinary(JPackage pkg,
                                                java.lang.String fileName)
                                         throws java.io.IOException
Called by CodeModel to store the specified file. The callee must allocate a storage to store the specified file.

The returned stream will be closed before the next file is stored. So the callee can assume that only one OutputStream is active at any given time.

Parameters:
pkg - The package of the file to be written.
fileName - File name without the path. Something like "Foo.java" or "Bar.properties"
Throws:
java.io.IOException

openSource

public java.io.Writer openSource(JPackage pkg,
                                 java.lang.String fileName)
                          throws java.io.IOException
Called by CodeModel to store the specified file. The callee must allocate a storage to store the specified file.

The returned stream will be closed before the next file is stored. So the callee can assume that only one OutputStream is active at any given time.

Parameters:
pkg - The package of the file to be written.
fileName - File name without the path. Something like "Foo.java" or "Bar.properties"
Throws:
java.io.IOException

close

public abstract void close()
                    throws java.io.IOException
Called by CodeModel at the end of the process.

Throws:
java.io.IOException


Copyright © 2005-2011 Sun Microsystems. All Rights Reserved.