public class RmiRegistrationSupport extends AbstractRegistrationSupport
RmiRegistrationSupport
extends the
AbstractRegistrationSupport
class to register repositories with an
RMI registry whose provider localhost port may be configured.
Note: Currently only registries in this Java VM are supported. In the future support for external registries may be added.
Modifier and Type | Class and Description |
---|---|
static interface |
RmiRegistrationSupport.Configuration |
Modifier and Type | Field and Description |
---|---|
static String |
PROP_REGISTRY_PORT |
registryLock, REPOSITORY_REGISTRATION_NAME
Constructor and Description |
---|
RmiRegistrationSupport() |
Modifier and Type | Method and Description |
---|---|
protected void |
bindLog(org.osgi.service.log.LogService log)
Binds the LogService
|
protected Object |
bindRepository(String name,
javax.jcr.Repository repository)
Called to actually register a repository with the registry.
|
protected boolean |
doActivate()
Read the registry port from the configuration properties.
|
protected void |
doDeactivate()
If a private registry has been acquired this method unexports the
registry object to free the RMI registry OID for later use.
|
protected org.apache.jackrabbit.rmi.server.RemoteAdapterFactory |
getRemoteAdapterFactory()
Returns a Jackrabbit JCR RMI
RemoteAdapterFactory to be
used to publish local (server-side) JCR objects to a remote client. |
protected void |
unbindLog(org.osgi.service.log.LogService log)
Unbinds the LogService
|
protected void |
unbindRepository(String name,
Object data)
Called to actually unregister a repository with the registry.
|
activate, bindRepository, deactivate, getComponentContext, getName, log, unbindRepository
public static final String PROP_REGISTRY_PORT
protected boolean doActivate()
doActivate
in class AbstractRegistrationSupport
true
is returned, activation succeeded and any repositories which have
been bound before the component was activated are now actually
registered. If false
is returned, activation
failed and this component is disabled and receives no further
repository bind and unbound events (apart for unbind events for
repositories which have already been bound).protected void doDeactivate()
doDeactivate
in class AbstractRegistrationSupport
protected Object bindRepository(String name, javax.jcr.Repository repository)
AbstractRegistrationSupport
AbstractRegistrationSupport.activate(ComponentContext)
for any repositories
bound before the component was activated and by
AbstractRegistrationSupport.bindRepository(ServiceReference)
for any repositories bound
after the component was activated.
If actual registration fails, this method is expected to return
null
to indicate this fact. In this case, the
AbstractRegistrationSupport.unbindRepository(String, Object)
will NOT be called for the
named repository.
This method may safely assume that it is only called on or after activation of this component on or before the component deactivation.
bindRepository
in class AbstractRegistrationSupport
name
- The name under which the repository is to be registered.repository
- The javax.jcr.Repository
to register.data
parameter to the AbstractRegistrationSupport.unbindRepository(String, Object)
method
to unregister the repository of the given name. This may be
null
if actual registration failed.protected void unbindRepository(String name, Object data)
AbstractRegistrationSupport
AbstractRegistrationSupport.unbindRepository(ServiceReference)
for any
repositories unbound before the component is deactivated and by
AbstractRegistrationSupport.deactivate(ComponentContext)
for any repositories not unbound
before the component is deactivated.
If the AbstractRegistrationSupport.bindRepository(String, Repository)
returned
null
for when the named repository was registered, this
method is not called.
This method may safely assume that it is only called on or after activation of this component on or before the component deactivation.
unbindRepository
in class AbstractRegistrationSupport
name
- The name under which the repository is to be registered.data
- The data object returned by the
AbstractRegistrationSupport.bindRepositoryInternal(String, ServiceReference)
method.protected org.apache.jackrabbit.rmi.server.RemoteAdapterFactory getRemoteAdapterFactory()
RemoteAdapterFactory
to be
used to publish local (server-side) JCR objects to a remote client.
This method returns an instance of the
JackrabbitServerAdapterFactory
class to enable the use of
the Jackrabbit API over RMI. Extensions of this class may overwrite this
method to return a different implementation to provide different JCR
extension API depending on the server implementation.
protected void bindLog(org.osgi.service.log.LogService log)
AbstractRegistrationSupport
bindLog
in class AbstractRegistrationSupport
protected void unbindLog(org.osgi.service.log.LogService log)
AbstractRegistrationSupport
unbindLog
in class AbstractRegistrationSupport
Copyright © 2007–2018 The Apache Software Foundation. All rights reserved.