xdoclet.modules.hibernate
Class HibernateCfgSubTask

java.lang.Object
  extended byxdoclet.DocletSupport
      extended byxdoclet.SubTask
          extended byxdoclet.TemplateSubTask
              extended byxdoclet.XmlSubTask
                  extended byxdoclet.modules.hibernate.HibernateCfgSubTask
All Implemented Interfaces:
xdoclet.modules.hibernate.HibernateProperties, Serializable

public class HibernateCfgSubTask
extends XmlSubTask
implements xdoclet.modules.hibernate.HibernateProperties

Generate the hibernate.cfg.xml file. It lists all of the properties as well as a property for each hbm.xml file. This file can be used for creating and installing a SessionFactory in JNDI as well as launching Hibern8IDE.

Version:
$Revision: 1.10 $
Author:
Frederick N. Brier, David Channon
See Also:
Serialized Form
ant.element
name="hibernatecfg" display-name="Hibernate Configuration File Generation" parent="xdoclet.modules.hibernate.HibernateDocletTask"
created
February 6, 2004

Nested Class Summary
static class HibernateCfgSubTask.HibernateCFGVersion
          Based on Matt Raible's code for the Hibernate sub-task.
 
Nested classes inherited from class xdoclet.TemplateSubTask
TemplateSubTask.ExtentTypes, TemplateSubTask.OfType
 
Field Summary
 
Fields inherited from class xdoclet.DocletSupport
currentClassTag, currentFieldTag, currentMethodTag
 
Constructor Summary
HibernateCfgSubTask()
          Constructor for the HibernateSubTask object
 
Method Summary
 void addConfiguredJndiProperty(org.apache.tools.ant.types.Parameter jndiProperty)
          These elements allow you to add properties to the JNDI context.
 void addOtherMapping(org.apache.tools.ant.types.Parameter otherMapping)
          These elements allow you to add arbitrary mappings to cfg.xml file.
 void addOtherProperty(org.apache.tools.ant.types.Parameter otherProperty)
          These elements allow you to add arbitrary properties to cfg.xml file.
protected  void engineStarted()
          Called when the engine is started
 void execute()
          Generate Hibernate Configuration file (hibernate.cfg.xml).
 String getCacheProviderClass()
           
 String getCglibUseReflectionOptimizer()
           
 String getDataSource()
           
 String getDefaultSchema()
           
 String getDialect()
           
 String getDriver()
           
 String getHbm2ddl()
           
 String getJdbcUrl()
           
 String getJndiName()
           
 Collection getJndiProperties()
           
 Collection getOtherMappings()
           
 Collection getOtherProperties()
           
 String getPassword()
           
 String getPoolSize()
           
 boolean getShowSql()
           
 String getTransactionManagerFactory()
           
 String getTransactionManagerLookup()
           
 String getTransactionManagerStrategy()
           
 boolean getUseOuterJoin()
           
 String getUserName()
           
 String getUserTransactionName()
           
 String getVersion()
          Get the Hibernate configuration DTD version.
 void setCacheProviderClass(String string)
          The classname of a custom CacheProvider.
 void setCglibUseReflectionOptimizer(String string)
          Enables use of CGLIB instead of runtime reflection (System-level property, default is to use CGLIB where possible).
 void setDataSource(String dataSource)
          JNDI name of data source to use in the session factory.
 void setDefaultSchema(String string)
          Qualify unqualified tablenames with the given schema/tablespace in generated SQL.
 void setDialect(String dialect)
          SQL dialect of the database.
 void setDriver(String driver)
          JDBC Driver to make database connection.
 void setHbm2ddl(String hbm2ddl)
          Automatically export schema DDL to the database when the SessionFactory is created.
 void setJdbcUrl(String jdbcUrl)
          URL for the JDBC Driver to make the connection to the database.
 void setJndiName(String jndiName)
          JNDI name to bind to the SessionFactory
 void setPassword(String password)
          Use this password to login to the database
 void setPoolSize(String poolSize)
          Hibernate connection pool size.
 void setShowSql(boolean showSql)
          Log sql statements.
 void setTransactionManagerFactory(String string)
          The classname of a TransactionFactory to use with Hibernate Transaction API (defaults to JDBCTransactionFactory).
 void setTransactionManagerLookup(String transactionManagerLookup)
          The fully qualified class name of the Hibernate TransactionFactory implementation.
 void setTransactionManagerStrategy(String transactionManagerStrategy)
          Strategy for obtaining the JTA TransactionManager
 void setUseOuterJoin(boolean useOuterJoin)
          Whether to use outer join
 void setUserName(String userName)
          Use this user name to login to the database
 void setUserTransactionName(String userTransactionName)
          The JNDI name of the JTA UserTransaction object
 void setVersion(HibernateCfgSubTask.HibernateCFGVersion version)
          Sets the hibernate configuration DTD version to use.
 void validateOptions()
          Called to validate configuration parameters.
 
