final String defaultElementNamespaceURI = analyzer
.getMostUsedElementNamespaceURI(packageInfo);
final String defaultAttributeNamespaceURI = analyzer
.getMostUsedAttributeNamespaceURI(packageInfo);
PackageMapping packageMapping = packageMappings.get(packageName);
if (packageMapping == null) {
packageMapping = new PackageMapping();
packageMapping.setPackageName(packageName);
packageMappings.put(packageName, packageMapping);
}
if (StringUtils.isBlank(packageMapping
.getDefaultElementNamespaceURI())) {
packageMapping
.setDefaultElementNamespaceURI(defaultElementNamespaceURI);
}
if (StringUtils.isBlank(packageMapping
.getDefaultAttributeNamespaceURI())) {
packageMapping
.setDefaultAttributeNamespaceURI(defaultAttributeNamespaceURI);
}
if (StringUtils.isBlank(packageMapping.getSpaceName())) {
packageMapping.setSpaceName(blankPackage ? "generated"
: packageName.replace('.', '_'));
}
if (packageMapping.getOutputPackageName() == null) {
packageMapping.setOutputPackageName("");
}
if (packageMapping.getDirectory() == null) {
packageMapping.setDirectory((blankPackage ? "" : packageMapping
.getOutputPackageName().replace('.', '/')));
}
if (packageMapping.getFileName() == null) {
packageMapping.setFileName(packageMapping.getSpaceName()
+ ".js");
}
module = new JsonixModule(this.codeModel, packageMapping);