Rygel.SearchableContainer – librygel-server Reference Manual

# SearchableContainer

## Object Hierarchy:

## Description:

public interface SearchableContainer : MediaContainer

The base class for searchable containers.

Classes that implement this interface can, for instance:

1. Allow backends to implement a UPnP Search call using native searching (such as SQL or SPARQL queries).
2. Implement searching via the naïve default implementation provided by rygel_searchable_container_simple_search(), which does a recursive tree walk.

The search_classes property lists what information this container may be searched for. It is mapped to upnp:searchClass (with includeDerived assumed to be false),

All known implementing classes:

- SimpleContainer

Namespace: Rygel
Package: librygel-server

## Content:

### Properties:

- public abstract `ArrayList`<`string`> search_classes { set; get; }

### Methods:

- public abstract async MediaObjects? search (SearchExpression? expression, `uint` offset, `uint` max_count, out `uint` total_matches, `string` sort_criteria, `Cancellable`? cancellable) throws `Error`
  Recursively searches for all media objects that satisfy the given search expression in this container.
- public async MediaObjects? simple_search (SearchExpression? expression, `uint` offset, `uint` max_count, out `uint` total_matches, `string` sort_criteria, `Cancellable`? cancellable) throws `Error`
  Utility method that retrieves all children and recursively searches for all media objects that satisfy the given search expression in this container.
- public async MediaObject? find_object (`string` id, `Cancellable`? cancellable) throws `Error`
  Recursively searches for media object with the given id in this container.

### Inherited Members:

All known members inherited from class Rygel.MediaContainer

- ANY
- UPNP_CLASS
- STORAGE_FOLDER
- MUSIC_ALBUM
- MUSIC_ARTIST
- MUSIC_GENRE
- PLAYLIST
- ALBUM_SORT_CRITERIA

- child_count
- empty_child_count
- all_child_count
- create_mode_enabled
- sort_criteria
- ocm_flags
- constructed
- get_children

- find_object
- updated
- serialize
- container_updated
- sub_tree_updates_finished
- update_id
- storage_used
- total_deleted_child_count

All known members inherited from class Rygel.MediaObject

- id
- ref_id
- upnp_class
- date
- creator
- modified
- object_update_id
- artist

- genre
- parent
- parent_ref
- title
- ocm_flags
- get_uris
- get_primary_uri
- add_uri

- constructed
- get_writable
- get_writables
- serialize
- compare_string_props
- compare_int_props
- parent_ptr

All known members inherited from class GLib.Object

- @new
- newv
- new_valist
- get_type
- get_class
- @ref
- unref
- ref_sink
- weak_ref
- weak_unref
- add_weak_pointer
- remove_weak_pointer

- @get
- @set
- get_property
- set_property
- get_data
- set_data
- set_data_full
- steal_data
- get_qdata
- set_qdata
- set_qdata_full
- steal_qdata

- freeze_notify
- thaw_notify
- dispose
- constructed
- notify_property
- connect
- disconnect
- add_toggle_ref
- remove_toggle_ref
- bind_property
- notify
- ref_count