if (resourceType.equals(ContextService.class.getName()) ||
resourceType.equals(ManagedThreadFactory.class.getName()) ||
resourceType.equals(ManagedExecutorService.class.getName()) ||
resourceType.equals(ManagedScheduledExecutorService.class.getName())) {
ResourceEnvRefType resourceEnvRef = null;
ResourceEnvRefType[] ResourceEnvRefs = annotatedApp.getResourceEnvRefArray();
for (ResourceEnvRefType resourceEnvRefType : ResourceEnvRefs) {
if (resourceEnvRefType.getResourceEnvRefName().getStringValue().trim().equals(resourceName)) {
resourceEnvRef = resourceEnvRefType;
break;
}
}
if (resourceEnvRef == null) {
resourceEnvRef = annotatedApp.addNewResourceEnvRef();
// resource-env-ref-name
JndiNameType resourceEnvRefName = resourceEnvRef.addNewResourceEnvRefName();
resourceEnvRefName.setStringValue(resourceName);
resourceEnvRef.setResourceEnvRefName(resourceEnvRefName);
}
// resource-env-ref-type
if (!resourceEnvRef.isSetResourceEnvRefType() && !resourceType.equals("")) {
FullyQualifiedClassType qualifiedClass = resourceEnvRef.addNewResourceEnvRefType();
qualifiedClass.setStringValue(resourceType);
resourceEnvRef.setResourceEnvRefType(qualifiedClass);
}
// description
if ((resourceEnvRef.getDescriptionArray() == null ||
resourceEnvRef.getDescriptionArray().length == 0) &&
annotation.description().trim().length() > 0) {
DescriptionType description = resourceEnvRef.addNewDescription();
String descriptionAnnotation = annotation.description();
description.setStringValue(descriptionAnnotation);
}
// mapped-name
if (!resourceEnvRef.isSetMappedName() && annotation.mappedName().trim().length() > 0) {
XsdStringType mappedName = resourceEnvRef.addNewMappedName();
mappedName.setStringValue(annotation.mappedName().trim());
resourceEnvRef.setMappedName(mappedName);
}
// injection target
if (method != null || field != null) {
InjectionTargetType[] targets = resourceEnvRef.getInjectionTargetArray();
if (!hasTarget(method, field, targets)) {
configureInjectionTarget(resourceEnvRef.addNewInjectionTarget(), method, field);
}
}
// automatically map to default services
if (annotation.name().trim().length() == 0 && !refMap.containsKey(resourceName)) {