in components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/JAXRSServerFactoryBeanDefinitionParser.java [55:87]
protected void mapAttribute(MutableBeanMetadata bean,
Element e, String name,
String val, ParserContext context) {
if ("beanNames".equals(name)) {
String[] values = val.split(" ");
MutableCollectionMetadata tempFactories = context.createMetadata(MutableCollectionMetadata.class);
for (String v : values) {
String theValue = v.trim();
if (!theValue.isEmpty()) {
MutablePassThroughMetadata factory
= context.createMetadata(MutablePassThroughMetadata.class);
factory.setObject(new PassThroughCallable<Object>(new BlueprintResourceFactory(v)));
MutableBeanMetadata resourceBean = context.createMetadata(MutableBeanMetadata.class);
resourceBean.setRuntimeClass(BlueprintResourceFactory.class);
resourceBean.setFactoryComponent(factory);
resourceBean.setFactoryMethod("call");
resourceBean.setInitMethod("init");
tempFactories.addValue(resourceBean);
}
}
bean.addProperty("tempFactories", tempFactories);
} else if ("serviceName".equals(name)) {
QName q = parseQName(e, val);
bean.addProperty(name, createValue(context, q));
} else if ("publish".equals(name)) {
mapToProperty(bean, "start", val, context);
} else {
mapToProperty(bean, name, val, context);
}
}