** Changed in: zeitgeist
     Assignee: Manish Sinha (मनीष सिन्हा) (manishsinha) => (unassigned)

-- 
You received this bug notification because you are a member of Zeitgeist
Framework Team, which is subscribed to Zeitgeist Framework.
https://bugs.launchpad.net/bugs/691167

Title:
  The payload is sometimes mentioned as string and sometimes as array of
  bytes

Status in Zeitgeist Framework:
  In Progress

Bug description:
  In the event serialization format, the third array is array of bytes
  or ay as dbus signature.

  When an event enters an extension, it looks like
  Event([dbus.Array([u'', u'1292500628312', u'', u'', 
u'application://foo.desktop'], signature=dbus.Signature('s')), [Subject([u'', 
u'', u'', u'', u'', u'', u''])], dbus.Array([], signature=dbus.Signature('y'))])

  which implies that payload is array of bytes

  Now look at _zeitgeist/engine/datamodel.py at line 58
  where you get the line
  >> popo.append(str(ev[2]))

  Really so when you do str() on dbus.Array([], signature=dbus.Signature('y'))
  you get "dbus.Array([], signature=dbus.Signature('y'))" instead of the 
contents of bytes converted to string

  Now when you call Event.get_plain on

  Event([dbus.Array([u'', u'1292500628312', u'', u'',
  u'application://foo.desktop'], signature=dbus.Signature('s')),
  [Subject([u'', u'', u'', u'', u'', u'', u''])], dbus.Array([],
  signature=dbus.Signature('y'))])

  you get

  [[u'', u'1292500628312', u'', u'', u'application://foo.desktop'],
  [[u'', u'', u'', u'', u'', u'', u'']], "dbus.Array([],
  signature=dbus.Signature('y'))"]

  Not what you expect

_______________________________________________
Mailing list: https://launchpad.net/~zeitgeist
Post to     : zeitgeist@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zeitgeist
More help   : https://help.launchpad.net/ListHelp

Reply via email to