Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorgan Collett <morgan.collett@collabora.co.uk>2007-07-02 11:57:27 (GMT)
committer Morgan Collett <morgan.collett@collabora.co.uk>2007-07-02 11:57:27 (GMT)
commit326aa36a9e8745870e7f09515dd1d897e9e374c9 (patch)
tree75fe23b10d91ceb0c9176e120381ac8736fbeac5
parent2fd702e4272252ea8cc5cced95c4a88af12ce007 (diff)
Fixes for logging
-rw-r--r--activity.py83
1 files changed, 42 insertions, 41 deletions
diff --git a/activity.py b/activity.py
index 3ba6acf..6bcf6bb 100644
--- a/activity.py
+++ b/activity.py
@@ -36,7 +36,6 @@ SERVICE = "org.laptop.HelloMesh"
IFACE = SERVICE
PATH = "/org/laptop/HelloMesh"
-logger = logging.getLogger('hellomesh-activity')
class HelloMeshActivity(Activity):
"""HelloMesh Activity as specified in activity.info"""
@@ -44,6 +43,7 @@ class HelloMeshActivity(Activity):
"""Set up the HelloMesh activity."""
Activity.__init__(self, handle)
self.set_title('HelloMesh Activity')
+ self._logger = logging.getLogger('hellomesh-activity')
# top toolbar with share and close buttons:
toolbox = ActivityToolbox(self)
@@ -73,6 +73,7 @@ class HelloMeshActivity(Activity):
self.tp_conn_name = name
self.tp_conn_path = path
self.conn = telepathy.client.Connection(name, path)
+ self.initiating = None
self.connect('shared', self._shared_cb)
@@ -92,17 +93,18 @@ class HelloMeshActivity(Activity):
self._joined_cb()
def _shared_cb(self, activity):
- logger.debug('My activity was shared')
+ self._logger.debug('My activity was shared')
+ self.initiating = True
self._setup()
for buddy in self._shared_activity.get_joined_buddies():
- logger.debug('Buddy %s is already in the activity' %
+ self._logger.debug('Buddy %s is already in the activity' %
buddy.props.nick)
self._shared_activity.connect('buddy-joined', self._buddy_joined_cb)
self._shared_activity.connect('buddy-left', self._buddy_left_cb)
- logger.debug('This is my activity: making a tube...')
+ self._logger.debug('This is my activity: making a tube...')
id = self.tubes_chan[telepathy.CHANNEL_TYPE_TUBES].OfferTube(
telepathy.TUBE_TYPE_DBUS, SERVICE, {})
@@ -110,7 +112,7 @@ class HelloMeshActivity(Activity):
# with this
def _setup(self):
if self._shared_activity is None:
- logger.error('Failed to share or join activity')
+ self._logger.error('Failed to share or join activity')
return
bus_name, conn_path, channel_paths =\
@@ -124,27 +126,27 @@ class HelloMeshActivity(Activity):
channel = telepathy.client.Channel(bus_name, channel_path)
htype, handle = channel.GetHandle()
if htype == telepathy.HANDLE_TYPE_ROOM:
- logger.debug('Found our room: it has handle#%d "%s"',
+ self._logger.debug('Found our room: it has handle#%d "%s"',
handle, self.conn.InspectHandles(htype, [handle])[0])
room = handle
ctype = channel.GetChannelType()
if ctype == telepathy.CHANNEL_TYPE_TUBES:
- logger.debug('Found our Tubes channel at %s', channel_path)
+ self._logger.debug('Found our Tubes channel at %s', channel_path)
tubes_chan = channel
elif ctype == telepathy.CHANNEL_TYPE_TEXT:
- logger.debug('Found our Text channel at %s', channel_path)
+ self._logger.debug('Found our Text channel at %s', channel_path)
text_chan = channel
if room is None:
- logger.error("Presence service didn't create a room")
+ self._logger.error("Presence service didn't create a room")
return
if text_chan is None:
- logger.error("Presence service didn't create a text channel")
+ self._logger.error("Presence service didn't create a text channel")
return
# Make sure we have a Tubes channel - PS doesn't yet provide one
if tubes_chan is None:
- logger.debug("Didn't find our Tubes channel, requesting one...")
+ self._logger.debug("Didn't find our Tubes channel, requesting one...")
tubes_chan = self.conn.request_channel(telepathy.CHANNEL_TYPE_TUBES,
telepathy.HANDLE_TYPE_ROOM, room, True)
@@ -159,7 +161,7 @@ class HelloMeshActivity(Activity):
self._new_tube_cb(*tube_info)
def _list_tubes_error_cb(self, e):
- logger.error('ListTubes() failed: %s', e)
+ self._logger.error('ListTubes() failed: %s', e)
def _joined_cb(self, activity):
if not self._shared_activity:
@@ -167,18 +169,19 @@ class HelloMeshActivity(Activity):
# Find out who's already in the shared activity:
for buddy in self._shared_activity.get_joined_buddies():
- logger.debug('Buddy %s is already in the activity' % buddy.props.nick)
+ self._logger.debug('Buddy %s is already in the activity' % buddy.props.nick)
- logger.debug('Joined an existing shared activity')
+ self._logger.debug('Joined an existing shared activity')
+ self.initiating = False
self._setup()
- logger.debug('This is not my activity: waiting for a tube...')
+ self._logger.debug('This is not my activity: waiting for a tube...')
self.tubes_chan[telepathy.CHANNEL_TYPE_TUBES].ListTubes(
reply_handler=self._list_tubes_reply_cb,
error_handler=self._list_tubes_error_cb)
def _new_tube_cb(self, id, initiator, type, service, params, state):
- logger.debug('New tube: ID=%d initator=%d type=%d service=%s '
+ self._logger.debug('New tube: ID=%d initator=%d type=%d service=%s '
'params=%r state=%d', id, initiator, type, service,
params, state)
@@ -190,26 +193,26 @@ class HelloMeshActivity(Activity):
tube_conn = TubeConnection(self.conn,
self.tubes_chan[telepathy.CHANNEL_TYPE_TUBES],
id, group_iface=self.text_chan[telepathy.CHANNEL_INTERFACE_GROUP])
- self.hellotube = HelloTube(tube_conn, self._get_buddy)
+ self.hellotube = HelloTube(tube_conn, self.initiating, self._get_buddy)
def _buddy_joined_cb (self, activity, buddy):
- logger.debug('Buddy %s joined' % buddy.props.nick)
+ self._logger.debug('Buddy %s joined' % buddy.props.nick)
def _buddy_left_cb (self, activity, buddy):
- logger.debug('Buddy %s left' % buddy.props.nick)
+ self._logger.debug('Buddy %s left' % buddy.props.nick)
def _get_buddy(self, cs_handle):
"""Get a Buddy from a channel specific handle."""
- logger.debug('Trying to find owner of handle %u...', cs_handle)
+ self._logger.debug('Trying to find owner of handle %u...', cs_handle)
group = self.text_chan[telepathy.CHANNEL_INTERFACE_GROUP]
my_csh = group.GetSelfHandle()
- logger.debug('My handle in that group is %u', my_csh)
+ self._logger.debug('My handle in that group is %u', my_csh)
if my_csh == cs_handle:
handle = self.conn.GetSelfHandle()
- logger.debug('CS handle %u belongs to me, %u', cs_handle, handle)
+ self._logger.debug('CS handle %u belongs to me, %u', cs_handle, handle)
else:
handle = group.GetHandleOwners([cs_handle])[0]
- logger.debug('CS handle %u belongs to %u', cs_handle, handle)
+ self._logger.debug('CS handle %u belongs to %u', cs_handle, handle)
# XXX: deal with failure to get the handle owner
assert handle != 0
@@ -222,58 +225,56 @@ class HelloMeshActivity(Activity):
class HelloTube(ExportedGObject):
"""The bit that talks over the TUBES!!!"""
- def __init__(self, tube, get_buddy):
+ def __init__(self, tube, is_initiator, get_buddy):
self.tube = tube
+ self.is_initiator = is_initiator
self.entered = False # Have we set up the tube?
self.helloworld = False # Have we said Hello and received World?
self._get_buddy = get_buddy # Converts handle to Buddy object
self.tube.watch_participants(self.participant_change_cb)
+ self._logger = logging.getLogger('hellomesh-activity.HelloTube')
def participant_change_cb(self, added, removed):
- logger.debug('Adding participants: %r' % added)
- logger.debug('Removing participants: %r' % removed)
+ self._logger.debug('Adding participants: %r' % added)
+ self._logger.debug('Removing participants: %r' % type(removed))
for handle, bus_name in added:
buddy = self._get_buddy(handle)
if buddy is not None:
- logger.debug('Buddy %s was added' % buddy.props.nick)
+ self._logger.debug('Buddy %s was added' % buddy.props.nick)
for handle in removed:
buddy = self._get_buddy(handle)
if buddy is not None:
- logger.debug('Buddy %s was removed' % buddy.props.nick)
+ self._logger.debug('Buddy %s was removed' % buddy.props.nick)
# Do activity logic with new or removed buddies
if not self.entered:
- self.tube.add_signal_receiver(self.insert_cb, 'Insert', IFACE,
- path=PATH, sender_keyword='sender')
+ #self.tube.add_signal_receiver(self.insert_cb, 'Insert', IFACE,
+ # path=PATH, sender_keyword='sender')
if self.is_initiator:
- _logger.debug('I am the initiator, so making myself player 0')
self.add_hello_handler()
- self.ordered_bus_names = [self.tube.get_unique_name()]
- self.player_id = 0
- self.buddies_panel.add_player(self.owner)
else:
- _logger.debug('Hello, everyone! What did I miss?')
+ self._logger.debug('Hello, everyone! What did I miss?')
self.Hello()
self.entered = True
@signal(dbus_interface=IFACE, signature='')
def Hello(self):
"""Say Hello to whoever else is in the tube."""
- _logger.debug('I said Hello.')
+ self._logger.debug('I said Hello.')
@method(dbus_interface=IFACE, in_signature='as', out_signature='')
def World(self, name):
"""To be called on the incoming XO after they Hello."""
if not self.helloworld:
- _logger.debug('%s said World.')
+ self._logger.debug('%s said World.')
# now I can World others
self.add_hello_handler()
#buddy = self._get_buddy(self.tube.bus_name_to_handle[bus_names[0]])
else:
- _logger.debug("I've already been welcomed, doing nothing")
+ self._logger.debug("I've already been welcomed, doing nothing")
def add_hello_handler(self):
self.tube.add_signal_receiver(self.hello_cb, 'Hello', IFACE,
@@ -281,13 +282,13 @@ class HelloTube(ExportedGObject):
def hello_cb(self, sender=None):
"""Somebody Helloed me. World them."""
- _logger.debug('Newcomer %s has joined', sender)
+ self._logger.debug('Newcomer %s has joined', sender)
self.ordered_bus_names.append(sender)
if len(self.ordered_bus_names) == 2:
buddy = self._get_buddy(self.tube.bus_name_to_handle[sender])
self.buddies_panel.add_player(buddy)
- _logger.debug('Bus names are now: %r', self.ordered_bus_names)
- _logger.debug('Welcoming newcomer and sending them the game state')
+ self._logger.debug('Bus names are now: %r', self.ordered_bus_names)
+ self._logger.debug('Welcoming newcomer and sending them the game state')
self.tube.get_object(sender, PATH).World(self.ordered_bus_names,
dbus_interface=IFACE)