public abstract class ActorSystemActivator
extends java.lang.Object
implements org.osgi.framework.BundleActivator
This convenience activator is mainly useful for setting up a single ActorSystem
instance and sharing that
with other bundles in the OSGi Framework. If you want to set up multiple systems in the same bundle context, look at
the OsgiActorSystemFactory
instead.
Constructor and Description |
---|
ActorSystemActivator() |
Modifier and Type | Method and Description |
---|---|
void |
addLogServiceListener(org.osgi.framework.BundleContext context,
ActorSystem system)
Adds a LogService Listener that will advertise the ActorSystem on LogService registration and unregistration
|
abstract void |
configure(org.osgi.framework.BundleContext context,
ActorSystem system)
Implement this method to add your own actors to the ActorSystem.
|
com.typesafe.config.Config |
getActorSystemConfiguration(org.osgi.framework.BundleContext context)
Override this method to define a configuration for your
ActorSystem instance. |
java.lang.String |
getActorSystemName(org.osgi.framework.BundleContext context)
By default, the
ActorSystem name will be set to bundle-<bundle id>-ActorSystem . |
void |
registerService(org.osgi.framework.BundleContext context,
ActorSystem system)
Register the actor system in the OSGi service registry.
|
<T> T |
serviceForReference(org.osgi.framework.BundleContext context,
org.osgi.framework.ServiceReference<?> reference)
Convenience method to find a service by its reference.
|
void |
start(org.osgi.framework.BundleContext context)
Sets up a new ActorSystem
|
void |
stop(org.osgi.framework.BundleContext context)
Shuts down the ActorSystem when the bundle is stopped and, if necessary, unregisters a service registration.
|
public abstract void configure(org.osgi.framework.BundleContext context, ActorSystem system)
registerService(BundleContext, ActorSystem)
method from within
this method.
context
- the bundle contextsystem
- the ActorSystem that was created by the activatorpublic void start(org.osgi.framework.BundleContext context)
start
in interface org.osgi.framework.BundleActivator
context
- the BundleContextpublic void addLogServiceListener(org.osgi.framework.BundleContext context, ActorSystem system)
context
- the BundleContextsystem
- the ActorSystem to be advertisedsystem
- (undocumented)public <T> T serviceForReference(org.osgi.framework.BundleContext context, org.osgi.framework.ServiceReference<?> reference)
context
- (undocumented)reference
- (undocumented)public void stop(org.osgi.framework.BundleContext context)
stop
in interface org.osgi.framework.BundleActivator
context
- the BundleContextpublic void registerService(org.osgi.framework.BundleContext context, ActorSystem system)
Only one ActorSystem can be registered at a time, so any previous registration will be unregistered prior to registering the new.
context
- the bundle contextsystem
- the actor systempublic java.lang.String getActorSystemName(org.osgi.framework.BundleContext context)
ActorSystem
name will be set to bundle-<bundle id>-ActorSystem
. Override this
method to define another name for your ActorSystem
instance.
context
- the bundle contextpublic com.typesafe.config.Config getActorSystemConfiguration(org.osgi.framework.BundleContext context)
ActorSystem
instance.
This configuration will be merged with fallback on
the application.conf of your bundle
the reference.conf of the akka bundles
the System properties.
context
- the bundle context