* @version $Rev: 770532 $ $Date: 2009-05-01 05:21:18 +0100 (Fri, 01 May 2009) $
*/
public class DataBindingModuleActivator implements ModuleActivator {
public void start(ExtensionPointRegistry registry) {
DataBindingExtensionPoint dataBindings = registry.getExtensionPoint(DataBindingExtensionPoint.class);
TransformerExtensionPoint transformers = registry.getExtensionPoint(TransformerExtensionPoint.class);
XMLAdapterExtensionPoint xmlAdapterExtensionPoint = registry.getExtensionPoint(XMLAdapterExtensionPoint.class);
xmlAdapterExtensionPoint.addAdapter(CallableReference.class, CallableReferenceXMLAdapter.class);
xmlAdapterExtensionPoint.addAdapter(OMElement.class, OMElementXMLAdapter.class);
FaultExceptionMapper faultExceptionMapper = new JAXWSFaultExceptionMapper(dataBindings, xmlAdapterExtensionPoint);
registry.getExtensionPoint(UtilityExtensionPoint.class).addUtility(faultExceptionMapper);
Mediator mediator = registry.getExtensionPoint(UtilityExtensionPoint.class).getUtility(Mediator.class);
Input2InputTransformer input2InputTransformer = new Input2InputTransformer();
input2InputTransformer.setMediator(mediator);
transformers.addTransformer(input2InputTransformer, true);
Output2OutputTransformer output2OutputTransformer = new Output2OutputTransformer();
output2OutputTransformer.setMediator(mediator);
transformers.addTransformer(output2OutputTransformer, true);
Exception2ExceptionTransformer exception2ExceptionTransformer = new Exception2ExceptionTransformer(mediator, faultExceptionMapper);
transformers.addTransformer(exception2ExceptionTransformer, false);
Array2ArrayTransformer array2ArrayTransformer = new Array2ArrayTransformer();
array2ArrayTransformer.setMediator(mediator);
transformers.addTransformer(array2ArrayTransformer, true);
Group2GroupTransformer group2GroupTransformer = new Group2GroupTransformer();
group2GroupTransformer.setMediator(mediator);
transformers.addTransformer(group2GroupTransformer, true);
dataBindings.addDataBinding(new CallableReferenceDataBinding());
transformers.addTransformer(new CallableReference2XMLStreamReader(), true);
transformers.addTransformer(new XMLStreamReader2CallableReference(), false);
ModelFactoryExtensionPoint modelFactories = registry.getExtensionPoint(ModelFactoryExtensionPoint.class);
JavaInterfaceFactory javaFactory = modelFactories.getFactory(JavaInterfaceFactory.class);