public void init() throws Exception { if (this.nmr == null) { throw new IllegalArgumentException("nmr must be set"); } if (this.bundleContext == null) { throw new IllegalArgumentException("bundleContext must be set"); } this.registry = new RegistryWrapper(nmr.getEndpointRegistry(), bundleContext); }
public NMRConduitOutputStream(Message m, NMR nmr, EndpointReferenceType target, NMRConduit conduit) { message = m; this.channel = nmr.createChannel(); this.conduit = conduit; this.target = target; }
public WireRegistry getWireRegistry() { return nmr.getWireRegistry(); }
public String getId() { return nmr.getId(); } }
public ListenerRegistry getListenerRegistry() { return nmr.getListenerRegistry(); }
public FlowRegistry getFlowRegistry() { return nmr.getFlowRegistry(); }
public void deactivate() { nmr.getEndpointRegistry().unregister(this, properties); }
public Channel createChannel() { return nmr.createChannel(); }
public ServiceEndpoint resolveEndpointReference(DocumentFragment epr) { for (ComponentWrapper component : componentRegistry.getServices()) { ServiceEndpoint se = component.getComponent().resolveEndpointReference(epr); if (se != null) { Map<String, ?> target = componentRegistry.getProperties(component); componentRegistry.getNmr().getWireRegistry().register( ServiceHelper.createWire( ServiceHelper.createMap(Endpoint.ENDPOINT_NAME, se.getEndpointName(), Endpoint.SERVICE_NAME, se.getServiceName().toString()), ServiceHelper.createMap(ComponentRegistry.NAME, target.get(ComponentRegistry.NAME).toString(), ComponentRegistry.TYPE, target.get(ComponentRegistry.TYPE).toString()) ) ); return se; } } ServiceEndpoint se = resolveInternalEPR(epr); if (se != null) { return se; } return resolveStandardEPR(epr); }
public void activate() { nmr.getEndpointRegistry().register(this, properties); }
public ClientComponentContext(ComponentRegistryImpl componentRegistry) { super(componentRegistry); this.dc = new ClientDeliveryChannel(this, componentRegistry.getNmr().createChannel()); }
public ServiceEndpoint getEndpoint(QName serviceName, String endpointName) { Map<String, Object> props = new HashMap<String, Object>(); props.put(Endpoint.SERVICE_NAME, serviceName.toString()); props.put(Endpoint.ENDPOINT_NAME, endpointName); props.put(INTERNAL_ENDPOINT, Boolean.TRUE.toString()); List<Endpoint> endpoints = getNmr().getEndpointRegistry().query(props); if (endpoints.isEmpty()) { return null; } Map<String, ?> p = getNmr().getEndpointRegistry().getProperties(endpoints.get(0)); return new ServiceEndpointImpl(p); }
public Object getObject() throws Exception { if (reference == null) { Map<String, Object> props = new HashMap<String, Object>(); if (name != null) { props.put(Endpoint.NAME, name); } if (itf != null) { props.put(Endpoint.INTERFACE_NAME, itf.toString()); } if (service != null) { props.put(Endpoint.SERVICE_NAME, service.toString()); if (endpoint != null) { props.put(Endpoint.ENDPOINT_NAME, endpoint); } } reference = nmr.getEndpointRegistry().lookup(props); } return reference; }
protected List<Endpoint> doQueryEndpoints(Map<String, Object> props, boolean external) { if (props == null) { props = new HashMap<String, Object>(); } props.put(external ? EXTERNAL_ENDPOINT : INTERNAL_ENDPOINT, Boolean.TRUE.toString()); List<Endpoint> endpoints = getNmr().getEndpointRegistry().query(props); return endpoints; }
protected Object doExecute() throws Exception { System.out.println("Endpoints"); System.out.println("---------"); ServiceReference reference = getBundleContext().getServiceReference(NMR.class.getName()); if (reference != null) { NMR nmr = (NMR)getBundleContext().getService(reference); if (nmr != null) { Set<Endpoint> endpoints = nmr.getEndpointRegistry().getServices(); for (Endpoint endpoint : endpoints) { String name = (String)nmr.getEndpointRegistry().getProperties(endpoint).get(Endpoint.NAME); System.out.println(name); } } } System.out.println(); return null; } }
public ComponentContextImpl(ComponentRegistryImpl componentRegistry, ComponentWrapper component, Map<String,?> properties) { super(componentRegistry); this.component = component; this.properties = properties; this.queue = new ArrayBlockingQueue<Exchange>(DEFAULT_QUEUE_CAPACITY); this.componentEndpoint = new EndpointImpl(properties); this.componentEndpoint.setQueue(queue); this.componentRegistry.getNmr().getEndpointRegistry().register(componentEndpoint, properties); this.dc = new DeliveryChannelImpl(this, componentEndpoint.getChannel(), queue); this.name = (String) properties.get(ComponentRegistry.NAME); this.workspaceRoot = new File(System.getProperty("karaf.base"), System.getProperty("jbi.cache", "data/jbi/") + name + "/workspace"); this.workspaceRoot.mkdirs(); this.installRoot = new File(System.getProperty("karaf.base"), System.getProperty("jbi.cache", "data/jbi/") + name + "/install"); this.installRoot.mkdirs(); }
public void destroy() { try { dc.close(); } catch (MessagingException e) { logger.warn("Error when closing the delivery channel", e); } componentRegistry.getNmr().getEndpointRegistry().unregister(componentEndpoint, properties); }
public void deregisterExternalEndpoint(ServiceEndpoint externalEndpoint) throws JBIException { List<Endpoint> eps = doQueryEndpoints(ServiceHelper.createMap(Endpoint.SERVICE_NAME, externalEndpoint.getServiceName().toString(), Endpoint.ENDPOINT_NAME, externalEndpoint.getEndpointName()), true); if (eps != null && eps.size() == 1) { Endpoint ep = eps.get(0); componentRegistry.getNmr().getEndpointRegistry().unregister(ep, null); } }
public synchronized void deactivateEndpoint(ServiceEndpoint endpoint) throws JBIException { List<Endpoint> eps = doQueryEndpoints(ServiceHelper.createMap(Endpoint.SERVICE_NAME, endpoint.getServiceName().toString(), Endpoint.ENDPOINT_NAME, endpoint.getEndpointName()), false); if (eps != null && eps.size() == 1) { Endpoint ep = eps.get(0); componentRegistry.getNmr().getEndpointRegistry().unregister(ep, null); } }
public static void createTarget(NMR nmr, Exchange exchange) { if (exchange.getTarget() == null) { Map<String, Object> props = new HashMap<String, Object>(); ServiceEndpoint ep = MessageExchangeImpl.getEndpoint(exchange); if (ep != null) { props.put(Endpoint.SERVICE_NAME, ep.getServiceName().toString()); props.put(Endpoint.ENDPOINT_NAME, ep.getEndpointName()); } else { QName serviceName = MessageExchangeImpl.getService(exchange); if (serviceName != null) { props.put(Endpoint.SERVICE_NAME, serviceName.toString()); } else { QName interfaceName = MessageExchangeImpl.getInterfaceName(exchange); if (interfaceName != null) { props.put(Endpoint.INTERFACE_NAME, interfaceName.toString()); } } } if (props.isEmpty()) { throw new IllegalStateException("No endpoint, service or interface name specified for routing"); } Reference target = nmr.getEndpointRegistry().lookup(props); exchange.setTarget(target); } } }