public Object parse(Element element, Parse parse, Parser parser) {
ObjectDescriptor objectDescriptor = new ObjectDescriptor(DeployerManager.class);
ListDescriptor listDescriptor = (ListDescriptor) listBinding.parse(element, parse, parser);
WireDefinition wireDefinition = parse.contextStackFind(WireDefinition.class);
String descriptorName = wireDefinition.getDescriptorName(DeployerManager.class);
if (descriptorName==null) {
// merge the new deployment managers with the existing ones
objectDescriptor = new ObjectDescriptor(DeployerManager.class);
objectDescriptor.addInjection("deployers", listDescriptor);
} else {
// merge the new deployment managers with the existing ones
objectDescriptor = (ObjectDescriptor) wireDefinition.getDescriptor(descriptorName);
FieldOperation injection = (FieldOperation) objectDescriptor.getOperations().get(0);
ListDescriptor existingDescriptor = (ListDescriptor) injection.getDescriptor();
List<Descriptor> valueDescriptors = existingDescriptor.getValueDescriptors();
valueDescriptors.addAll(listDescriptor.getValueDescriptors());
}