in plugins/org.apache.geronimo.j2ee.v11.jaxbmodel/src/main/java/org/apache/geronimo/j2ee/jaxbmodel/operations/MarshallerListener.java [33:61]
public void beforeMarshal(Object source) {
if (source instanceof SecurityType) {
SecurityType security = (SecurityType)source;
if (security.getRoleMappings() != null && security.getRoleMappings().getRole().size() == 0) {
security.setRoleMappings(null);
}
} else if (source instanceof WebAppType) {
WebAppType webapp = (WebAppType)source;
GbeanLocatorType gbeanlocator = webapp.getWebContainer();
if (gbeanlocator != null && isEmpty(gbeanlocator.getGbeanLink()) && isEmpty(gbeanlocator.getPattern())) {
webapp.setWebContainer(null);
}
} else if (source instanceof OpenejbJarType) {
OpenejbJarType openejb = (OpenejbJarType)source;
ResourceLocatorType locator = openejb.getCmpConnectionFactory();
if (locator != null && isEmpty(locator.getResourceLink()) && isEmpty(locator.getUrl()) && isEmpty(locator.getPattern())) {
openejb.setCmpConnectionFactory(null);
}
RelationshipsType relationships = openejb.getRelationships();
if (relationships != null && relationships.getEjbRelation().size() == 0) {
openejb.setRelationships(null);
}
}else if (source instanceof EjbRelationshipRoleType) {
EjbRelationshipRoleType role = (EjbRelationshipRoleType)source;
if (role.getRoleMapping() != null && role.getRoleMapping().getCmrFieldMapping().size() == 0) {
role.setRoleMapping(null);
}
}
}