@Override public Metadata createMetadata(ElementParser handledElementParser) { Map<String, String> attributeValues = handledElementParser.getAttributeValueMap(); if (attributeValues.containsKey("required-pid")) { final String requiredPid = attributeValues.get("required-pid"); final String filter = String.format("(%s=%s)", RequiredConfigurationListener.CONFIGURATION_SERVICE_PROPERTY, requiredPid); MutableReferenceMetadata mutableReferenceMetadata = ReferenceMetadataUtil.create(RequiredPersistentId.class, filter); final String id = attributeValues.containsKey("id") ? attributeValues.get("id") : String.format("%s-%d", getElementName(), serviceReferenceCounter.getAndIncrement()); mutableReferenceMetadata.setId(id); return mutableReferenceMetadata; } else { RequiredConfigurationComponentDefinitionRegistryProcessorMetadata metadata = new RequiredConfigurationComponentDefinitionRegistryProcessorMetadata(); metadata.addProperties(attributeValues, true); return metadata; } } }
private static void registerRefBean(final ParserContext context, final String name, final Class<?> clazz) { ComponentDefinitionRegistry registry = context.getComponentDefinitionRegistry(); if (registry.getComponentDefinition(name) == null) { MutableReferenceMetadata metadata = createServiceRef(context, clazz, null); metadata.setId(name); registry.registerComponentDefinition(metadata); } }
refMetadata.setTimeout(Integer.parseInt(ctx.getDefaultTimeout())); refMetadata.setDependsOn((List<String>) Collections.EMPTY_LIST); refMetadata.setId(ctx.generateId());
private static void registerNotificationServiceRefBean(final ParserContext context) { ComponentDefinitionRegistry registry = context.getComponentDefinitionRegistry(); if (registry.getComponentDefinition(NOTIFICATION_SERVICE_NAME) == null) { MutableReferenceMetadata metadata = createServiceRef(context, NotificationService.class, null); metadata.setId(NOTIFICATION_SERVICE_NAME); registry.registerComponentDefinition(metadata); } }
if (cm == null) { MutableReferenceMetadata svc = context.createMetadata(MutableReferenceMetadata.class); svc.setId(".camelBlueprint.dataformatResolver." + dataformat); svc.setFilter("(dataformat=" + dataformat + ")"); svc.setAvailability(componentDefinitionRegistry.containsComponentDefinition(dataformat) ? AVAILABILITY_OPTIONAL : AVAILABILITY_MANDATORY);
private void registerRpcRegistryServiceRefBean(ParserContext context) { ComponentDefinitionRegistry registry = context.getComponentDefinitionRegistry(); if(registry.getComponentDefinition(RPC_REGISTRY_NAME) == null) { MutableReferenceMetadata metadata = createServiceRef(context, RpcProviderRegistry.class, null); metadata.setId(RPC_REGISTRY_NAME); registry.registerComponentDefinition(metadata); } }
private void registerNotificationServiceRefBean(ParserContext context) { ComponentDefinitionRegistry registry = context.getComponentDefinitionRegistry(); if(registry.getComponentDefinition(NOTIFICATION_SERVICE_NAME) == null) { MutableReferenceMetadata metadata = createServiceRef(context, NotificationService.class, null); metadata.setId(NOTIFICATION_SERVICE_NAME); registry.registerComponentDefinition(metadata); } }
private ComponentMetadata createJPAServiceRef(String unitName, Class<?> iface) { final MutableReferenceMetadata refMeta = pc.createMetadata(MutableReferenceMetadata.class); refMeta.setActivation(getDefaultActivation(pc)); refMeta.setAvailability(ReferenceMetadata.AVAILABILITY_MANDATORY); refMeta.setRuntimeInterface(iface); refMeta.setFilter(String.format("(%s=%s)", JPA_UNIT_NAME, unitName)); refMeta.setTimeout(Integer.parseInt(pc.getDefaultTimeout())); List<String> emptyList = Collections.emptyList(); refMeta.setDependsOn(emptyList); refMeta.setId(getId(unitName, iface)); return refMeta; }
if (cm == null) { MutableReferenceMetadata svc = context.createMetadata(MutableReferenceMetadata.class); svc.setId(".camelBlueprint.componentResolver." + component); svc.setFilter("(component=" + component + ")"); svc.setAvailability(componentDefinitionRegistry.containsComponentDefinition(component) ? AVAILABILITY_OPTIONAL : AVAILABILITY_MANDATORY);
if (cm == null) { MutableReferenceMetadata svc = context.createMetadata(MutableReferenceMetadata.class); svc.setId(".camelBlueprint.languageResolver." + language); svc.setFilter("(language=" + language + ")"); svc.setAvailability(componentDefinitionRegistry.containsComponentDefinition(language) ? AVAILABILITY_OPTIONAL : AVAILABILITY_MANDATORY);
mutableReferenceMetadata.setId(referenceId);
private ComponentMetadata createServiceRef(String id, Class<?> iface) { final MutableReferenceMetadata refMeta = pc.createMetadata(MutableReferenceMetadata.class); refMeta.setActivation(getDefaultActivation(pc)); refMeta.setAvailability(ReferenceMetadata.AVAILABILITY_MANDATORY); refMeta.setRuntimeInterface(iface); refMeta.setTimeout(Integer.parseInt(pc.getDefaultTimeout())); List<String> emptyList = Collections.emptyList(); refMeta.setDependsOn(emptyList); refMeta.setId(id); return refMeta; }