Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
vertigo - simple java starter Copyright (C) 2013, KleeGroup, direction.technique@kleegroup.com (http://www.kleegroup.com) KleeGroup, Centre d'affaire la Boursidiere - BP 159 - 92357 Le Plessis Robinson Cedex - France Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
 
 package io.vertigo.studio.plugins.mda.domain;
 
 
 import java.util.List;
 import java.util.Map;
 
Génération des objets relatifs au module Domain.

Author(s):
pchretien
 
 	private final boolean generateDtResources;
 	private final boolean generateJpaAnnotations;
 	private final boolean generateDtDefinitions;
 	private final boolean generateJsDtDefinitions;
 	private final boolean generateDtObject;
 	private final boolean generateSql;
 	private final boolean generateDrop;
 	private final String baseCible;

Constructeur.

Parameters:
generateDtResources Si on génère les fichiers i18n pour MessageText des labels des champs
generateJpaAnnotations Si on ajoute les annotations JPA
generateDtDefinitions Si on génère le fichier fournissant la liste des classes de Dt
generateDtObject Si on génère les classes des Dt
generateJsDtDefinitions Si on génère les classes JS.
generateSql Si on génére le crebase.sql
generateDrop Si on génère les Drop table dans le fichier SQL
baseCible Type de base de données ciblé.
 
 			@Named("generateDtResources"final boolean generateDtResources,//
 			@Named("generateJpaAnnotations"final boolean generateJpaAnnotations,//
 			@Named("generateDtDefinitions"final boolean generateDtDefinitions//
 			@Named("generateJsDtDefinitions"final boolean generateJsDtDefinitions,//
 			@Named("generateDtObject"final boolean generateDtObject//
 			@Named("generateSql"final boolean generateSql//
 			@Named("generateDrop"final boolean generateDrop//
 			@Named("baseCible"final String baseCible) {
 		// ---------------------------------------------------------------------
 		this. = generateDtResources;
 		this. = generateJpaAnnotations;
 		this. = generateDtDefinitions;
 		this. = generateJsDtDefinitions;
 		this. = generateDtObject;
 		this. = generateSql;
 		this. = generateDrop;
 		this. = baseCible;
 	}

 
 	public DomainConfiguration createConfiguration(final Properties properties) {
 		return new DomainConfiguration(properties);
 	}
 
 	}
 
	}
	}

	public void generate(final DomainConfiguration domainConfigurationfinal Result result) {
		Assertion.checkNotNull(domainConfiguration);
		Assertion.checkNotNull(result);
		// ---------------------------------------------------------------------
		/* Génération des ressources afférentes au DT. */
			generateDtResources(domainConfigurationresult);
		}
		/* Génération de la lgeneratee référençant toutes des définitions. */
			generateDtDefinitions(domainConfigurationresult);
		}
		/* Génération des fichiers javascripts référençant toutes les définitions. */
			generateJsDtDefinitions(domainConfigurationresult);
		}
		/* Générations des DTO. */
			generateDtObjects(domainConfigurationresult);
		}
		if () {
			generateSql(domainConfigurationresult);
		}
	}
	private void generateDtDefinitions(final DomainConfiguration domainConfigurationfinal Result result) {
		final Map<StringObjectmapRoot = new HashMap<>();
		mapRoot.put("packageName"domainConfiguration.getDomainPackage());
		mapRoot.put("classSimpleName"domainConfiguration.getDomainDictionaryClassName());
		mapRoot.put("dtDefinitions"getDtDefinitions());
		final FileGenerator super2java = getFileGenerator(domainConfigurationmapRootdomainConfiguration.getDomainDictionaryClassName(), domainConfiguration.getDomainPackage(), ".java""dtdefinitions.ftl");
		super2java.generateFile(resulttrue);
	}
	private void generateJsDtDefinitions(final DomainConfiguration domainConfigurationfinal Result result) {
		final List<TemplateDtDefinitiondtDefinitions = new ArrayList<>();
		for (final DtDefinition dtDefinition : getDtDefinitions()) {
			dtDefinitions.add(new TemplateDtDefinition(dtDefinition));
		}
		final Map<StringObjectmapRoot = new HashMap<>();
		mapRoot.put("packageName"domainConfiguration.getDomainPackage());
		mapRoot.put("classSimpleName"domainConfiguration.getDomainDictionaryClassName());
		mapRoot.put("dtDefinitions"dtDefinitions);
		final FileGenerator super2java = getFileGenerator(domainConfigurationmapRootdomainConfiguration.getDomainDictionaryClassName(), domainConfiguration.getDomainPackage(), ".js""js.ftl");
		super2java.generateFile(resulttrue);
	}
	private void generateDtObjects(final DomainConfiguration domainConfigurationfinal Result result) {
		for (final DtDefinition dtDefinition : getDtDefinitions()) {
			generateDtObject(domainConfigurationresultdtDefinition);
		}
	}
	private void generateDtObject(final DomainConfiguration domainConfigurationfinal Result resultfinal DtDefinition dtDefinition) {
		final TemplateDtDefinition definition = new TemplateDtDefinition(dtDefinition);
		final Map<StringObjectmapRoot = new HashMap<>();
		mapRoot.put("dtDefinition"definition);
		final FileGenerator super2java = getFileGenerator(domainConfigurationmapRootdefinition.getClassSimpleName(), definition.getPackageName(), //
				".java""dto.ftl");
		super2java.generateFile(resulttrue);
	}
	private void generateDtResources(final DomainConfiguration domainConfigurationfinal Result result) {
		final String simpleClassName = "DtResources";
Génération des ressources afférentes au DT.
			final Collection<DtDefinitiondtDefinitionCollection = entry.getValue();
			Assertion.checkNotNull(dtDefinitionCollection);
			final String packageName = entry.getKey();
			if (domainConfiguration.isResourcesFileGenerated()) {
				final Map<StringObjectmapRoot = new HashMap<>();
				mapRoot.put("packageName"packageName);
				mapRoot.put("simpleClassName"simpleClassName);
				mapRoot.put("dtDefinitions"dtDefinitionCollection);
				final FileGenerator dtDefinitions2ResourceEnum = getFileGenerator(domainConfigurationmapRootsimpleClassNamepackageName".java""resources.ftl");
				dtDefinitions2ResourceEnum.generateFile(resulttrue);
				final FileGenerator dtDefinitions2ResourceProperties = getFileGenerator(domainConfigurationmapRootsimpleClassNamepackageName".properties""properties.ftl");
				dtDefinitions2ResourceProperties.generateFile(resulttrue);
			}
		}
	}
	private void generateSql(final DomainConfiguration domainConfigurationfinal Result result) {
			final TemplateDtDefinition templateDef = new TemplateDtDefinition(dtDefinition);
			list.add(templateDef);
		}
		final Map<StringObjectmapRoot = new HashMap<>();
		mapRoot.put("sql"new TemplateMethodSql());
		mapRoot.put("dtDefinitions"list);
		mapRoot.put("associations"getAssociations());
		mapRoot.put("drop");
		mapRoot.put("basecible"); // Ne sert actuellement à rien, le sql généré étant le même. Prévu pour le futur
		mapRoot.put("truncateNames" == "Oracle"); // Oracle limite le nom des entités (index) à 30 charactères. Il faut alors tronquer les noms composés.
		final FileGenerator super2java = getFileGenerator(domainConfigurationmapRoot"crebas""sqlgen"".sql""sql.ftl");
		super2java.generateFile(resulttrue);
	}

