## RygelUpdatableObject RygelUpdatableObject — This interface should be implemented by 'updatable' objects - ones that allow modifying their own metadata in some persistent storage. |

## Functions

void | rygel_updatable_object_commit ()
void | rygel_updatable_object_commit_finish ()

## Types and Values

| RygelUpdatableObject
struct | RygelUpdatableObjectIface

## Object Hierarchy

        GInterface
        ╰── RygelUpdatableObject

## Prerequisites

RygelUpdatableObject requires RygelMediaObject.

## Description

## Functions

### rygel_updatable_object_commit ()

    void
    rygel_updatable_object_commit (RygelUpdatableObject *self,
                                   GAsyncReadyCallback _callback_,
                                   gpointer _user_data_);

Commit changes in MediaObject to persistent storage.

This is called after properties are changed. This happens when e.g. UpdateObject was called on this object.

See also: `rygel_updatable_object_commit_finish()`

#### Parameters

self | the RygelUpdatableObject instance |
_callback_ | callback to call when the request is satisfied. | [scope async]
_user_data_ | the data to pass to `_callback_` function. | [closure]

### rygel_updatable_object_commit_finish ()

    void
    rygel_updatable_object_commit_finish (RygelUpdatableObject *self,
                                          GAsyncResult *_res_,
                                          GError **error);

Commit changes in MediaObject to persistent storage.

This is called after properties are changed. This happens when e.g. UpdateObject was called on this object.

See also: `rygel_updatable_object_commit()`

#### Parameters

self | the RygelUpdatableObject instance |
_res_ | a GAsyncResult |
error | location to store the error occuring, or `NULL` to ignore |

## Types and Values

### RygelUpdatableObject

    typedef struct _RygelUpdatableObject RygelUpdatableObject;

This interface should be implemented by 'updatable' objects - ones that allow modifying their own metadata in some persistent storage.

### struct RygelUpdatableObjectIface

    struct RygelUpdatableObjectIface {
    	GTypeInterface parent_iface;
    	void (*commit) (RygelUpdatableObject* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
    	void (*commit_finish) (RygelUpdatableObject* self, GAsyncResult* _res_, GError** error);
    };

Interface for creating RygelUpdatableObject implementations.

#### Members

GTypeInterface `parent_iface`; | the parent interface structure |
`commit` () | virtual method called by `rygel_updatable_object_commit()` |
`commit_finish` () | asynchronous finish function for `commit`, called by `rygel_updatable_object_commit()` |