in maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/unpack/UnpackMojo.java [232:341]
protected String scanModelAndAddGeneratedFiles(ArtifactItem artifactItem)
throws MojoExecutionException
{
ArrayList exclusions = new ArrayList();
Model model = IOUtils.getModelFromArtifact(artifactItem.getArtifact());
if (model != null)
{
for (Iterator it = model.components(); it.hasNext();)
{
ComponentMeta component = (ComponentMeta) it.next();
if (component.getModelId().equals(model.getModelId()))
{
if (component.isGeneratedComponentClass().booleanValue())
{
getLog().info("Adding Generated: "+ component.getClassName());
exclusions.add(StringUtils.replace(
component.getClassName(), ".", "/")
+ ".java");
}
if (component.isGeneratedTagClass().booleanValue())
{
getLog().info("Adding Generated: "+ component.getTagClass());
exclusions.add(StringUtils.replace(component.getTagClass(),
".", "/")
+ ".java");
}
}
}
for (Iterator it = model.converters(); it.hasNext();)
{
ConverterMeta converter = (ConverterMeta) it.next();
if (converter.getModelId().equals(model.getModelId()))
{
if (converter.isGeneratedComponentClass().booleanValue())
{
getLog().info("Adding Generated: "+ converter.getClassName());
exclusions.add(StringUtils.replace(
converter.getClassName(), ".", "/")
+ ".java");
}
if (converter.isGeneratedTagClass().booleanValue())
{
getLog().info("Adding Generated: "+ converter.getTagClass());
exclusions.add(StringUtils.replace(converter.getTagClass(),
".", "/")
+ ".java");
}
}
}
for (Iterator it = model.validators(); it.hasNext();)
{
ValidatorMeta validator = (ValidatorMeta) it.next();
if (validator.getModelId().equals(model.getModelId()))
{
if (validator.isGeneratedComponentClass().booleanValue())
{
getLog().info("Adding Generated: "+ validator.getClassName());
exclusions.add(StringUtils.replace(
validator.getClassName(), ".", "/")
+ ".java");
}
if (validator.isGeneratedTagClass().booleanValue())
{
getLog().info("Adding Generated: "+ validator.getTagClass());
exclusions.add(StringUtils.replace(validator.getTagClass(),
".", "/")
+ ".java");
}
}
}
for (Iterator it = model.behaviors(); it.hasNext();)
{
BehaviorMeta behavior = (BehaviorMeta) it.next();
if (behavior.getModelId().equals(model.getModelId()))
{
if (behavior.isGeneratedComponentClass().booleanValue())
{
getLog().info("Adding Generated: "+ behavior.getClassName());
exclusions.add(StringUtils.replace(
behavior.getClassName(), ".", "/")
+ ".java");
}
}
}
}
else
{
getLog().info("No myfaces-metadata.xml found on artifact.");
}
StringBuffer existingFiles = new StringBuffer();
for (int i = 0; i < exclusions.size(); i++)
{
existingFiles.append(exclusions.get(i));
if (i != exclusions.size() - 1)
{
existingFiles.append(',');
}
}
return existingFiles.toString();
}