/** * Register a listener for configuration events. This listener * will get called whenever the node's configuration changes. * * @param listener The handler for the event */ public void addConfigurationListener(NodeConfigListener listener) { StanzaListener conListener = new NodeConfigTranslator(listener); configEventToListenerMap.put(listener, conListener); con.addSyncStanzaListener(conListener, new EventContentFilter(EventElementType.configuration.toString())); }
/** * Unregister a listener for configuration events. * * @param listener The handler to unregister */ public void removeConfigurationListener(NodeConfigListener listener) { StanzaListener conListener = configEventToListenerMap .remove(listener); if (conListener != null) con.removeSyncStanzaListener(conListener); }
public void testConfigureAndNotify() throws Exception { // Setup event source String nodeId = "TestNode" + System.currentTimeMillis(); PubSubManager creatorMgr = new PubSubManager(getConnection(0), getService()); LeafNode creatorNode = getPubnode(creatorMgr, nodeId, false, true); BlockingQueue<NodeConfigCoordinator> queue = new ArrayBlockingQueue<NodeConfigCoordinator>(3); // Setup event receiver PubSubManager subMgr = new PubSubManager(getConnection(1), getService()); LeafNode subNode = (LeafNode)subMgr.getNode(nodeId); NodeConfigListener sub1Handler = new NodeConfigCoordinator(queue, "sub1"); subNode.subscribe(getConnection(1).getUser()); subNode.addConfigurationListener(sub1Handler); ConfigureForm currentConfig = creatorNode.getNodeConfiguration(); ConfigureForm form = new ConfigureForm(currentConfig.createAnswerForm()); form.setPersistentItems(true); form.setDeliverPayloads(false); form.setNotifyConfig(true); creatorNode.sendConfigurationForm(form); ConfigurationEvent event = queue.poll(5, TimeUnit.SECONDS).event; assertEquals(nodeId, event.getNode()); assertNull(event.getConfiguration()); currentConfig = creatorNode.getNodeConfiguration(); form = new ConfigureForm(currentConfig.createAnswerForm()); form.setDeliverPayloads(true); creatorNode.sendConfigurationForm(form); event = queue.poll(5, TimeUnit.SECONDS).event; assertEquals(nodeId, event.getNode()); assertNotNull(event.getConfiguration()); assertTrue(event.getConfiguration().isPersistItems()); assertTrue(event.getConfiguration().isDeliverPayloads()); }
/** * Register a listener for configuration events. This listener * will get called whenever the node's configuration changes. * * @param listener The handler for the event */ public void addConfigurationListener(NodeConfigListener listener) { PacketListener conListener = new NodeConfigTranslator(listener); configEventToListenerMap.put(listener, conListener); con.addPacketListener(conListener, new EventContentFilter(EventElementType.configuration.toString())); }
/** * Unregister a listener for configuration events. * * @param listener The handler to unregister */ public void removeConfigurationListener(NodeConfigListener listener) { PacketListener conListener = configEventToListenerMap .remove(listener); if (conListener != null) con.removePacketListener(conListener); }
/** * Unregister a listener for configuration events. * * @param listener * The handler to unregister */ public void removeConfigurationListener(NodeConfigListener listener) { PacketListener conListener = configEventToListenerMap.remove(listener); if (conListener != null) con.removePacketListener(conListener); }
public NodeConfigTranslator(NodeConfigListener eventListener) { listener = eventListener; }
/** * Register a listener for configuration events. This listener will get * called whenever the node's configuration changes. * * @param listener * The handler for the event */ public void addConfigurationListener(NodeConfigListener listener) { PacketListener conListener = new NodeConfigTranslator(listener); configEventToListenerMap.put(listener, conListener); con.addPacketListener(conListener, new EventContentFilter( EventElementType.configuration.toString())); }