summaryrefslogtreecommitdiffstats
path: root/com.gluster.storage.management.server.scripts/src/nodes/Agent.py
diff options
context:
space:
mode:
authorShireesh Anjal <anjalshireesh@gmail.com>2011-03-28 06:58:51 -0700
committerShireesh Anjal <anjalshireesh@gmail.com>2011-03-28 06:58:51 -0700
commitbf531d097bc99db08bda4d1a1dec541c57c7933c (patch)
tree253a3fc82d5bac3755fc7e32f8456879b69b9979 /com.gluster.storage.management.server.scripts/src/nodes/Agent.py
parentb27c5d68d3ffa47c92e0fcd7d0873ac2d6b8fca8 (diff)
Preparing src for migration to github
Diffstat (limited to 'com.gluster.storage.management.server.scripts/src/nodes/Agent.py')
-rw-r--r--com.gluster.storage.management.server.scripts/src/nodes/Agent.py118
1 files changed, 0 insertions, 118 deletions
diff --git a/com.gluster.storage.management.server.scripts/src/nodes/Agent.py b/com.gluster.storage.management.server.scripts/src/nodes/Agent.py
deleted file mode 100644
index 6d867d9e..00000000
--- a/com.gluster.storage.management.server.scripts/src/nodes/Agent.py
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright (C) 2009 Gluster, Inc. <http://www.gluster.com>
-# This file is part of Gluster Storage Platform.
-#
-# Gluster Storage Platform is free software; you can redistribute it
-# and/or modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3 of
-# the License, or (at your option) any later version.
-#
-# Gluster Storage Platform is distributed in the hope that it will be
-# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see
-# <http://www.gnu.org/licenses/>.
-
-import xmpp
-import sys
-import syslog
-
-class Agent:
- def __init__(self, jidString, jidResource, password, proxySettings=None):
- if jidString and jidResource and password:
- self.password = password
- self.proxySettings = proxySettings
- self.jid = xmpp.protocol.JID(jid=jidString)
- self.jid.setResource(jidResource)
- self.xmppClient = xmpp.Client(self.jid.getDomain(), debug=[])
- self.presenceHandler = None
- self.messageHandler = None
- return
- raise ValueError("jid, resource and password should not be empty")
-
- def registerPresenceHandler(self, function):
- self.presenceHandler = function
-
- def registerMessageHandler(self, function):
- self.messageHandler = function
-
- def __defaultMessageHandler(self, connection, event):
- syslog.syslog(syslog.LOG_DEBUG,
- "[Received]: from_jid=%s, type=%s, message=%s, error=%s\n" %
- (event.getFrom(), event.getType(), event.getBody(), event.getError()))
- if self.messageHandler:
- self.messageHandler(connection, event)
- else:
- sys.stderr.write("[Message]: from_jid=%s, type=%s, message=%s, error=%s\n" %
- (event.getFrom(), event.getType(), event.getBody(), event.getError()))
-
- def __defaultPresenceHandler(self, connection, event):
- syslog.syslog(syslog.LOG_DEBUG,
- "[Presence]: from_jid=%s, type=%s, status=%s, error=%s\n" %
- (event.getFrom(), event.getType(), event.getShow(), event.getError()))
- if self.presenceHandler:
- self.presenceHandler(connection, event)
- else:
- sys.stderr.write("[Presence]: from_jid=%s, type=%s, status=%s, error=%s\n" %
- (event.getFrom(), event.getType(), event.getShow(), event.getError()))
-
- def connect(self):
- syslog.syslog("Connecting to server %s\n" % self.jid.getDomain())
- connection = self.xmppClient.connect()
- if not connection:
- syslog.syslog("failed\n")
- if not self.proxySettings:
- return False
- syslog.syslog("Connecting to server %s through proxy server %s, port %s, username %s\n" %
- (self.jid.getDomain(),
- self.proxySettings["host"],
- self.proxySettings["port"],
- self.proxySettings["user"]))
- connection = self.xmppClient.connect(proxy=self.proxySettings)
- if not connection:
- syslog.syslog("failed\n")
- return False
-
- syslog.syslog("Authenticating with username %s\n" % self.jid)
- auth = self.xmppClient.auth(self.jid.getNode(),
- self.password,
- self.jid.getResource())
- if not auth:
- syslog.syslog("failed\n")
- return False
- syslog.syslog("done\n")
- syslog.syslog("connection type is %s. authentication type is %s\n" % (connection, auth))
-
- self.xmppClient.RegisterHandler("presence", self.__defaultPresenceHandler)
- self.xmppClient.RegisterHandler("message", self.__defaultMessageHandler)
-
- self.xmppClient.sendInitPresence()
- return True
-
- def disconnect(self):
- self.xmppClient.disconnect()
-
- def processMessage(self, timeout=1):
- return self.xmppClient.Process(timeout)
- #if not self.xmppClient.isConnected():
- # self.xmppClient.reconnectAndReauth()
-
- def sendMessage(self, jidString, message, messageType="chat"):
- syslog.syslog(syslog.LOG_DEBUG,
- "[send]: from_jid=%s, type=%s, message=%s\n" %
- (jidString, messageType, message))
- self.xmppClient.send(xmpp.protocol.Message(to=jidString,
- body=message,
- typ=messageType))
-
- def getNetworkSocket(self):
- return self.xmppClient.Connection._sock;
-
- def getRoster(self):
- return self.xmppClient.getRoster()
-
- def isConnected(self):
- return self.xmppClient.isConnected()
-##--end of Agent