org.mule.devkit.model.code.fmt
Class StaticJavaFile

java.lang.Object
  extended by org.mule.devkit.model.code.ResourceFile
      extended by org.mule.devkit.model.code.fmt.StaticJavaFile

public final class StaticJavaFile
extends ResourceFile

Statically generated Java soruce file.

This ResourceFile implementation will generate a Java source file by copying the source code from a resource.

While copying a resource, we look for a package declaration and replace it with the target package name. This allows the static Java source code to have an arbitrary package declaration.

You can also use the getJClass method to obtain a TypeReference object that represents the static file. This allows the client code to refer to the class from other CodeModel generated code.

Note that because we don't parse the static Java source code, the returned TypeReference object doesn't respond to methods like "isInterface" or "_extends",

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

Nested Class Summary
static class StaticJavaFile.ChainFilter
          A StaticJavaFile.LineFilter that combines two StaticJavaFile.LineFilters.
static interface StaticJavaFile.LineFilter
          Filter that alters the Java source code.
 
Constructor Summary
StaticJavaFile(GeneratedPackage _pkg, String className, String _resourceName)
           
StaticJavaFile(GeneratedPackage _pkg, String _className, URL _source, StaticJavaFile.LineFilter _filter)
           
 
Method Summary
protected  void build(OutputStream os)
          called by Package to produce the file image.
 TypeReference getJClass()
          Returns a class object that represents a statically generated code.
protected  boolean isResource()
          Returns true if this file should be generated into the directory that the resource files go into.
 
Methods inherited from class org.mule.devkit.model.code.ResourceFile
name
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StaticJavaFile

public StaticJavaFile(GeneratedPackage _pkg,
                      String className,
                      String _resourceName)

StaticJavaFile

public StaticJavaFile(GeneratedPackage _pkg,
                      String _className,
                      URL _source,
                      StaticJavaFile.LineFilter _filter)
Method Detail

getJClass

public final TypeReference getJClass()
Returns a class object that represents a statically generated code.


isResource

protected boolean isResource()
Description copied from class: ResourceFile
Returns true if this file should be generated into the directory that the resource files go into.

Returns false if this file should be generated into the directory where other source files go.

Overrides:
isResource in class ResourceFile

build

protected void build(OutputStream os)
              throws IOException
Description copied from class: ResourceFile
called by Package to produce the file image.

Specified by:
build in class ResourceFile
Throws:
IOException


Copyright © 2010–2015 MuleSoft, Inc.. All rights reserved.