Methods inherited from class xdoclet.XmlSubTask
copyAttributesFrom, engineFinished, getDtdURL, getPublicId, getSchema, getSchemaURL, getSystemId, getUseIds, getXmlencoding, isValidateXML, setDtdURL, setPublicId, setSchema, setSchemaURL, setSystemId, setUseIds, setValidateXML, setXmlencoding, startProcess
 
Methods inherited from class xdoclet.TemplateSubTask
addOfType, addOfType, addPackageSubstitution, generateForClass, getAcceptAbstractClasses, getAcceptInterfaces, getDestinationFile, getEngine, getExtent, getGeneratedFileName, getGenerationManager, getHavingClassTag, getOfType, getPackageSubstitutions, getSubTaskClassName, getTemplateURL, init, isPackageSubstitutionInheritanceSupported, isPrefixWithPackageStructure, javaFile, matchesGenerationRules, processInnerClasses, setAcceptAbstractClasses, setAcceptInterfaces, setDestinationFile, setEngine, setExtent, setExtentValue, setGenerationManager, setHavingClassTag, setOfType, setPackageSubstitutionInheritanceSupported, setPackageSubstitutions, setPrefixWithPackageStructure, setSubTaskClassName, setTemplateFile, setTemplateURL, startEngine, startProcessForAll, startProcessPerClass
 
Methods inherited from class xdoclet.SubTask
addConfigParam, getConfigParams, getConfigParamsAsMap, getContext, getDestDir, getMergeDir, getSubTaskName, getXJavaDoc, setDestDir, setMergeDir, setSubTaskName
 
Methods inherited from class xdoclet.DocletSupport
getCurrentClass, getCurrentClassTag, getCurrentConstructor, getCurrentField, getCurrentFieldTag, getCurrentMethod, getCurrentMethodTag, getCurrentPackage, getCurrentTag, isDocletGenerated, popCurrentClass, pushCurrentClass, setCurrentClass, setCurrentClassTag, setCurrentConstructor, setCurrentField, setCurrentFieldTag, setCurrentMethod, setCurrentMethodTag, setCurrentPackage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HibernateCfgSubTask

public HibernateCfgSubTask()
Constructor for the HibernateSubTask object

Method Detail

getVersion

public String getVersion()
Get the Hibernate configuration DTD version.

Returns:

getHbm2ddl

public String getHbm2ddl()

getTransactionManagerLookup

public String getTransactionManagerLookup()

getJndiProperties

public Collection getJndiProperties()
Specified by:
getJndiProperties in interface xdoclet.modules.hibernate.HibernateProperties

getOtherProperties

public Collection getOtherProperties()
Specified by:
getOtherProperties in interface xdoclet.modules.hibernate.HibernateProperties

getOtherMappings

public Collection getOtherMappings()
Specified by:
getOtherMappings in interface xdoclet.modules.hibernate.HibernateProperties

getTransactionManagerStrategy

public String getTransactionManagerStrategy()
Specified by:
getTransactionManagerStrategy in interface xdoclet.modules.hibernate.HibernateProperties

getUserTransactionName

public String getUserTransactionName()
Specified by:
getUserTransactionName in interface xdoclet.modules.hibernate.HibernateProperties

getUserName

public String getUserName()
Specified by:
getUserName in interface xdoclet.modules.hibernate.HibernateProperties

getPassword

public String getPassword()
Specified by:
getPassword in interface xdoclet.modules.hibernate.HibernateProperties

getUseOuterJoin

public boolean getUseOuterJoin()
Specified by:
getUseOuterJoin in interface xdoclet.modules.hibernate.HibernateProperties

getShowSql

public boolean getShowSql()
Specified by:
getShowSql in interface xdoclet.modules.hibernate.HibernateProperties

getJndiName

public String getJndiName()
Specified by:
getJndiName in interface xdoclet.modules.hibernate.HibernateProperties

getDataSource

public String getDataSource()
Specified by:
getDataSource in interface xdoclet.modules.hibernate.HibernateProperties

getDialect

public String getDialect()
Specified by:
getDialect in interface xdoclet.modules.hibernate.HibernateProperties

getDriver

public String getDriver()
Specified by:
getDriver in interface xdoclet.modules.hibernate.HibernateProperties

getJdbcUrl

public String getJdbcUrl()
Specified by:
getJdbcUrl in interface xdoclet.modules.hibernate.HibernateProperties

getPoolSize

public String getPoolSize()
Specified by:
getPoolSize in interface xdoclet.modules.hibernate.HibernateProperties

getCacheProviderClass

public String getCacheProviderClass()
Returns:

getCglibUseReflectionOptimizer

public String getCglibUseReflectionOptimizer()
Returns:

getDefaultSchema

public String getDefaultSchema()
Returns:

getTransactionManagerFactory

public String getTransactionManagerFactory()
Returns:

setVersion

