ref.setTarget(ad.getStringValue("target", null)); ref.setCardinality(ReferenceCardinality.valueOf(ad.getEnumValue("cardinality", ReferenceCardinality.MANDATORY_UNARY.name()))); ref.setPolicy(ReferencePolicy.valueOf(ad.getEnumValue("policy", ReferencePolicy.STATIC.name()))); ref.setPolicyOption(ReferencePolicyOption.valueOf(ad.getEnumValue("policyOption", ReferencePolicyOption.RELUCTANT.name()))); ref.setStrategy(ReferenceStrategy.valueOf(ad.getEnumValue("strategy", ReferenceStrategy.EVENT.name())));
if ( policy != null ) { try { ref.setPolicy(ReferencePolicy.valueOf(policy.toUpperCase())); } catch (final IllegalArgumentException iae) { iLog.addWarning("Invalid value for attribute policy : " + policy, this.location);
IOUtils.addAttribute(ai, INTERFACE_ATTR_NAME, reference.getInterfaceName()); IOUtils.addAttribute(ai, ATTR_CARDINALITY, reference.getCardinality().getCardinalityString()); IOUtils.addAttribute(ai, REFERENCE_ATTR_POLICY, reference.getPolicy().name().toLowerCase()); IOUtils.addAttribute(ai, REFERENCE_ATTR_TARGET, reference.getTarget()); IOUtils.addAttribute(ai, REFERENCE_ATTR_BIND, reference.getBind());