protected void bind(CompositeContext context) {
   this.compositeContext = context;
   this.registry = compositeContext.getExtensionPointRegistry();
   this.modelFactories = registry.getExtensionPoint(FactoryExtensionPoint.class);
   this.assemblyFactory =
       (RuntimeAssemblyFactory) modelFactories.getFactory(AssemblyFactory.class);
   this.xmlInputFactory = modelFactories.getFactory(XMLInputFactory.class);
   this.xmlOutputFactory = modelFactories.getFactory(XMLOutputFactory.class);
   this.staxProcessors = registry.getExtensionPoint(StAXArtifactProcessorExtensionPoint.class);
   this.staxProcessor = staxProcessors.getProcessor(EndpointReference.class);
   this.builders = registry.getExtensionPoint(BuilderExtensionPoint.class);
   this.proxyFactory = ExtensibleProxyFactory.getInstance(registry);
 }
 private ProxyFactory getProxyFactory(CompositeContext compositeContext) {
   ExtensionPointRegistry extensionPointRegistry = compositeContext.getExtensionPointRegistry();
   return ExtensibleProxyFactory.getInstance(extensionPointRegistry);
 }