org.mule.devkit.model.code
Class CodeWriter

java.lang.Object
  extended by org.mule.devkit.model.code.CodeWriter
Direct Known Subclasses:
FileCodeWriter, FilerCodeWriter, FilterCodeWriter, SingleStreamCodeWriter, ZipCodeWriter

public abstract class CodeWriter
extends 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  OutputStream openBinary(GeneratedPackage pkg, String fileName)
          Called by CodeModel to store the specified file.
 Writer openSource(GeneratedPackage pkg, 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 OutputStream openBinary(GeneratedPackage pkg,
                                        String fileName)
                                 throws 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:
IOException

openSource

public Writer openSource(GeneratedPackage pkg,
                         String fileName)
                  throws 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:
IOException

close

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

Throws:
IOException


Copyright © 2010-2013 MuleSoft, Inc.. All Rights Reserved.