public class SharedGroupImpl extends Object implements Remote, SharedGroupBackEnd, ServerProxyTrust, ProxyAccessor, Startable
SharedGroup service.
The following items are discussed below:
SharedGroupImpl supports the
following configuration entries, with component
org.apache.river.start:
| • |
activationIdPreparer
| |
|---|---|---|
|   | Type: | ProxyPreparer
|
|   | Default: |
new
|
|   | Description: | The proxy preparer for the service's activation
ID. The value should not be null.
The service starter calls the
activate method to activate the service.
|
| • |
activationSystemPreparer
| |
|---|---|---|
|   | Type: | ProxyPreparer
|
|   | Default: |
new
|
|   | Description: | The proxy preparer for the proxy for the
activation system. The value should not be null. This
entry is obtained at service start and restart.
The service calls the unregisterGroup method on the ActivationSystem upon service destruction.
|
| • |
exporter
| |
|---|---|---|
|   | Type: | Exporter
|
|   | Default: |
new |
|   | Description: | The object to use for exporting the service. The
value should not be null. The call to
getEntry will supply the activation ID in
the data argument. This entry is obtained at service
start and restart.
|
| • |
loginContext
| |
|---|---|---|
|   | Type: | LoginContext
|
|   | Default: | null
|
|   | Description: | If not null, specifies the JAAS
login context to use for performing a JAAS login and supplying the
Subject to use when running the
service. If null, no JAAS login is performed. This
entry is obtained at service start and restart.
|
Logger, named org.apache.river.sharedGroup.
The following table describes the
type of information logged as well as the levels of information logged.
| Level | Description |
|---|---|
FINE | for low level service operation tracing |
FINER | for lower level service operation tracing |
FINEST | for lowest level service operation tracing |
| Modifier and Type | Field and Description |
|---|---|
protected Exporter |
exporter
The exporter for exporting and unexporting
|
| Modifier and Type | Method and Description |
|---|---|
void |
destroyVM()
Cause the hosting VM to exit.
|
Object |
getProxy()
Returns a proxy object for this remote object.
|
TrustVerifier |
getProxyVerifier()
Returns a
TrustVerifier that can be used to verify that
a proxy can be trusted as a proxy for the service; that is, the
isTrustedObject method of the
returned verifier can be called with a candidate proxy. |
void |
start()
Called after construction, this method enables objects to delay
starting threads or exporting until after construction is complete,
to allow safe publication of the service in accordance with the JMM.
|
protected final Exporter exporter
public final void start()
throws ExportException
StartableIn addition to starting threads after construction, it also allows objects to avoid throwing an exception during construction to avoid finalizer attacks.
The implementation is required to ensure start() is idempotent (only executed once, additional invocations must return immediately).
start in interface StartableExportExceptionpublic void destroyVM()
throws RemoteException,
ActivationException
SharedGroupdestroyVM in interface SharedGroupRemoteException - if there was a problem communicating with
the shared group objectActivationException - if there was a problem creating an
activatable shared group instancepublic Object getProxy()
ProxyAccessornull is returned.getProxy in interface ProxyAccessornullpublic TrustVerifier getProxyVerifier()
ServerProxyTrustTrustVerifier that can be used to verify that
a proxy can be trusted as a proxy for the service; that is, the
isTrustedObject method of the
returned verifier can be called with a candidate proxy. The verifier
should be able to verify all proxies for the service, including
proxies for resources (such as leases and registrations).getProxyVerifier in interface ServerProxyTrustTrustVerifier that can be used to verify that
a proxy can be trusted as a proxy for the serviceCopyright 2007-2013, multiple authors.
Licensed under the Apache License, Version 2.0, see the NOTICE file for attributions.