/**
* Receives notification that a service has had a life cycle change.
*
* We are interested in receiving notification of WireAdminListener services that register
* an unregister to and from the framework. This allows us to build dynamically a list of
* services to which to send WireAdminEvent(s) as they are produces by thi bundle.
*
* @param event The ServiceEvent describing the type of life cycle change.
*/
public void serviceChanged( ServiceEvent event ) {
ServiceReference sr = event.getServiceReference();
switch(event.getType()) {
case ServiceEvent.REGISTERED: {
synchronized( wireAdminEventListeners ){
if( !wireAdminEventListeners.containsKey( sr)) {
wireAdminEventListeners.put( sr,(WireAdminListener) Activator.bc.getService( sr ));
}
}
}
break;
case ServiceEvent.UNREGISTERING: {
synchronized( wireAdminEventListeners ){
if( wireAdminEventListeners.containsKey( sr )) {
Activator.bc.ungetService( sr );
wireAdminEventListeners.remove( sr );
}
}
}
break;
}
}
java类org.osgi.framework.ServiceEvent的实例源码
WireAdminImpl.java 文件源码
项目:Ptoceti
阅读 17
收藏 0
点赞 0
评论 0
Activator.java 文件源码
项目:Ptoceti
阅读 24
收藏 0
点赞 0
评论 0
/**
* Called by the framework for initialisation when the Activator class is
* loaded. The method first get a service reference on the osgi logging
* service, used for logging whithin the bundle.
*
* If the method cannot get a reference to the logging service, a
* NullPointerException is thrown.
*
* @param context
* @throws BundleException
*/
public void start(BundleContext context) throws BundleException {
Activator.bc = context;
// we construct a listener to detect if the log service appear or
// disapear.
String logFilter = "(objectclass=" + logServiceName + ")";
ServiceListener logServiceListener = new LogServiceListener();
try {
bc.addServiceListener(logServiceListener, logFilter);
// in case the service is already registered, we send a REGISTERED
// event to its listener.
ServiceReference srLog = bc.getServiceReference(logServiceName);
if (srLog != null) {
logServiceListener.serviceChanged(new ServiceEvent(ServiceEvent.REGISTERED, srLog));
}
} catch (InvalidSyntaxException e) {
throw new BundleException("Error in filter string while registering LogServiceListener." + e.toString());
}
log(LogService.LOG_INFO, "Starting version " + bc.getBundle().getHeaders().get("Bundle-Version"));
influxDbFactory.start();
}
Activator.java 文件源码
项目:Ptoceti
阅读 28
收藏 0
点赞 0
评论 0
/**
* Unique method of the ServiceListener interface.
*
*/
public void serviceChanged(ServiceEvent event) {
ServiceReference sr = event.getServiceReference();
switch (event.getType()) {
case ServiceEvent.REGISTERED: {
logSer = (LogService) bc.getService(sr);
}
break;
case ServiceEvent.UNREGISTERING: {
logSer = null;
}
break;
}
}
ObixServiceImpl.java 文件源码
项目:Ptoceti
阅读 20
收藏 0
点赞 0
评论 0
public void serviceChanged(ServiceEvent event) {
ServiceReference sr = event.getServiceReference();
switch (event.getType()) {
case ServiceEvent.REGISTERED: {
ObixDataHandler.getInstance().setDataDevice((JdbcDevice) Activator.bc.getService(sr));
Activator.log(LogService.LOG_INFO, "Getting instance of service: " + JdbcDevice.class.getName() + ","
+ Constants.SERVICE_PID + "=" + (String) sr.getProperty(Constants.SERVICE_PID));
startDatabase();
}
break;
case ServiceEvent.UNREGISTERING: {
Activator.log(LogService.LOG_INFO, "Releasing service: " + JdbcDevice.class.getName() + ","
+ Constants.SERVICE_PID + "=" + (String) sr.getProperty(Constants.SERVICE_PID));
// httpService.unregister(obixServletPath);
ObixDataHandler.getInstance().setDataDevice(null);
databaseInitialised = false;
}
break;
}
}
ObixServiceImpl.java 文件源码
项目:Ptoceti
阅读 18
收藏 0
点赞 0
评论 0
public void serviceChanged(ServiceEvent event) {
ServiceReference sr = event.getServiceReference();
switch (event.getType()) {
case ServiceEvent.REGISTERED: {
ObixTimeSeriesHandler.getInstance().setTimeSeriesService(
(TimeSeriesService) Activator.bc.getService(sr));
Activator.log(LogService.LOG_INFO, "Getting instance of service: " + TimeSeriesService.class.getName()
+ "," + Constants.SERVICE_PID + "=" + (String) sr.getProperty(Constants.SERVICE_PID));
}
break;
case ServiceEvent.UNREGISTERING: {
Activator.log(LogService.LOG_INFO, "Releasing service: " + TimeSeriesService.class.getName() + ","
+ Constants.SERVICE_PID + "=" + (String) sr.getProperty(Constants.SERVICE_PID));
// httpService.unregister(obixServletPath);
ObixTimeSeriesHandler.getInstance().setTimeSeriesService(null);
}
break;
}
}
Activator.java 文件源码
项目:Ptoceti
阅读 21
收藏 0
点赞 0
评论 0
/**
* Unique method of the ServiceListener interface.
*
* @param event the service event
*
*/
public void serviceChanged( final ServiceEvent event ) {
ServiceReference sr = event.getServiceReference();
switch(event.getType()) {
case ServiceEvent.REGISTERED: {
logSer = (LogService) bc.getService(sr);
registerService();
}
break;
case ServiceEvent.UNREGISTERING: {
logSer = null;
}
break;
}
}
MqttClientWrapper.java 文件源码
项目:Ptoceti
阅读 19
收藏 0
点赞 0
评论 0
@Override
public void serviceChanged(ServiceEvent event) {
ServiceReference sr = event.getServiceReference();
switch(event.getType()) {
case ServiceEvent.REGISTERED: {
mqttMessageFormatter = (IMqttMessageFomatter) Activator.bc.getService(sr);
Activator.log( LogService.LOG_INFO, "Getting instance of service: " + (String) sr.getProperty( Constants.SERVICE_PID)
+ ", " + Constants.SERVICE_ID + "=" + ((Long)sr.getProperty(Constants.SERVICE_ID)).toString() );
start();
}
break;
case ServiceEvent.UNREGISTERING: {
Activator.log( LogService.LOG_INFO, "Releasing instance of service: " + (String) sr.getProperty( Constants.SERVICE_PID)
+ ", " + Constants.SERVICE_ID + "=" + ((Long)sr.getProperty(Constants.SERVICE_ID)).toString());
mqttMessageFormatter = null;
stop();
}
break;
}
}
Activator.java 文件源码
项目:Ptoceti
阅读 26
收藏 0
点赞 0
评论 0
/**
* Unique method of the ServiceListener interface.
*
*/
public void serviceChanged( ServiceEvent event ) {
ServiceReference sr = event.getServiceReference();
switch(event.getType()) {
case ServiceEvent.REGISTERED: {
logSer = (LogService) bc.getService(sr);
if( getDataSourceFactory() != null && logSer != null ){
registerService();
}
}
break;
case ServiceEvent.UNREGISTERING: {
logSer = null;
}
break;
}
}
Activator.java 文件源码
项目:Ptoceti
阅读 33
收藏 0
点赞 0
评论 0
@Override
public void serviceChanged(ServiceEvent event) {
ServiceReference sr = event.getServiceReference();
switch(event.getType()) {
case ServiceEvent.REGISTERED: {
dataSourceFactory = ((DataSourceFactory) bc.getService(sr));
if( getDataSourceFactory() != null && logSer != null ){
dataSourceDriverName = (String)sr.getProperty(DataSourceFactory.OSGI_JDBC_DRIVER_CLASS);
registerService();
}
}
break;
case ServiceEvent.UNREGISTERING: {
dataSourceFactory = null;
dataSourceDriverName = null;
}
break;
}
}
OnmsOSGiBridgeActivator.java 文件源码
项目:opennmszh
阅读 18
收藏 0
点赞 0
评论 0
@Override
public void serviceChanged(final ServiceEvent serviceEvent) {
switch(serviceEvent.getType()) {
case ServiceEvent.REGISTERED:
registerWithOnmsRegistry(serviceEvent.getServiceReference());
break;
case ServiceEvent.MODIFIED:
registerWithOnmsRegistry(serviceEvent.getServiceReference());
break;
case ServiceEvent.MODIFIED_ENDMATCH:
unregisterWithOnmsRegistry(serviceEvent.getServiceReference());
break;
case ServiceEvent.UNREGISTERING:
unregisterWithOnmsRegistry(serviceEvent.getServiceReference());
break;
}
}