Search in sources :

Example 1 with ClientListener

use of com.hazelcast.client.ClientListener in project hazelcast by hazelcast.

the class Node method initializeListeners.

@SuppressWarnings({ "checkstyle:npathcomplexity", "checkstyle:cyclomaticcomplexity", "checkstyle:methodlength" })
private void initializeListeners(Config config) {
    for (final ListenerConfig listenerCfg : config.getListenerConfigs()) {
        Object listener = listenerCfg.getImplementation();
        if (listener == null) {
            try {
                listener = ClassLoaderUtil.newInstance(configClassLoader, listenerCfg.getClassName());
            } catch (Exception e) {
                logger.severe(e);
            }
        }
        if (listener instanceof HazelcastInstanceAware) {
            ((HazelcastInstanceAware) listener).setHazelcastInstance(hazelcastInstance);
        }
        boolean known = false;
        if (listener instanceof DistributedObjectListener) {
            final ProxyServiceImpl proxyService = (ProxyServiceImpl) nodeEngine.getProxyService();
            proxyService.addProxyListener((DistributedObjectListener) listener);
            known = true;
        }
        if (listener instanceof MembershipListener) {
            clusterService.addMembershipListener((MembershipListener) listener);
            known = true;
        }
        if (listener instanceof MigrationListener) {
            partitionService.addMigrationListener((MigrationListener) listener);
            known = true;
        }
        if (listener instanceof PartitionLostListener) {
            partitionService.addPartitionLostListener((PartitionLostListener) listener);
            known = true;
        }
        if (listener instanceof LifecycleListener) {
            hazelcastInstance.lifecycleService.addLifecycleListener((LifecycleListener) listener);
            known = true;
        }
        if (listener instanceof ClientListener) {
            String serviceName = ClientEngineImpl.SERVICE_NAME;
            nodeEngine.getEventService().registerLocalListener(serviceName, serviceName, listener);
            known = true;
        }
        if (listener instanceof MigrationInterceptor) {
            partitionService.setMigrationInterceptor((MigrationInterceptor) listener);
            known = true;
        }
        if (listener instanceof CPMembershipListener) {
            hazelcastInstance.cpSubsystem.addMembershipListener((CPMembershipListener) listener);
            known = true;
        }
        if (listener instanceof CPGroupAvailabilityListener) {
            hazelcastInstance.cpSubsystem.addGroupAvailabilityListener((CPGroupAvailabilityListener) listener);
            known = true;
        }
        if (nodeExtension.registerListener(listener)) {
            known = true;
        }
        if (listener != null && !known) {
            final String error = "Unknown listener type: " + listener.getClass();
            Throwable t = new IllegalArgumentException(error);
            logger.warning(error, t);
        }
    }
}
Also used : LifecycleListener(com.hazelcast.core.LifecycleListener) HazelcastInstanceAware(com.hazelcast.core.HazelcastInstanceAware) DistributedObjectListener(com.hazelcast.core.DistributedObjectListener) ProxyServiceImpl(com.hazelcast.spi.impl.proxyservice.impl.ProxyServiceImpl) ClientListener(com.hazelcast.client.ClientListener) ListenerConfig(com.hazelcast.config.ListenerConfig) PartitionLostListener(com.hazelcast.partition.PartitionLostListener) CPMembershipListener(com.hazelcast.cp.event.CPMembershipListener) MigrationInterceptor(com.hazelcast.internal.partition.impl.MigrationInterceptor) CPMembershipListener(com.hazelcast.cp.event.CPMembershipListener) MembershipListener(com.hazelcast.cluster.MembershipListener) MigrationListener(com.hazelcast.partition.MigrationListener) CPGroupAvailabilityListener(com.hazelcast.cp.event.CPGroupAvailabilityListener)

Example 2 with ClientListener

use of com.hazelcast.client.ClientListener in project hazelcast by hazelcast.

the class PhoneHomeClientsTest method addClientListener.

private void addClientListener(Node node) {
    ClientService clientService = node.getNodeEngine().getHazelcastInstance().getClientService();
    clientService.addClientListener(new ClientListener() {

        @Override
        public void clientConnected(Client client) {
        }

        @Override
        public void clientDisconnected(Client client) {
            disconnectedClientCount.incrementAndGet();
        }
    });
}
Also used : ClientService(com.hazelcast.client.ClientService) Client(com.hazelcast.client.Client) ClientListener(com.hazelcast.client.ClientListener)

Aggregations

ClientListener (com.hazelcast.client.ClientListener)2 Client (com.hazelcast.client.Client)1 ClientService (com.hazelcast.client.ClientService)1 MembershipListener (com.hazelcast.cluster.MembershipListener)1 ListenerConfig (com.hazelcast.config.ListenerConfig)1 DistributedObjectListener (com.hazelcast.core.DistributedObjectListener)1 HazelcastInstanceAware (com.hazelcast.core.HazelcastInstanceAware)1 LifecycleListener (com.hazelcast.core.LifecycleListener)1 CPGroupAvailabilityListener (com.hazelcast.cp.event.CPGroupAvailabilityListener)1 CPMembershipListener (com.hazelcast.cp.event.CPMembershipListener)1 MigrationInterceptor (com.hazelcast.internal.partition.impl.MigrationInterceptor)1 MigrationListener (com.hazelcast.partition.MigrationListener)1 PartitionLostListener (com.hazelcast.partition.PartitionLostListener)1 ProxyServiceImpl (com.hazelcast.spi.impl.proxyservice.impl.ProxyServiceImpl)1