### Method

# RB RhythmDB entry_request_extra_metadata

#### Declaration [src]

    GValue*
    rhythmdb_entry_request_extra_metadata (
      RhythmDB* db,
      RhythmDBEntry* entry,
      const gchar* property_name
    )

#### Description [src]

Emits a request for extra metadata for the `entry`. The `property_name` argument is emitted as the ::detail part of the “entry_extra_metadata_request” signal. It should be a namespaced RDF predicate e.g. from Dublin Core, MusicBrainz, or internal to Rhythmbox (namespace “rb:”). Suitable predicates would be those that are expensive to acquire or only apply to a limited range of entries. Handlers capable of providing a particular predicate may ensure they only see appropriate requests by supplying an appropriate ::detail part when connecting to the signal. Upon a handler returning a non-`NULL` value, emission will be stopped and the value returned to the caller; if no handlers return a non-`NULL` value, the caller will receive `NULL`. Priority is determined by signal connection order, with `G_CONNECT_AFTER` providing a second, lower rank of priority. A handler returning a value should do so in a `GValue` allocated on the heap; the accumulator will take ownership. The caller should unset and free the `GValue` if non-`NULL` when finished with it.

#### Parameters

`entry`

  Type: `RhythmDBEntry`

  A `RhythmDBEntry`.

  The data is owned by the caller of the method.

`property_name`

  Type: `const gchar*`

  The metadata predicate.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

#### Return value

Type: `GValue`

An allocated, initialised, set `GValue`, or NULL.

The caller of the method takes ownership of the returned data, and is responsible for freeing it.