trie de la collection.

Parameters:
definitionCollection collection à trier
Returns:
collection triée
	private static Collection<DtDefinitionsortDefinitionCollection(final Collection<DtDefinitiondefinitionCollection) {
		final List<DtDefinitionlist = new ArrayList<>(definitionCollection);
		java.util.Collections.sort(listnew Comparator<DtDefinition>() {
			public int compare(final DtDefinition definition1final DtDefinition definition2) {
				return definition1.getClassCanonicalName().compareTo(definition2.getClassCanonicalName());
			}
			public boolean equals(final Object obj) {
			}
			public int hashCode() {
			}
		});
		return list;
	}

Parameters:
definitionCollection collection à traiter
Returns:
map ayant le package name en clef
	private static Map<StringCollection<DtDefinition>> getDefinitionCollectionMap(final Collection<DtDefinitiondefinitionCollection) {
		final Map<StringCollection<DtDefinition>> map = new LinkedHashMap<>();
		for (final DtDefinition definition : definitionCollection) {
			Collection<DtDefinitiondtDefinitions = map.get(definition.getPackageName());
			if (dtDefinitions == null) {
				dtDefinitions = new ArrayList<>();
				map.put(definition.getPackageName(), dtDefinitions);
			}
			dtDefinitions.add(definition);
		}
		return map;
	}
	private static Collection<DtDefinitionsortAbsoluteDefinitionCollection(final Collection<DtDefinitiondefinitionCollection) {
		final List<DtDefinitionlist = new ArrayList<>(definitionCollection);
		java.util.Collections.sort(listnew Comparator<DtDefinition>() {
			public int compare(final DtDefinition definition1final DtDefinition definition2) {
				return definition1.getClassSimpleName().compareTo(definition2.getClassSimpleName());
			}
			public boolean equals(final Object obj) {
			}
			public int hashCode() {
			}
		});
		return list;
	}
		final List<AssociationDefinitionlist = new ArrayList<>(associationCollection);
		java.util.Collections.sort(listnew Comparator<AssociationDefinition>() {
			public int compare(final AssociationDefinition definition1final AssociationDefinition definition2) {
				return definition1.getName().compareTo(definition2.getName());
			}
			public boolean equals(final Object obj) {
			}
			public int hashCode() {
			}
		});
		return list;
	}
New to GrepCode? Check out our FAQ X