refs.add(ref);
}
protected PersistenceContextReferenceMetaData createPC(E element, PersistenceContext annotation)
{
PersistenceContextReferenceMetaData ref = new PersistenceContextReferenceMetaData();
String name = annotation.name();
if(name.length() == 0)
name = ProcessorUtils.getName(element);
ref.setPersistenceContextRefName(name);
if(annotation.unitName().length() > 0)
ref.setPersistenceUnitName(annotation.unitName());
PersistenceContextType type = annotation.type();
ref.setPersistenceContextType(type);
PersistenceProperty[] properties = annotation.properties();
if(properties.length > 0 )
{
PropertiesMetaData refProperties = new PropertiesMetaData();
for(PersistenceProperty p : properties)
{
PropertyMetaData pmd = new PropertyMetaData();
pmd.setName(p.name());
pmd.setValue(p.value());
refProperties.add(pmd);
}
ref.setProperties(refProperties);
}
Set<ResourceInjectionTargetMetaData> injectionTargets = ProcessorUtils.getInjectionTargets(name, element);
if(injectionTargets != null)
ref.setInjectionTargets(injectionTargets);
return ref;
}