| Method from org.hibernate.tool.hbm2x.DocExporter Detail: |
public void doStart() throws ExporterException {
generateCommmonAndAssets();
boolean graphsGenerated = generateDot();
generateTablesIndex();
generateTablesSummary(graphsGenerated);
generateTablesDetails();
generateTablesAllSchemasList();
generateTablesAllTablesList();
generateTablesSchemaTableList();
generateTablesSchemaDetailedInfo();
generateEntitiesIndex();
generatePackageSummary(graphsGenerated);
generateEntitiesDetails();
generateEntitiesAllPackagesList();
generateEntitiesAllEntitiesList();
generateEntitiesPackageEntityList();
generateEntitiesPackageDetailedInfo();
}
|
public void generateCommmonAndAssets() {
try {
DocFile cssStylesDocFile = docFileManager.getCssStylesDocFile();
processTemplate(Collections.EMPTY_MAP, FILE_CSS_DEFINITION, cssStylesDocFile.getFile());
DocFile hibernateLogoDocFile = docFileManager.getHibernateImageDocFile();
DocFileManager.copy(this.getClass().getClassLoader(), FILE_HIBERNATE_IMAGE,
hibernateLogoDocFile.getFile() );
DocFile extendsImageDocFile = docFileManager.getExtendsImageDocFile();
DocFileManager.copy(this.getClass().getClassLoader(), FILE_EXTENDS_IMAGE, extendsImageDocFile.getFile());
DocFile mainIndexDocFile = docFileManager.getMainIndexDocFile();
processTemplate(Collections.EMPTY_MAP, FILE_INDEX, mainIndexDocFile.getFile() );
}
catch (IOException ioe) {
throw new RuntimeException("Error while copying files.", ioe);
}
}
Generate common files and copy assets. |
public void generateEntitiesAllEntitiesList() {
DocFile docFile = docFileManager.getAllEntitiesDocFile();
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
parameters.put("classList", docHelper.getClasses());
processTemplate(parameters, FTL_ENTITIES_ENTITY_LIST, file);
}
Generates the html file containing list of classes (allclases.html) |
public void generateEntitiesAllPackagesList() {
DocFile docFile = docFileManager.getAllPackagesDocFile();
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
List list = docHelper.getPackages();
//Remove All Classes
list.remove(0);
parameters.put("packageList", list );
processTemplate(parameters, FTL_ENTITIES_PACKAGE_LIST, file);
}
Generates the html file containig list of packages (allpackages.html) |
public void generateEntitiesDetails() {
Iterator classes = docHelper.getClasses().iterator();
while(classes.hasNext()){
POJOClass pcObj = (POJOClass)classes.next();
pcObj.getPropertiesForMinimalConstructor();
DocFile docFile = docFileManager.getEntityDocFile(pcObj);
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
parameters.put("class", pcObj);
processTemplate(parameters, FTL_ENTITIES_ENTITY, file);
}
}
generates one html file for each class containing detail information of class |
public void generateEntitiesIndex() {
DocFile docFile = docFileManager.getClassIndexDocFile();
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
processTemplate(parameters, FTL_ENTITIES_INDEX, file );
}
Generate the index file of the class documentation |
public void generateEntitiesPackageDetailedInfo() {
List packageList = docHelper.getPackages();
packageList.remove(0);
Iterator packages = packageList.iterator();
while (packages.hasNext() ) {
String packageName = (String) packages.next();
DocFile summaryDocFile = docFileManager.getPackageSummaryDocFile(packageName);
Map parameters = new HashMap();
parameters.put("docFile", summaryDocFile);
parameters.put("package", packageName);
parameters.put("classList", docHelper.getClasses(packageName));
processTemplate(parameters, FTL_ENTITIES_PACKAGE_SUMMARY,
summaryDocFile.getFile() );
}
}
Generates the html file containing list of classes and interfaces for given package |
public void generateEntitiesPackageEntityList() {
Iterator packages = docHelper.getPackages().iterator();
while (packages.hasNext() ) {
String packageName = (String) packages.next();
if(!packageName.equals(DocHelper.DEFAULT_NO_PACKAGE)){
DocFile docFile = docFileManager.getPackageEntityListDocFile(packageName);
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
parameters.put("title", packageName);
parameters.put("classList", docHelper.getClasses(packageName));
processTemplate(parameters, FTL_ENTITIES_PERPACKAGE_ENTITY_LIST, file);
}
}
}
generates the list of classes sepcific to package |
public void generatePackageSummary(boolean graphsGenerated) {
DocFile docFile = docFileManager.getClassSummaryFile();
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
List list = docHelper.getPackages();
//Remove All Classes
list.remove(0);
parameters.put("packageList", list );
parameters.put( "graphsGenerated", Boolean.valueOf( graphsGenerated ) );
if(graphsGenerated) {
StringBuffer sb = new StringBuffer();
String fileName = "entities/entitygraph.cmap";
appendFile( sb, fileName );
parameters.put( "entitygrapharea", sb );
}
processTemplate(parameters, FTL_ENTITIES_SUMMARY, file);
}
Generate summary (summaty.html) to show all the packages |
public void generateTablesAllSchemasList() {
DocFile docFile = docFileManager.getAllSchemasDocFile();
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
parameters.put("schemaList", docHelper.getSchemas() );
processTemplate(parameters, FTL_TABLES_SCHEMA_LIST, file);
}
Generate a file with a list of all the schemas in the configuration. |
public void generateTablesAllTablesList() {
DocFile docFile = docFileManager.getAllTablesDocFile();
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
parameters.put("tableList", docHelper.getTables() );
processTemplate(parameters, FTL_TABLES_TABLE_LIST, file);
}
Generate a file with a list of all the tables in the configuration. |
public void generateTablesDetails() {
Iterator tables = getConfiguration().getTableMappings();
while (tables.hasNext() ) {
Table table = (Table) tables.next();
DocFile docFile = docFileManager.getTableDocFile(table);
if(docFile!=null) {
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
parameters.put("table", table);
processTemplate(parameters, FTL_TABLES_TABLE, file);
}
}
}
Generate one file per table with detail information. |
public void generateTablesIndex() {
DocFile docFile = docFileManager.getTableIndexDocFile();
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
processTemplate(parameters, FTL_TABLES_INDEX, file);
}
Generate the index file of the table documentation. |
public void generateTablesSchemaDetailedInfo() {
Iterator schemas = docHelper.getSchemas().iterator();
while (schemas.hasNext() ) {
String schemaName = (String) schemas.next();
DocFile summaryDocFile = docFileManager.getSchemaSummaryDocFile(schemaName);
Map parameters = new HashMap();
parameters.put("docFile", summaryDocFile);
parameters.put("schema", schemaName);
processTemplate(parameters, FTL_TABLES_SCHEMA_SUMMARY,
summaryDocFile.getFile() );
DocFile tableListDocFile = docFileManager.getSchemaSummaryDocFile(schemaName);
parameters = new HashMap();
parameters.put("docFile", tableListDocFile);
parameters.put("schema", schemaName);
processTemplate(parameters, FTL_TABLES_SCHEMA_SUMMARY,
tableListDocFile.getFile() );
//processTemplate( new HashMap(), templateName, outputFile );
}
}
Generate two files per schema. One with a summary of the tables in the
schema and another one with a list of tables. |
public void generateTablesSchemaTableList() {
Iterator schemas = docHelper.getSchemas().iterator();
while (schemas.hasNext() ) {
String schemaName = (String) schemas.next();
DocFile docFile = docFileManager.getSchemaTableListDocFile(schemaName);
File file = docFile.getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
parameters.put("title", schemaName);
parameters.put("tableList", docHelper.getTables(schemaName) );
processTemplate(parameters, FTL_TABLES_PERSCHEMA_TABLE_LIST, file);
}
}
|
public void generateTablesSummary(boolean graphsGenerated) {
DocFile docFile = docFileManager.getTableSummaryDocFile();
File file = docFileManager.getTableSummaryDocFile().getFile();
Map parameters = new HashMap();
parameters.put("docFile", docFile);
parameters.put( "graphsGenerated", Boolean.valueOf( graphsGenerated ) );
if(graphsGenerated) {
StringBuffer sb = new StringBuffer();
String fileName = "tables/tablegraph.cmap";
appendFile( sb, fileName );
parameters.put( "tablegrapharea", sb );
}
processTemplate(parameters, FTL_TABLES_SUMMARY, file);
}
Generate a file with an summary of all the tables. |
public String getName() {
return "hbm2doc";
}
|
protected void processTemplate(Map parameters,
String templateName,
File outputFile) {
TemplateProducer producer = new TemplateProducer(getTemplateHelper(), getArtifactCollector() );
producer.produce(parameters, templateName, outputFile, templateName);
}
|
protected void setupContext() {
if(!getProperties().contains( "jdk5" )) {
getProperties().setProperty( "jdk5", "true" );
}
super.setupContext();
docHelper = new DocHelper( getConfiguration(), getCfg2JavaTool() );
docFileManager = new DocFileManager(docHelper, getOutputDirectory() );
getTemplateHelper().putInContext("dochelper", docHelper);
getTemplateHelper().putInContext("docFileManager", docFileManager);
}
|