#639 closed todo (done)

how to search/query for objects

Reported by: Ichthyostega Owned by: Ichthyostega
Priority: normal Milestone: 0integration
Component: lumieraSteam Keywords: interfaces design session
Sub Tickets: #339, #641 Parent Tickets: #319, #632, #640, #644

Description

define a top-level entry point for retrieving specific objects from the session. Later this may/will be unified with the ConfigQuery and the DefaultsManager

Change history (8)

comment:1 by Ichthyostega, at 2010-06-15T02:38:21Z

Status: newaccepted

Starting to collect thoughts and informations regarding this topic....

  • first off -- yes indeed, thats something needing clarification, it isn't settled yet
  • currently we've gotten three different kinds of queries: config, default, discovery.
  • the intention is to unify them eventually, but this isn't going to happen soon
  • this problem here relates mostly to discovery queries
  • but later, the general config queries will too allow to pose such discovery requests
  • discovery queries happen on the QueryFocus and alternatively on the dedicated query functions ("Track::getClips()") of the session API
  • here, we're indeed lacking a variant of the query() function allowing to pick specific objects found during the discovery.

See the following pages in the TiddlyWiki:

comment:2 by Ichthyostega, at 2010-06-15T02:45:18Z

So, more specifically, the question is:

  • shall we implement a kind of additional filtering on the query()-function, beyond just the filtering by type (which is already in place)?
  • is such a filtering easy to use in practice? (read: how to code up the required closure/functor when issuing an actual query?)
  • doesn't this interfere with the more generic "config queries" (which are only planned by now)?
  • how could an equivalent "config query" implemented in practice? (read: how to implement the respective predicates by Proc functionality?)

comment:3 by Ichthyostega, at 2010-06-16T02:30:35Z

blocking: 319, 632319, 632, 640

comment:4 by Ichthyostega, at 2010-06-17T02:09:52Z

blockedby: 339339, 641

comment:5 by Ichthyostega, at 2010-06-20T01:58:55Z

blocking: 319, 632, 640319, 632, 640, 644

comment:6 by Ichthyostega, at 2010-06-20T03:27:27Z

Priority: gravenormal

Coded up and basically done now (with the exception of the question regarding the general "config query".... thats future work).

Implemented a filtering mechanism with client-provided predicate (functor) and defined a session interface to invoke it. Usage passes compiler, but can't test it yet because of the missing QueryFocus implementation (see #310 )

comment:7 by Ichthyostega, at 2010-10-17T04:33:27Z

Resolution: done
Status: acceptedclosed

Meanwhile QueryFocus is fully implemented and working...

Defined a SessionElementQuery_test just to be sure this fetch-element-from-session works as expected

comment:8 by Undercover Agent, at 2025-12-25T00:00:00Z

blockedby: 339, 641
blocking: 319, 632, 640, 644
Parent Tickets: 319, 632, 640, 644
Sub Tickets: 339, 641

Migration MasterTickets ⟼ Subtickets-plugin

Note: See TracTickets for help on using tickets.