## GUPnPServiceInfo GUPnPServiceInfo — Base abstract class for querying service information. |

## Functions

void | (*GUPnPServiceIntrospectionCallback) ()
GUPnPContext * | gupnp_service_info_get_context ()
const char * | gupnp_service_info_get_location ()
const SoupURI * | gupnp_service_info_get_url_base ()
const char * | gupnp_service_info_get_udn ()
const char * | gupnp_service_info_get_service_type ()
char * | gupnp_service_info_get_id ()
char * | gupnp_service_info_get_scpd_url ()
char * | gupnp_service_info_get_control_url ()
char * | gupnp_service_info_get_event_subscription_url ()
void | gupnp_service_info_get_introspection_async ()
void | gupnp_service_info_get_introspection_async_full ()

## Types and Values

| GUPnPServiceInfo

## Description

The GUPnPDeviceInfo base abstract class provides methods for querying service information.

## Functions

### GUPnPServiceIntrospectionCallback ()

    void
    (*GUPnPServiceIntrospectionCallback) (GUPnPServiceInfo *info,
                                          GUPnPServiceIntrospection *introspection,
                                          const GError *error,
                                          gpointer user_data);

Callback notifying that `introspection` for `info` has been obtained.

#### Parameters

info | The GUPnPServiceInfo introspection was requested for |
introspection | The new GUPnPServiceIntrospection object, or NULL. | [nullable]
error | The GError that occurred, or NULL. | [nullable]
user_data | User data |

### gupnp_service_info_get_context ()

    GUPnPContext *
    gupnp_service_info_get_context (GUPnPServiceInfo *info);

Get the GUPnPContext associated with `info` .

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A GUPnPContext.

[transfer none]

### gupnp_service_info_get_location ()

    const char *
    gupnp_service_info_get_location (GUPnPServiceInfo *info);

Get the location of the device description file.

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A constant string.

### gupnp_service_info_get_url_base ()

    const SoupURI *
    gupnp_service_info_get_url_base (GUPnPServiceInfo *info);

Get the URL base of this service.

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A constant SoupURI.

### gupnp_service_info_get_udn ()

    const char *
    gupnp_service_info_get_udn (GUPnPServiceInfo *info);

Get the Unique Device Name of the containing device.

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A constant string.

### gupnp_service_info_get_service_type ()

    const char *
    gupnp_service_info_get_service_type (GUPnPServiceInfo *info);

Get the UPnP service type, or `NULL`.

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A constant string.

### gupnp_service_info_get_id ()

    char *
    gupnp_service_info_get_id (GUPnPServiceInfo *info);

Get the ID of this service, or `NULL` if there is no ID.

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A string. This string should be freed with `g_free()` after use.

### gupnp_service_info_get_scpd_url ()

    char *
    gupnp_service_info_get_scpd_url (GUPnPServiceInfo *info);

Get the SCPD URL for this service, or `NULL` if there is no SCPD.

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A string. This string should be freed with `g_free()` after use.

### gupnp_service_info_get_control_url ()

    char *
    gupnp_service_info_get_control_url (GUPnPServiceInfo *info);

Get the control URL for this service, or `NULL`..

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A string. This string should be freed with `g_free()` after use.

### gupnp_service_info_get_event_subscription_url ()

    char *
    gupnp_service_info_get_event_subscription_url
                                   (GUPnPServiceInfo *info);

Get the event subscription URL for this service, or `NULL`.

#### Parameters

info | A GUPnPServiceInfo |

#### Returns

A string. This string should be freed with `g_free()` after use.

### gupnp_service_info_get_introspection_async ()

    void
    gupnp_service_info_get_introspection_async
                                   (GUPnPServiceInfo *info,
                                    GUPnPServiceIntrospectionCallback callback,
                                    gpointer user_data);

Note that introspection object is created from the information in service description document (SCPD) provided by the service so it can not be created if the service does not provide a SCPD.

#### Parameters

info | A GUPnPServiceInfo |
callback | (scope async) : callback to be called when introspection object is ready. |
user_data | user_data to be passed to the callback. |

### gupnp_service_info_get_introspection_async_full ()

    void
    gupnp_service_info_get_introspection_async_full
                                   (GUPnPServiceInfo *info,
                                    GUPnPServiceIntrospectionCallback callback,
                                    GCancellable *cancellable,
                                    gpointer user_data);

Note that introspection object is created from the information in service description document (SCPD) provided by the service so it can not be created if the service does not provide a SCPD.

If `cancellable` is used to cancel the call, `callback` will be called with error code `G_IO_ERROR_CANCELLED`.

#### Parameters

info | A GUPnPServiceInfo |
callback | (scope async) : callback to be called when introspection object is ready. |
cancellable | GCancellable that can be used to cancel the call, or `NULL`. |
user_data | user_data to be passed to the callback. |

Since: 0.20.9

## Types and Values

### GUPnPServiceInfo

    typedef struct _GUPnPServiceInfo GUPnPServiceInfo;