← Back to team overview

zeitgeist team mailing list archive

[Bug 884193] [NEW] Add a way to query only a specific class - and NOT sub classes

 

Public bug reported:

The problem is that nfo:FileDataObject (which we use as manifestation
for all files) has subclasses nfo:RemoteDataObject and
nfo:EmbeddedFileDataObject which we may not be interested in querying
for (at least, we're not in Unity). In Unity we qualify our queries by
restricting them to also have subject prefix "file:*".

Not only does this feel slightly hackish, but it is also slower since
the indexes are used less effectively. I propose adding a new modifier
"+" to the manifestation and interpretation (for both event and subject)
that signifies that the field must be matched exactly, without subtype
expansion.

ie:

  Event.new_for_values (manifestation=FILE_DATA_OBJECT)

matches also remote- and embedded objects, while prepending a "+" forces
the matching to be strict:

  Event.new_for_values (manifestation="+"+FILE_DATA_OBJECT)

** Affects: libzeitgeist
     Importance: Undecided
         Status: New

** Affects: zeitgeist
     Importance: Undecided
         Status: New

** Also affects: zeitgeist
   Importance: Undecided
       Status: New

-- 
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/884193

Title:
  Add a way to query only a specific class - and NOT sub classes

Status in Zeitgeist Client Library:
  New
Status in Zeitgeist Framework:
  New

Bug description:
  The problem is that nfo:FileDataObject (which we use as manifestation
  for all files) has subclasses nfo:RemoteDataObject and
  nfo:EmbeddedFileDataObject which we may not be interested in querying
  for (at least, we're not in Unity). In Unity we qualify our queries by
  restricting them to also have subject prefix "file:*".

  Not only does this feel slightly hackish, but it is also slower since
  the indexes are used less effectively. I propose adding a new modifier
  "+" to the manifestation and interpretation (for both event and
  subject)  that signifies that the field must be matched exactly,
  without subtype expansion.

  ie:

    Event.new_for_values (manifestation=FILE_DATA_OBJECT)

  matches also remote- and embedded objects, while prepending a "+"
  forces the matching to be strict:

    Event.new_for_values (manifestation="+"+FILE_DATA_OBJECT)

To manage notifications about this bug go to:
https://bugs.launchpad.net/libzeitgeist/+bug/884193/+subscriptions


Follow ups

References