## GDataBatchable GDataBatchable — GData batch service interface |

## Stability Level

Stable, unless otherwise indicated

## Functions

GDataBatchOperation * | gdata_batchable_create_operation ()

## Types and Values

| GDataBatchable
| GDataBatchableIface

## Object Hierarchy

        GInterface
        ╰── GDataBatchable

## Prerequisites

GDataBatchable requires GDataService.

## Known Implementations

GDataBatchable is implemented by GDataCalendarService, GDataContactsService, GDataDocumentsService and GDataYouTubeService.

## Includes

    #include <gdata/gdata-batchable.h>

## Description

GDataBatchable is an interface which can be implemented by GDataServices which support batch operations on their entries. It allows the creation of a GDataBatchOperation for the service, which allows a set of batch operations to be run.

## Functions

### gdata_batchable_create_operation ()

    GDataBatchOperation *
    gdata_batchable_create_operation (GDataBatchable *self,
                                      GDataAuthorizationDomain *domain,
                                      const gchar *feed_uri);

Creates a new GDataBatchOperation for the given GDataBatchable service, and with the given `feed_uri` . `feed_uri` is normally the `GDATA_LINK_BATCH` link URI in the appropriate GDataFeed from the service. If authorization will be required to perform any of the requests in the batch operation, `domain` must be non-`NULL`, and must be an authorization domain which covers all of the requests. Otherwise, `domain` may be `NULL` if authorization is not required.

#### Parameters

self | a GDataBatchable |
domain | the GDataAuthorizationDomain to authorize the operation, or `NULL`. | [allow-none]
feed_uri | the URI to send the batch operation request to |

#### Returns

a new GDataBatchOperation; unref with `g_object_unref()`.

[transfer full]

Since: 0.9.0

## Types and Values

### GDataBatchable

    typedef struct _GDataBatchable GDataBatchable;

All the fields in the GDataBatchable structure are private and should never be accessed directly.

Since: 0.7.0

### GDataBatchableIface

    typedef struct {
    	gboolean (*is_supported) (GDataBatchOperationType operation_type);
    } GDataBatchableIface;

All the fields in the GDataBatchableIface structure are private and should never be accessed directly.

#### Members

`is_supported` () | Determines whether the given GDataBatchOperationType is supported by this GDataBatchable; if not, operations using it will return `GDATA_SERVICE_ERROR_WITH_BATCH_OPERATION`. It is valid for a GDataBatchable to return `FALSE` for all GDataBatchOperationTypes if the server no longer supports batch operations. If this method is not implemented, it is assumed that all GDataBatchOperationTypes are supported. Since: 0.17.2. |

Since: 0.7.0