java类org.osgi.framework.ServiceEvent的实例源码

WireAdminImpl.java 文件源码 项目:Ptoceti 阅读 17 收藏 0 点赞 0 评论 0
/**
 * 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;
        }
}
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;
    }
}


问题


面经


文章

微信
公众号

扫码关注公众号