## dmap-connection dmap-connection |

## Functions

DMAPContentCode | (*get_protocol_version_cc) ()
gchar * | (*get_query_metadata) ()
DMAPRecord * | (*handle_mlcl) ()
void | (*connected) ()
void | (*disconnected) ()
char * | (*authenticate) ()
void | (*connecting) ()
void | (*operation_done) ()
gboolean | (*DMAPConnectionCallback) ()
void | (*DMAPResponseHandler) ()
gboolean | dmap_connection_is_connected ()
void | dmap_connection_setup ()
void | dmap_connection_connect ()
void | dmap_connection_disconnect ()
SoupMessageHeaders * | dmap_connection_get_headers ()
GSList * | dmap_connection_get_playlists ()
SoupMessage * | dmap_connection_build_message ()
void | dmap_connection_authenticate_message ()
gboolean | dmap_connection_get ()

## Types and Values

enum | DMAPConnectionState

## Object Hierarchy

        GEnum
        ╰── DMAPConnectionState

## Description

## Functions

### get_protocol_version_cc ()

    DMAPContentCode
    (*get_protocol_version_cc) (DMAPConnection *connection);

#### Returns

### get_query_metadata ()

    gchar *
    (*get_query_metadata) (DMAPConnection *connection);

#### Returns

### handle_mlcl ()

    DMAPRecord *
    (*handle_mlcl) (DMAPConnection *connection,
                    DMAPRecordFactory *factory,
                    GNode *mlcl,
                    gint *item_id);

#### Returns

### connected ()

    void
    (*connected) (DMAPConnection *connection);

### disconnected ()

    void
    (*disconnected) (DMAPConnection *connection);

### authenticate ()

    char *
    (*authenticate) (DMAPConnection *connection,
                     const char *name);

#### Returns

### connecting ()

    void
    (*connecting) (DMAPConnection *connection,
                   DMAPConnectionState state,
                   float progress);

### operation_done ()

    void
    (*operation_done) (DMAPConnection *connection);

### DMAPConnectionCallback ()

    gboolean
    (*DMAPConnectionCallback) (DMAPConnection *connection,
                               gboolean result,
                               const char *reason,
                               gpointer user_data);

#### Returns

### DMAPResponseHandler ()

    void
    (*DMAPResponseHandler) (DMAPConnection *connection,
                            guint status,
                            GNode *structure,
                            gpointer user_data);

### dmap_connection_is_connected ()

    gboolean
    dmap_connection_is_connected (DMAPConnection *connection);

#### Returns

### dmap_connection_setup ()

    void
    dmap_connection_setup (DMAPConnection *connection);

### dmap_connection_connect ()

    void
    dmap_connection_connect (DMAPConnection *connection,
                             DMAPConnectionCallback callback,
                             gpointer user_data);

### dmap_connection_disconnect ()

    void
    dmap_connection_disconnect (DMAPConnection *connection,
                                DMAPConnectionCallback callback,
                                gpointer user_data);

### dmap_connection_get_headers ()

    SoupMessageHeaders *
    dmap_connection_get_headers (DMAPConnection *connection,
                                 const char *uri);

#### Returns

### dmap_connection_get_playlists ()

    GSList *
    dmap_connection_get_playlists (DMAPConnection *connection);

#### Returns

### dmap_connection_build_message ()

    SoupMessage *
    dmap_connection_build_message (DMAPConnection *connection,
                                   const gchar *path,
                                   gboolean need_hash,
                                   gdouble version,
                                   gint req_id,
                                   gboolean send_close);

#### Returns

### dmap_connection_authenticate_message ()

    void
    dmap_connection_authenticate_message (DMAPConnection *connection,
                                          SoupSession *session,
                                          SoupMessage *message,
                                          SoupAuth *auth,
                                          const char *password);

Attach an authentication credential to a request. This method should be called by a function that is connected to the “authenticate” signal. The signal will provide the connection, session, message and auth to that function. That function should obtain a password and provide it to this method.

#### Parameters

connection | A DMAPConnection |
session | A SoupSession |
message | A SoupMessage |
auth | A SoupAuth |
password | A password |

### dmap_connection_get ()

    gboolean
    dmap_connection_get (DMAPConnection *self,
                         const gchar *path,
                         gboolean need_hash,
                         DMAPResponseHandler handler,
                         gpointer user_data);

#### Returns

## Types and Values

### enum DMAPConnectionState

#### Members

DMAP_GET_INFO |  |
DMAP_LOGIN |  |
DMAP_GET_REVISION_NUMBER |  |
DMAP_GET_DB_INFO |  |
DMAP_GET_SONGS |  |
DMAP_GET_PLAYLISTS |  |
DMAP_GET_PLAYLIST_ENTRIES |  |
DMAP_LOGOUT |  |
DMAP_DONE |  |