Nuxeo Enterprise Platform 5.4

org.nuxeo.runtime.binding
Class ServiceBindings

java.lang.Object
  extended by org.nuxeo.runtime.binding.ServiceBindings
All Implemented Interfaces:
java.util.EventListener, org.osgi.framework.BundleListener

public class ServiceBindings
extends java.lang.Object
implements org.osgi.framework.BundleListener

Binds the Nuxeo bean services using the canonical binding name.

The binding name is of the form: nxservice/interfaceName/remote and nxservice/interfaceName/local

Author:
Bogdan Stefanescu

Field Summary
static Log log
           
 
Constructor Summary
ServiceBindings(org.osgi.framework.BundleContext ctx)
           
ServiceBindings(org.osgi.framework.BundleContext bundleContext, javax.naming.InitialContext jndContext)
           
 
Method Summary
 void bundleChanged(org.osgi.framework.BundleEvent event)
           
static void createAlias(javax.naming.InitialContext ctx, java.lang.String existingName, java.lang.String aliasName)
           
 void createAlias(java.lang.String fromName, java.lang.String aliasName)
           
 void createServiceAliases(java.lang.String itf, java.lang.String impl)
           
 void destroy()
           
 javax.naming.InitialContext getInitialContext()
          Lazily gets the initial context.
 javax.naming.Name getLocalServiceName(java.lang.Class<?> itf)
           
 javax.naming.Name getLocalServiceName(java.lang.String name)
           
 javax.naming.Name getRemoteServiceName(java.lang.Class<?> itf)
           
 javax.naming.Name getRemoteServiceName(java.lang.String name)
           
static void removeAlias(javax.naming.InitialContext context, java.lang.String aliasName)
           
 void removeAlias(java.lang.String aliasName)
           
 void removeServiceAliases(java.lang.String itf, java.lang.String impl)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

public static final Log log
Constructor Detail

ServiceBindings

public ServiceBindings(org.osgi.framework.BundleContext ctx)
                throws javax.naming.NamingException
Throws:
javax.naming.NamingException

ServiceBindings

public ServiceBindings(org.osgi.framework.BundleContext bundleContext,
                       javax.naming.InitialContext jndContext)
Method Detail

getInitialContext

public javax.naming.InitialContext getInitialContext()
                                              throws javax.naming.NamingException
Lazily gets the initial context.

The JNDI service may be started after this one so we need to lazy get the initial context. This can be solved by splitting the runtime in 2: core and server.

Throws:
javax.naming.NamingException

createServiceAliases

public void createServiceAliases(java.lang.String itf,
                                 java.lang.String impl)
                          throws javax.naming.NamingException
Throws:
javax.naming.NamingException

removeServiceAliases

public void removeServiceAliases(java.lang.String itf,
                                 java.lang.String impl)
                          throws javax.naming.NamingException
Throws:
javax.naming.NamingException

createAlias

public void createAlias(java.lang.String fromName,
                        java.lang.String aliasName)
                 throws javax.naming.NamingException
Throws:
javax.naming.NamingException

removeAlias

public void removeAlias(java.lang.String aliasName)
                 throws javax.naming.NamingException
Throws:
javax.naming.NamingException

destroy

public void destroy()

bundleChanged

public void bundleChanged(org.osgi.framework.BundleEvent event)
Specified by:
bundleChanged in interface org.osgi.framework.BundleListener

getLocalServiceName

public javax.naming.Name getLocalServiceName(java.lang.Class<?> itf)

getRemoteServiceName

public javax.naming.Name getRemoteServiceName(java.lang.Class<?> itf)

getLocalServiceName

public javax.naming.Name getLocalServiceName(java.lang.String name)

getRemoteServiceName

public javax.naming.Name getRemoteServiceName(java.lang.String name)

createAlias

public static void createAlias(javax.naming.InitialContext ctx,
                               java.lang.String existingName,
                               java.lang.String aliasName)
                        throws javax.naming.NamingException
Throws:
javax.naming.NamingException

removeAlias

public static void removeAlias(javax.naming.InitialContext context,
                               java.lang.String aliasName)
                        throws javax.naming.NamingException
Throws:
javax.naming.NamingException

Nuxeo Enterprise Platform 5.4

Copyright © 2010 Nuxeo SAS. All Rights Reserved.