org.enhydra.zeus
Interface Generator

All Known Implementing Classes:
SimpleGenerator

public interface Generator

Generator is the portion of Zeus that will convert a set of constraints, visible through a Binding, and output them as generated Java classes (to a Result.

Version:
1.0
Author:
Brett McLaughlin, Maciej Zawadzki

Field Summary
static java.lang.String DEFAULT_COLLECTION_CLASS
          The default Collection class
 
Method Summary
 void generate(Binding binding)
           This will convert from a set of constraints to Java classes.
 boolean generateAsSerializable()
           This will return true if the generator is set to generate Serializable classes, or else false.
 java.lang.String getCollectionClass()
           This will return the current class used for Collection properties.
 java.lang.String getImplementationPackage()
           Returns the Java package to generate implementation classes within.
 java.lang.String getInterfacePackage()
           Returns the Java package to generate interfaces within.
 void setCollectionClass(java.lang.String collectionClass)
           This will set the Collection class to use anytime that a collection of values need to be stored.
 void setGenerateAsSerializable(boolean generateAsSerializable)
           This will allow for setting the generator to generate serializable classes.
 void setIgnoreBinding(java.lang.String bindingName)
           This allows a binding to be ignored.
 void setImplementationPackage(java.lang.String implPackage)
           Sets the Java package to generate new interfaces within.
 void setInterfacePackage(java.lang.String interfacePackage)
           Sets the Java package to generate new interfaces within.
 void setJavaPackage(java.lang.String interfacePackage)
           Sets the Java package to generate new interfaces and implementation within.
 void setOutputDirectory(java.io.File outputDir)
           This sets the output directory to output generated classes to.
 void setOutputDirectory(java.lang.String outputDir)
           This sets the output directory to output generated classes to.
 

Field Detail

DEFAULT_COLLECTION_CLASS

public static final java.lang.String DEFAULT_COLLECTION_CLASS
The default Collection class
Method Detail

setCollectionClass

public void setCollectionClass(java.lang.String collectionClass)

This will set the Collection class to use anytime that a collection of values need to be stored. The default value for this class is stored in DEFAULT_COLLECTION_CLASS. The class specified should be an implementation of the java.util.Collection interface.

Parameters:
collectionClass - String name of collection to use.

getCollectionClass

public java.lang.String getCollectionClass()

This will return the current class used for Collection properties.

Returns:
String - name of class used for Collections.

setJavaPackage

public void setJavaPackage(java.lang.String interfacePackage)

Sets the Java package to generate new interfaces and implementation within. For example, supplying the value com.foo.bar to this method and then generating classes, the classes would all be in the com.foo.bar package after generation.

Parameters:
javaPackage - String the Java package to generate interfaces and implementation classes within.

getInterfacePackage

public java.lang.String getInterfacePackage()

Returns the Java package to generate interfaces within.

Returns:
String - the Java package to unmarshall interfaces to.

setInterfacePackage

public void setInterfacePackage(java.lang.String interfacePackage)

Sets the Java package to generate new interfaces within. For example, supplying the value com.foo.bar to this method and then generating classes, the interfaces would all be in the com.foo.bar package after generation.

Parameters:
interfacePackage - String the Java package to generate interfaces within.

getImplementationPackage

public java.lang.String getImplementationPackage()

Returns the Java package to generate implementation classes within.

Returns:
String - the Java package to generate implementation classes within.

setImplementationPackage

public void setImplementationPackage(java.lang.String implPackage)

Sets the Java package to generate new interfaces within. For example, supplying the value com.foo.bar to this method and then generating classes, the interfafces would all be in the com.foo.bar package after generation.

Parameters:
implPackage - String the Java package to generate interfaces within.

setOutputDirectory

public void setOutputDirectory(java.lang.String outputDir)

This sets the output directory to output generated classes to.

Parameters:
outputDir - the name of the base directory where all generated classes should be placed

setOutputDirectory

public void setOutputDirectory(java.io.File outputDir)

This sets the output directory to output generated classes to.

Parameters:
outputDir - the File (directory) where all generated classes should be placed

generateAsSerializable

public boolean generateAsSerializable()

This will return true if the generator is set to generate Serializable classes, or else false.

Returns:
boolean - whether classes will be serializable.

setGenerateAsSerializable

public void setGenerateAsSerializable(boolean generateAsSerializable)

This will allow for setting the generator to generate serializable classes. By default, classes are not set to be serializable.

Parameters:
generateAsSerializable - whether or not to generate serializable classes

setIgnoreBinding

public void setIgnoreBinding(java.lang.String bindingName)

This allows a binding to be ignored. This is an intermediary step towards allowing binding schemas. The name of the binding should be passed in here, and no property generation for it will occur.

Parameters:
bindingName - the name of the binding to ignore.

generate

public void generate(Binding binding)
              throws java.io.IOException

This will convert from a set of constraints to Java classes. It accesses those constraints through the Binding interface, which provides them in a representation-independent format, and then converts them into Java code.

Parameters:
binder - Binder with ability to convert from constraints to Zeus Bindings.
Throws:
IOException - - when errors in writing to the supplied Result occur.


Copyright © 2001 Enhydra. All Rights Reserved.