public void setVersion(HibernateCfgSubTask.HibernateCFGVersion version)
Sets the hibernate configuration DTD version to use. Legal values are "2.0" and "3.0".

Parameters:
version -

setHbm2ddl

public void setHbm2ddl(String hbm2ddl)
Automatically export schema DDL to the database when the SessionFactory is created. With create-drop, the database schema will be dropped when the SessionFactory is closed explicitely. eg. update | create | create-drop

Parameters:
hbm2ddl -

setPoolSize

public void setPoolSize(String poolSize)
Hibernate connection pool size.

Parameters:
poolSize -

setJdbcUrl

public void setJdbcUrl(String jdbcUrl)
URL for the JDBC Driver to make the connection to the database.

Parameters:
jdbcUrl -

setTransactionManagerStrategy

public void setTransactionManagerStrategy(String transactionManagerStrategy)
Strategy for obtaining the JTA TransactionManager

Parameters:
transactionManagerStrategy -

setUserTransactionName

public void setUserTransactionName(String userTransactionName)
The JNDI name of the JTA UserTransaction object

Parameters:
userTransactionName -

setTransactionManagerLookup

public void setTransactionManagerLookup(String transactionManagerLookup)
The fully qualified class name of the Hibernate TransactionFactory implementation.

Parameters:
transactionManagerLookup -

setUseOuterJoin

public void setUseOuterJoin(boolean useOuterJoin)
Whether to use outer join

Parameters:
useOuterJoin -

setShowSql

public void setShowSql(boolean showSql)
Log sql statements. Defaults to false.

Parameters:
showSql -

setJndiName

public void setJndiName(String jndiName)
JNDI name to bind to the SessionFactory

Parameters:
jndiName -

setDataSource

public void setDataSource(String dataSource)
JNDI name of data source to use in the session factory.

Parameters:
dataSource -

setDialect

public void setDialect(String dialect)
SQL dialect of the database.

Parameters:
dialect -
ant.required
Yes. Use fully-qualified class name.

setDriver

public void setDriver(String driver)
JDBC Driver to make database connection.

Parameters:
driver -

setUserName

public void setUserName(String userName)
Use this user name to login to the database

Parameters:
userName -

setPassword

public void setPassword(String password)
Use this password to login to the database

Parameters:
password -

setCacheProviderClass

public void setCacheProviderClass(String string)
The classname of a custom CacheProvider.

Parameters:
string -

setCglibUseReflectionOptimizer

public void setCglibUseReflectionOptimizer(String string)
Enables use of CGLIB instead of runtime reflection (System-level property, default is to use CGLIB where possible). Reflection can sometimes be useful when troubleshooting.

Parameters:
string -

setDefaultSchema

public void setDefaultSchema(String string)
Qualify unqualified tablenames with the given schema/tablespace in generated SQL.

Parameters:
string -

setTransactionManagerFactory

public void setTransactionManagerFactory(String string)
The classname of a TransactionFactory to use with Hibernate Transaction API (defaults to JDBCTransactionFactory). eg. classname.of.TransactionFactory

Parameters:
string -

execute

public void execute()
             throws XDocletException
Generate Hibernate Configuration file (hibernate.cfg.xml).

Overrides:
execute in class TemplateSubTask
Throws:
XDocletException

validateOptions

public void validateOptions()
                     throws XDocletException
Description copied from class: TemplateSubTask
Called to validate configuration parameters.

Overrides:
validateOptions in class TemplateSubTask
Throws:
XDocletException - Description of Exception

addConfiguredJndiProperty

public void addConfiguredJndiProperty(org.apache.tools.ant.types.Parameter jndiProperty)
These elements allow you to add properties to the JNDI context. For instance, if you do not want Weblogic clustering to replicate the Hibernate SessionFactory, add a jndiProperty element with a "name" attribute of "weblogic.jndi.replicateBindings" and a "value" attribute of "false".

Parameters:
jndiProperty -

addOtherProperty

public void addOtherProperty(org.apache.tools.ant.types.Parameter otherProperty)
These elements allow you to add arbitrary properties to cfg.xml file. For instance, if you want to provide your own "connection.provider_class" class then add a property called connection.provider_class with a value of whatever you want passed in.

Parameters:
otherProperty - The feature to be added to the OtherProperty attribute

addOtherMapping

public void addOtherMapping(org.apache.tools.ant.types.Parameter otherMapping)
These elements allow you to add arbitrary mappings to cfg.xml file. For instance, if you want to specify that a jar contains /example/myHibernate.hbm.xml file then specify a other mapping with the name="resource" and the value being the path to the mapping.

Parameters:
otherMapping - The feature to be added to the OtherMapping attribute

engineStarted

protected void engineStarted()
                      throws XDocletException
Called when the engine is started

Overrides:
engineStarted in class TemplateSubTask
Throws:
XDocletException - Thrown in case of problem

http://xdoclet.sourceforge.net/