reset_xmpp_pubsub_nodes.py will remove all nodes and re-create for all
authorBarış Metin <Talip-Baris.Metin@sophia.inria.fr>
Fri, 12 Mar 2010 16:55:40 +0000 (16:55 +0000)
committerBarış Metin <Talip-Baris.Metin@sophia.inria.fr>
Fri, 12 Mar 2010 16:55:40 +0000 (16:55 +0000)
slices and nodes attached to the slices.

omf/omf_slicemgr.py
omf/reset_xmpp_pubsub_nodes.py [new file with mode: 0644]

index 2f2dc13..3ad62c7 100644 (file)
@@ -108,7 +108,6 @@ class PubSubClient(BaseClient):
     def __init__(self, id, secret, verbose = False, log = None):
         BaseClient.__init__(self, id, secret, verbose = verbose, log = log)
         self.hooks = {}
-        self.requests = {}
     
     def add_result_hook(self, hook_to, hook):
         self.hooks[hook_to] = hook
@@ -119,6 +118,7 @@ class PubSubClient(BaseClient):
 
     def event_authenticated(self, xs):
         BaseClient.event_authenticated(self, xs)
+        self.requests = {}
         xs.addObserver("/iq/pubsub/create", self.result_create_node)
         xs.addObserver("/iq/pubsub/delete", self.result_delete_node)
         xs.addObserver("/iq/query[@xmlns='http://jabber.org/protocol/disco#items']", self.result_discover)
diff --git a/omf/reset_xmpp_pubsub_nodes.py b/omf/reset_xmpp_pubsub_nodes.py
new file mode 100644 (file)
index 0000000..1fe359c
--- /dev/null
@@ -0,0 +1,41 @@
+#!/usr/bin/env /usr/bin/plcsh
+
+import sys
+import xmlrpclib
+sys.path.append("/usr/bin/")
+from omf_slicemgr import *
+
+xmlrpc = xmlrpclib.ServerProxy("http://localhost:5053")
+
+xmppserver = config.PLC_OMF_XMPP_SERVER
+xmppuser = "@".join([config.PLC_OMF_XMPP_USER, xmppserver])
+xmpppass = config.PLC_OMF_XMPP_PASSWORD
+pubsub = PubSubClient(xmppuser, xmpppass, verbose=True)
+
+
+def delete_all_nodes(iq):
+    global pubsub
+    print "called"
+    for i in iq.query.elements():
+        node = i['node']
+        reactor.callLater(1, pubsub.delete_node, node)
+
+if __name__ == "__main__":
+    pubsub.add_result_hook("discover", delete_all_nodes)
+    reactor.callLater(1, pubsub.discover)
+    reactor.callLater(2, pubsub.create_node, "/OMF")
+    reactor.callLater(2, pubsub.create_node, "/SYSTEM")
+
+    reactor.callLater(4, reactor.stop)
+    reactor.connectTCP(pubsub.id.host, 5222, pubsub.factory)
+    reactor.run()
+
+    slices = GetSlices()
+    for slice in slices:
+        xmlrpc.createSlice(slice['name'])
+        for node_id in slice['node_ids']:
+            node = GetNodes(node_id)[0]['hostname']
+            xmlrpc.addResource(slice['name'], node)
+            
+
+