Creates a new #GDataDocumentsService using the given #GDataAuthorizer. If authorizer
is %NULL, all requests are made as an unauthenticated user.
a #GDataAuthorizer to authorize the service's requests, or %NULL
An object which implements #GDataAuthorizer. This should have previously been authenticated authorized against this service type (and potentially other service types). The service will use the authorizer to add an authorization token to each request it performs.
Your application should call methods on the #GDataAuthorizer object itself in order to authenticate with the Google accounts service and authorize against this service type. See the documentation for the particular #GDataAuthorizer implementation being used for more details.
The authorizer for a service can be changed at runtime for a different #GDataAuthorizer object or %NULL without affecting ongoing requests and operations.
Note that it's only necessary to set an authorizer on the service if your application is going to make requests of the service which require authorization. For example, listing the current most popular videos on YouTube does not require authorization, but uploading a video to YouTube does. It's an unnecessary overhead to require the user to authorize against a service when not strictly required.
The locale to use for network requests, in Unix locale format. (e.g. "en_GB", "cs", "de_DE".) Use %NULL for the default "C" locale (typically "en_US").
Typically, this locale will be used by the server-side software to localise results, such as by translating category names, or by choosing geographically relevant search results. This will vary from service to service.
The server-side behaviour is undefined if it doesn't support a given locale.
The #GProxyResolver used to determine a proxy URI.
A timeout, in seconds, for network operations. If the timeout is exceeded, the operation will be cancelled and %GDATA_SERVICE_ERROR_NETWORK_ERROR will be returned.
If the timeout is 0
, operations will never time out.
Note that if a #GDataAuthorizer is being used with this #GDataService, the authorizer might also need its timeout setting.
Add the given entry
to the specified folder,
and return an updated #GDataDocumentsEntry for entry
. If the entry
is already in another folder,
a copy will be added to the new folder. The copy and original will have different IDs. Note that entry
can't be a #GDataDocumentsFolder that
already exists on the server. It can be a new #GDataDocumentsFolder, or a #GDataDocumentsDocument that is either new or already present on the
server.
Errors from #GDataServiceError can be returned for exceptional conditions, as determined by the server.
the #GDataDocumentsEntry to copy
the #GDataDocumentsFolder to copy entry
into
optional #GCancellable object, or %NULL
Add the given entry
to the specified folder
. self,
entry
and folder
are all reffed when this function is called, so can safely be unreffed
after this function returns.
For more details, see gdata_documents_service_add_entry_to_folder(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_documents_service_add_entry_to_folder_finish() to get the results
of the operation.
the #GDataDocumentsEntry to add to folder
the #GDataDocumentsFolder to add entry
to
optional #GCancellable object, or %NULL
a #GAsyncReadyCallback to call when the operation is finished, or %NULL
Finish an asynchronous operation to add a #GDataDocumentsEntry to a folder started with gdata_documents_service_add_entry_to_folder_async().
a #GAsyncResult
Creates a binding between source_property
on source
and target_property
on target
.
Whenever the source_property
is changed the target_property
is
updated using the same value. For instance:
g_object_bind_property (action, "active", widget, "sensitive", 0);
Will result in the "sensitive" property of the widget #GObject instance to be updated with the same value of the "active" property of the action #GObject instance.
If flags
contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
if target_property
on target
changes then the source_property
on source
will be updated as well.
The binding will automatically be removed when either the source
or the
target
instances are finalized. To remove the binding without affecting the
source
and the target
you can just call g_object_unref() on the returned
#GBinding instance.
Removing the binding by calling g_object_unref() on it must only be done if
the binding, source
and target
are only used from a single thread and it
is clear that both source
and target
outlive the binding. Especially it
is not safe to rely on this if the binding, source
or target
can be
finalized from different threads. Keep another reference to the binding and
use g_binding_unbind() instead to be on the safe side.
A #GObject can have multiple bindings.
the property on source
to bind
the target #GObject
the property on target
to bind
flags to pass to #GBinding
Creates a binding between source_property
on source
and target_property
on target,
allowing you to set the transformation functions to be used by
the binding.
This function is the language bindings friendly version of g_object_bind_property_full(), using #GClosures instead of function pointers.
the property on source
to bind
the target #GObject
the property on target
to bind
flags to pass to #GBinding
a #GClosure wrapping the transformation function from the source
to the target,
or %NULL to use the default
a #GClosure wrapping the transformation function from the target
to the source,
or %NULL to use the default
Copy the given document,
producing a duplicate document in the same folder and returning its #GDataDocumentsDocument.
Errors from #GDataServiceError can be returned for exceptional conditions, as determined by the server.
the #GDataDocumentsDocument to copy
optional #GCancellable object, or %NULL
Copy the given document,
producing a duplicate document in the same folder and returning its #GDataDocumentsDocument. self
and document
are
both reffed when this function is called, so can safely be unreffed after this function returns.
For more details, see gdata_documents_service_copy_document(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_documents_service_copy_document_finish() to get the results
of the operation.
the #GDataDocumentsDocument to copy
optional #GCancellable object, or %NULL
a #GAsyncReadyCallback to call when the operation is finished, or %NULL
Finish an asynchronous operation to copy a #GDataDocumentsDocument started with gdata_documents_service_copy_document_async().
a #GAsyncResult
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.
the #GDataAuthorizationDomain to authorize the operation, or %NULL
the URI to send the batch operation request to
Deletes entry
from the server. For more information about the concept of deleting entries, see the
If cancellable
is not %NULL, then the operation can be cancelled by triggering the cancellable
object from another thread.
If the operation was cancelled before or during network activity, the error %G_IO_ERROR_CANCELLED will be returned. Cancellation has no effect
after network activity has finished, however, and the deletion will return successfully (or return an error sent by the server) if it is first
cancelled after network activity has finished. See the overview of cancellation for
more details.
If there is an error deleting the entry, a %GDATA_SERVICE_ERROR_PROTOCOL_ERROR error will be returned. Currently, subclasses
the #GDataAuthorizationDomain the deletion falls under, or %NULL
the #GDataEntry to delete
optional #GCancellable object, or %NULL
Deletes entry
from the server. self
and entry
are both reffed when this function is called,
so can safely be unreffed after this function returns.
For more details, see gdata_service_delete_entry(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_service_delete_entry_finish()
to get the results of the operation.
the #GDataAuthorizationDomain the deletion falls under, or %NULL
the #GDataEntry to delete
optional #GCancellable object, or %NULL
a #GAsyncReadyCallback to call when deletion is finished, or %NULL
Finishes an asynchronous entry deletion operation started with gdata_service_delete_entry_async().
a #GAsyncResult
Finish off a document upload or update operation started by gdata_documents_service_upload_document() or gdata_documents_service_update_document(), parsing the result and returning the new or updated #GDataDocumentsDocument.
If an error occurred during the upload or update operation, it will have been returned during the operation (e.g. by g_output_stream_splice() or one
of the other stream methods). In such a case, %NULL will be returned but error
will remain unset. error
is only set in the case that the server
indicates that the operation was successful, but an error is encountered in parsing the result sent by the server.
In the case that no #GDataDocumentsDocument was passed (to gdata_documents_service_upload_document() or gdata_documents_service_update_document())
when starting the operation, %GDATA_DOCUMENTS_SERVICE_ERROR_INVALID_CONTENT_TYPE will be thrown in error
if the content type of the uploaded data
could not be mapped to a document type with which to interpret the response from the server.
the #GDataUploadStream from the operation
This function is intended for #GObject implementations to re-enforce a [floating][floating-ref] object reference. Doing this is seldom required: all #GInitiallyUnowneds are created with a floating reference which usually just needs to be sunken by calling g_object_ref_sink().
Increases the freeze count on object
. If the freeze count is
non-zero, the emission of "notify" signals on object
is
stopped. The signals are queued until the freeze count is decreased
to zero. Duplicate notifications are squashed so that at most one
#GObject::notify signal is emitted for each property modified while the
object is frozen.
This is necessary for accessors that modify multiple properties to prevent premature notification while the object is still being modified.
Gets the #GDataAuthorizer object currently in use by the service. See the documentation for #GDataService:authorizer for more details.
Gets a named field from the objects table of associations (see g_object_set_data()).
name of the key for that association
Returns the locale currently being used for network requests, or %NULL if the locale is the default.
Gets a #GDataDocumentsMetadata object containing metadata about the documents service itself, like how large the user quota is.
optional #GCancellable object, or %NULL
Gets a #GDataDocumentsMetadata object containing metadata about the documents service itself, like how large the user quota is.
For more details, see gdata_documents_service_get_metadata(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_documents_service_get_metadata_finish() to get the results
of the operation.
optional #GCancellable object, or %NULL
a #GAsyncReadyCallback to call when the operation is finished, or %NULL
Finish an asynchronous operation to get a #GDataDocumentsMetadata started with gdata_documents_service_get_metadata_async().
a #GAsyncResult
Gets a property of an object.
The value
can be:
In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling g_value_unset().
Note that g_object_get_property() is really intended for language bindings, g_object_get() is much more convenient for C programming.
the name of the property to get
return location for the property value
Gets the #GProxyResolver on the #GDataService's #SoupSession.
This function gets back user data pointers stored via g_object_set_qdata().
A #GQuark, naming the user data pointer
Gets the #GDataService:timeout property; the network timeout, in seconds.
Gets n_properties
properties for an object
.
Obtained properties will be set to values
. All properties must be valid.
Warnings will be emitted and undefined behaviour may result if invalid
properties are passed in.
the names of each property to get
the values of each property to get
Inserts entry
by uploading it to the online service at upload_uri
. For more information about the concept of inserting entries, see
the
The service will return an updated version of the entry, which is the return value of this function on success.
If cancellable
is not %NULL, then the operation can be cancelled by triggering the cancellable
object from another thread.
If the operation was cancelled before or during network activity, the error %G_IO_ERROR_CANCELLED will be returned. Cancellation has no effect
after network activity has finished, however, and the insertion will return successfully (or return an error sent by the server) if it is first
cancelled after network activity has finished. See the overview of cancellation for
more details.
If the entry is marked as already having been inserted a %GDATA_SERVICE_ERROR_ENTRY_ALREADY_INSERTED error will be returned immediately (there will be no network requests).
If there is an error inserting the entry, a %GDATA_SERVICE_ERROR_PROTOCOL_ERROR error will be returned. Currently, subclasses
the #GDataAuthorizationDomain the insertion operation falls under, or %NULL
the URI to which the upload should be sent
the #GDataEntry to insert
optional #GCancellable object, or %NULL
Inserts entry
by uploading it to the online service at upload_uri
. self,
upload_uri
and
entry
are all reffed/copied when this function is called, so can safely be freed after this function returns.
For more details, see gdata_service_insert_entry(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_service_insert_entry_finish()
to get the results of the operation.
the #GDataAuthorizationDomain the insertion operation falls under, or %NULL
the URI to which the upload should be sent
the #GDataEntry to insert
optional #GCancellable object, or %NULL
a #GAsyncReadyCallback to call when insertion is finished, or %NULL
Finishes an asynchronous entry insertion operation started with gdata_service_insert_entry_async().
a #GAsyncResult
Determines whether the service is authorized for all the #GDataAuthorizationDomains it belongs to (as returned by gdata_service_get_authorization_domains()). If the service's #GDataService:authorizer is %NULL, %FALSE is always returned.
This is basically a convenience method for checking that the service's #GDataAuthorizer is authorized for all the service's #GDataAuthorizationDomains.
Checks whether object
has a [floating][floating-ref] reference.
Emits a "notify" signal for the property property_name
on object
.
When possible, eg. when signaling a property change from within the class that registered the property, you should use g_object_notify_by_pspec() instead.
Note that emission of the notify signal may be blocked with g_object_freeze_notify(). In this case, the signal emissions are queued and will be emitted (in reverse order) when g_object_thaw_notify() is called.
the name of a property installed on the class of object
.
Emits a "notify" signal for the property specified by pspec
on object
.
This function omits the property name lookup, hence it is faster than g_object_notify().
One way to avoid using g_object_notify() from within the class that registered the properties, and using g_object_notify_by_pspec() instead, is to store the GParamSpec used with g_object_class_install_property() inside a static array, e.g.:
enum
{
PROP_0,
PROP_FOO,
PROP_LAST
};
static GParamSpec *properties[PROP_LAST];
static void
my_object_class_init (MyObjectClass *klass)
{
properties[PROP_FOO] = g_param_spec_int ("foo", "Foo", "The foo",
0, 100,
50,
G_PARAM_READWRITE);
g_object_class_install_property (gobject_class,
PROP_FOO,
properties[PROP_FOO]);
}
and then notify a change on the "foo" property with:
g_object_notify_by_pspec (self, properties[PROP_FOO]);
the #GParamSpec of a property installed on the class of object
.
Queries the service's feed_uri
feed to build a #GDataFeed.
If cancellable
is not %NULL, then the operation can be cancelled by triggering the cancellable
object from another thread.
If the operation was cancelled before or during network activity, the error %G_IO_ERROR_CANCELLED will be returned. Cancellation has no effect
after network activity has finished, however, and the query will return successfully (or return an error sent by the server) if it is first
cancelled after network activity has finished. See the overview of cancellation for
more details.
A %GDATA_SERVICE_ERROR_PROTOCOL_ERROR will be returned if the server indicates there is a problem with the query, but subclasses may override this and return their own errors. See their documentation for more details.
For each entry in the response feed, progress_callback
will be called in the main thread. If there was an error parsing the XML response,
a #GDataParserError will be returned.
If the query is successful and the feed supports pagination, query
will be updated with the pagination URIs, and the next or previous page
can then be loaded by calling gdata_query_next_page() or gdata_query_previous_page() before running the query again.
If the #GDataQuery's ETag is set and it finds a match on the server, %NULL will be returned, but error
will remain unset. Otherwise,
query'
s ETag will be updated with the ETag from the returned feed, if available.
the #GDataAuthorizationDomain the query falls under, or %NULL
the feed URI to query, including the host name and protocol
a #GDataQuery with the query parameters, or %NULL
a #GType for the #GDataEntrys to build from the XML
optional #GCancellable object, or %NULL
a #GDataQueryProgressCallback to call when an entry is loaded, or %NULL
Queries the service's feed_uri
feed to build a #GDataFeed. self,
feed_uri
and
query
are all reffed/copied when this function is called, so can safely be freed after this function returns.
For more details, see gdata_service_query(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_service_query_finish()
to get the results of the operation.
the #GDataAuthorizationDomain the query falls under, or %NULL
the feed URI to query, including the host name and protocol
a #GDataQuery with the query parameters, or %NULL
a #GType for the #GDataEntrys to build from the XML
optional #GCancellable object, or %NULL
a #GDataQueryProgressCallback to call when an entry is loaded, or %NULL
a #GAsyncReadyCallback to call when the query is finished
Queries the service to return a list of documents matching the given query
. Note that query
has to be a #GDataDocumentsQuery, rather than just
a #GDataQuery, as it uses the folder ID specified in #GDataDocumentsQuery:folder-id.
For more details, see gdata_service_query().
a #GDataDocumentsQuery with the query parameters, or %NULL
optional #GCancellable object, or %NULL
a #GDataQueryProgressCallback to call when an entry is loaded, or %NULL
Queries the service to return a list of documents matching the given query
. self
and
query
are both reffed when this function is called, so can safely be unreffed after this function returns.
For more details, see gdata_documents_service_query_documents(), which is the synchronous version of this function, and gdata_service_query_async(), which is the base asynchronous query function.
a #GDataDocumentsQuery with the query parameters, or %NULL
optional #GCancellable object, or %NULL
a #GDataQueryProgressCallback to call when an entry is loaded, or %NULL
a #GAsyncReadyCallback to call when authentication is finished
Queries the service to return a list of shared drives matching the given query
.
For more details, see gdata_service_query().
a #GDataDocumentsDriveQuery with the query parameters, or %NULL
optional #GCancellable object, or %NULL
a #GDataQueryProgressCallback to call when an entry is loaded, or %NULL
Queries the service to return a list of shared drives matching the given query
. self
and
query
are both reffed when this function is called, so can safely be unreffed after this function returns.
For more details, see gdata_documents_service_query_drives(), which is the synchronous version of this function, and gdata_service_query_async(), which is the base asynchronous query function.
a #GDataDocumentsDriveQuery with the query parameters, or %NULL
optional #GCancellable object, or %NULL
a #GDataQueryProgressCallback to call when an entry is loaded, or %NULL
a #GAsyncReadyCallback to call when authentication is finished
Finishes an asynchronous query operation started with gdata_service_query_async().
a #GAsyncResult
Retrieves information about the single entry with the given entry_id
. entry_id
should be as returned by
gdata_entry_get_id().
Parameters and errors are as for gdata_service_query(). Most of the properties of query
aren't relevant, and
will cause a server-side error if used. The most useful property to use is #GDataQuery:etag, which will cause the
server to not return anything if the entry hasn't been modified since it was given the specified ETag; thus saving
bandwidth. If the server does not return anything for this reason, gdata_service_query_single_entry() will return
%NULL, but will not set an error in error
.
the #GDataAuthorizationDomain the query falls under, or %NULL
the entry ID of the desired entry
a #GDataQuery with the query parameters, or %NULL
a #GType for the #GDataEntry to build from the XML
a #GCancellable, or %NULL
Retrieves information about the single entry with the given entry_id
. entry_id
should be as returned by
gdata_entry_get_id(). self,
query
and entry_id
are reffed/copied when this
function is called, so can safely be freed after this function returns.
For more details, see gdata_service_query_single_entry(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_service_query_single_entry_finish()
to get the results of the operation.
the #GDataAuthorizationDomain the query falls under, or %NULL
the entry ID of the desired entry
a #GDataQuery with the query parameters, or %NULL
a #GType for the #GDataEntry to build from the XML
optional #GCancellable object, or %NULL
a #GAsyncReadyCallback to call when the query is finished
Finishes an asynchronous query operation for a single entry, as started with gdata_service_query_single_entry_async().
a #GAsyncResult
Increase the reference count of object,
and possibly remove the
[floating][floating-ref] reference, if object
has a floating reference.
In other words, if the object is floating, then this call "assumes ownership" of the floating reference, converting it to a normal reference by clearing the floating flag while leaving the reference count unchanged. If the object is not floating, then this call adds a new normal reference increasing the reference count by one.
Since GLib 2.56, the type of object
will be propagated to the return type
under the same conditions as for g_object_ref().
Remove the given entry
from folder,
and return an updated #GDataDocumentsEntry for entry
. entry
will remain a member of any other folders it's
currently in. Note that entry
can be either a #GDataDocumentsDocument or a #GDataDocumentsFolder.
Errors from #GDataServiceError can be returned for exceptional conditions, as determined by the server.
the #GDataDocumentsEntry to remove
the #GDataDocumentsFolder from which we should remove entry
optional #GCancellable object, or %NULL
Remove the given entry
from the specified folder
. self,
entry
and folder
are all reffed when this function is called, so can safely be unreffed
after this function returns.
For more details, see gdata_documents_service_remove_entry_from_folder(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_documents_service_remove_entry_from_folder_finish() to get the
results of the operation.
the #GDataDocumentsEntry to remove from folder
the #GDataDocumentsFolder to remove entry
from
optional #GCancellable object, or %NULL
a #GAsyncReadyCallback to call when the operation is finished, or %NULL
Finish an asynchronous operation to remove a #GDataDocumentsEntry from a folder started with gdata_documents_service_remove_entry_from_folder_async().
a #GAsyncResult
Releases all references to other objects. This can be used to break reference cycles.
This function should only be called from object system implementations.
Sets #GDataService:authorizer to authorizer
. This may be %NULL if the service will only make requests in future which don't require authorization.
See the documentation for #GDataService:authorizer for more information.
a new authorizer object for the service, or %NULL
Each object carries around a table of associations from strings to pointers. This function lets you set an association.
If the object already had an association with that name, the old association will be destroyed.
Internally, the key
is converted to a #GQuark using g_quark_from_string().
This means a copy of key
is kept permanently (even after object
has been
finalized) — so it is recommended to only use a small, bounded set of values
for key
in your program, to avoid the #GQuark storage growing unbounded.
name of the key
data to associate with that key
Set the locale used for network requests to locale,
given in standard Unix locale format. See #GDataService:locale for more details.
Note that while it's possible to change the locale after sending network requests, it is unsupported, as the server-side software may behave unexpectedly. The only supported use of this function is after creation of a service, but before any network requests are made.
the new locale in Unix locale format, or %NULL for the default locale
Sets a property on an object.
the name of the property to set
the value
Sets the #GProxyResolver on the #SoupSession used internally by the given #GDataService.
a #GProxyResolver, or %NULL
Sets the #GDataService:timeout property; the network timeout, in seconds.
If timeout
is 0
, network operations will never time out.
Note that if a #GDataAuthorizer is being used with this #GDataService, the authorizer might also need its timeout setting.
the timeout, or 0
Remove a specified datum from the object's data associations, without invoking the association's destroy handler.
name of the key
This function gets back user data pointers stored via
g_object_set_qdata() and removes the data
from object
without invoking its destroy() function (if any was
set).
Usually, calling this function is only required to update
user data pointers with a destroy notifier, for example:
void
object_add_to_user_list (GObject *object,
const gchar *new_string)
{
// the quark, naming the object data
GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
// retrieve the old string list
GList *list = g_object_steal_qdata (object, quark_string_list);
// prepend new string
list = g_list_prepend (list, g_strdup (new_string));
// this changed 'list', so we need to set it again
g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
}
static void
free_string_list (gpointer data)
{
GList *node, *list = data;
for (node = list; node; node = node->next)
g_free (node->data);
g_list_free (list);
}
Using g_object_get_qdata() in the above example, instead of g_object_steal_qdata() would have left the destroy function set, and thus the partial string list would have been freed upon g_object_set_qdata_full().
A #GQuark, naming the user data pointer
Reverts the effect of a previous call to
g_object_freeze_notify(). The freeze count is decreased on object
and when it reaches zero, queued "notify" signals are emitted.
Duplicate notifications for each property are squashed so that at most one #GObject::notify signal is emitted for each property, in the reverse order in which they have been queued.
It is an error to call this function when the freeze count is zero.
Decreases the reference count of object
. When its reference count
drops to 0, the object is finalized (i.e. its memory is freed).
If the pointer to the #GObject may be reused in future (for example, if it is an instance variable of another object), it is recommended to clear the pointer to %NULL rather than retain a dangling pointer to a potentially invalid #GObject instance. Use g_clear_object() for this.
Update the document using the properties from document
and the document data written to the resulting #GDataUploadStream. If the document data does
not need to be changed, just the metadata, use gdata_service_update_entry() instead.
This performs a non-resumable upload, unlike gdata_documents_service_update_document(). This means that errors during transmission will cause the upload to fail, and the entire document will have to be re-uploaded. It is recommended that gdata_documents_service_update_document_resumable() be used instead.
The stream returned by this function should be written to using the standard #GOutputStream methods, asynchronously or synchronously. Once the stream
is closed (using g_output_stream_close()), gdata_documents_service_finish_upload() should be called on it to parse and return the updated
#GDataDocumentsDocument for the document. This must be done, as document
isn't updated in-place.
In order to cancel the update, a #GCancellable passed in to cancellable
must be cancelled using g_cancellable_cancel(). Cancelling the individual
#GOutputStream operations on the #GDataUploadStream will not cancel the entire update; merely the write or close operation in question. See the
#GDataUploadStream:cancellable for more details.
Any upload errors will be thrown by the stream methods, and may come from the #GDataServiceError domain.
For more information, see gdata_service_update_entry().
the #GDataDocumentsDocument to update
the filename to give to the uploaded document
the content type of the uploaded data
a #GCancellable for the entire upload stream, or %NULL
Update the document using the properties from document
and the document data written to the resulting #GDataUploadStream. If the document data does
not need to be changed, just the metadata, use gdata_service_update_entry() instead.
Unlike gdata_documents_service_update_document(), this method performs a
The stream returned by this function should be written to using the standard #GOutputStream methods, asynchronously or synchronously. Once the stream
is closed (using g_output_stream_close()), gdata_documents_service_finish_upload() should be called on it to parse and return the updated
#GDataDocumentsDocument for the document. This must be done, as document
isn't updated in-place.
In order to cancel the update, a #GCancellable passed in to cancellable
must be cancelled using g_cancellable_cancel(). Cancelling the individual
#GOutputStream operations on the #GDataUploadStream will not cancel the entire update; merely the write or close operation in question. See the
#GDataUploadStream:cancellable for more details.
Any upload errors will be thrown by the stream methods, and may come from the #GDataServiceError domain.
For more information, see gdata_service_update_entry().
the #GDataDocumentsDocument to update
the filename to give to the uploaded document
the content type of the uploaded data
the size (in bytes) of the file being uploaded
a #GCancellable for the entire upload stream, or %NULL
Updates entry
by PUTting it to its
The service will return an updated version of the entry, which is the return value of this function on success.
If cancellable
is not %NULL, then the operation can be cancelled by triggering the cancellable
object from another thread.
If the operation was cancelled before or during network activity, the error %G_IO_ERROR_CANCELLED will be returned. Cancellation has no effect
after network activity has finished, however, and the update will return successfully (or return an error sent by the server) if it is first
cancelled after network activity has finished. See the overview of cancellation for
more details.
If there is an error updating the entry, a %GDATA_SERVICE_ERROR_PROTOCOL_ERROR error will be returned. Currently, subclasses
the #GDataAuthorizationDomain the update operation falls under, or %NULL
the #GDataEntry to update
optional #GCancellable object, or %NULL
Updates entry
by PUTting it to its self
and
entry
are both reffed when this function is called, so can safely be unreffed after this function returns.
For more details, see gdata_service_update_entry(), which is the synchronous version of this function.
When the operation is finished, callback
will be called. You can then call gdata_service_update_entry_finish()
to get the results of the operation.
the #GDataAuthorizationDomain the update operation falls under, or %NULL
the #GDataEntry to update
optional #GCancellable object, or %NULL
a #GAsyncReadyCallback to call when the update is finished, or %NULL
Finishes an asynchronous entry update operation started with gdata_service_update_entry_async().
a #GAsyncResult
Uploads a document to Google Documents, using the properties from document
and the document data written to the resulting #GDataUploadStream. If
the document data does not need to be provided at the moment, just the metadata, use gdata_service_insert_entry() instead (e.g. in the case of
creating a new, empty file to be edited at a later date).
This performs a non-resumable upload, unlike gdata_documents_service_upload_document(). This means that errors during transmission will cause the upload to fail, and the entire document will have to be re-uploaded. It is recommended that gdata_documents_service_upload_document_resumable() be used instead.
If document
is %NULL, only the document data will be uploaded. The new document entry will be named using slug,
and will have default metadata.
The stream returned by this function should be written to using the standard #GOutputStream methods, asynchronously or synchronously. Once the stream
is closed (using g_output_stream_close()), gdata_documents_service_finish_upload() should be called on it to parse and return the updated
#GDataDocumentsDocument for the document. This must be done, as document
isn't updated in-place.
In order to cancel the upload, a #GCancellable passed in to cancellable
must be cancelled using g_cancellable_cancel(). Cancelling the individual
#GOutputStream operations on the #GDataUploadStream will not cancel the entire upload; merely the write or close operation in question. See the
#GDataUploadStream:cancellable for more details.
Any upload errors will be thrown by the stream methods, and may come from the #GDataServiceError domain.
the #GDataDocumentsDocument to insert, or %NULL
the filename to give to the uploaded document
the content type of the uploaded data
the folder to which the document should be uploaded, or %NULL
a #GCancellable for the entire upload stream, or %NULL
Uploads a document to Google Documents, using the properties from document
and the document data written to the resulting #GDataUploadStream. If
the document data does not need to be provided at the moment, just the metadata, use gdata_service_insert_entry() instead (e.g. in the case of
creating a new, empty file to be edited at a later date).
Unlike gdata_documents_service_upload_document(), this method performs a
If document
is %NULL, only the document data will be uploaded. The new document entry will be named using slug,
and will have default metadata.
If non-%NULL, the query
specifies parameters for the upload, such as a #GDataDocumentsFolder to upload the document into; and whether to treat
the document as an opaque file, or convert it to a standard format. If query
is %NULL, the document will be uploaded into the root folder, and
automatically converted to a standard format. No OCR or automatic language translation will be performed by default.
If query
is non-%NULL and #GDataDocumentsUploadQuery:convert is %FALSE, document
must be an instance of #GDataDocumentsDocument. Otherwise,
document
must be a subclass of it, such as #GDataDocumentsPresentation.
The stream returned by this function should be written to using the standard #GOutputStream methods, asynchronously or synchronously. Once the stream
is closed (using g_output_stream_close()), gdata_documents_service_finish_upload() should be called on it to parse and return the updated
#GDataDocumentsDocument for the document. This must be done, as document
isn't updated in-place.
In order to cancel the upload, a #GCancellable passed in to cancellable
must be cancelled using g_cancellable_cancel(). Cancelling the individual
#GOutputStream operations on the #GDataUploadStream will not cancel the entire upload; merely the write or close operation in question. See the
#GDataUploadStream:cancellable for more details.
Any upload errors will be thrown by the stream methods, and may come from the #GDataServiceError domain.
the #GDataDocumentsDocument to insert, or %NULL
the filename to give to the uploaded document
the content type of the uploaded data
the size (in bytes) of the file being uploaded
a query specifying parameters for the upload, or %NULL
a #GCancellable for the entire upload stream, or %NULL
Emits a "notify" signal for the property property_name
on object
.
When possible, eg. when signaling a property change from within the class that registered the property, you should use g_object_notify_by_pspec() instead.
Note that emission of the notify signal may be blocked with g_object_freeze_notify(). In this case, the signal emissions are queued and will be emitted (in reverse order) when g_object_thaw_notify() is called.
This function essentially limits the life time of the closure
to
the life time of the object. That is, when the object is finalized,
the closure
is invalidated by calling g_closure_invalidate() on
it, in order to prevent invocations of the closure with a finalized
(nonexisting) object. Also, g_object_ref() and g_object_unref() are
added as marshal guards to the closure,
to ensure that an extra
reference count is held on object
during invocation of the
closure
. Usually, this function will be called on closures that
use this object
as closure data.
#GClosure to watch
Retrieves the full list of #GDataAuthorizationDomains which relate to the specified service_type
. All the
#GDataAuthorizationDomains are unique and interned, so can be compared with other domains by simple pointer comparison.
Note that in addition to this method, #GDataService subclasses may expose some or all of their authorization domains individually by means of individual accessor functions.
the #GType of the #GDataService subclass to retrieve the authorization domains for
The primary #GDataAuthorizationDomain for interacting with Google Documents. This will not normally need to be used, as it's used internally by the #GDataDocumentsService methods. However, if using the plain #GDataService methods to implement custom queries or requests which libgdata does not support natively, then this domain may be needed to authorize the requests.
The domain never changes, and is interned so that pointer comparison can be used to differentiate it from other authorization domains.
The #GDataAuthorizationDomain for interacting with spreadsheet data. This will not normally need to be used, as it's automatically used internally by the #GDataDocumentsService methods. However, if using the plain #GDataService methods to implement custom queries or requests which libgdata does not support natively, then this domain may be needed to authorize the requests which pertain to the Google Spreadsheets Data API, such as requests to download or upload spreadsheet documents.
The domain never changes, and is interned so that pointer comparison can be used to differentiate it from other authorization domains.
Gets the upload URI for documents for the service.
If folder
is %NULL, the URI will be the one to upload documents to the "root" folder.
the #GDataDocumentsFolder into which to upload the document, or %NULL
Find the #GParamSpec with the given name for an
interface. Generally, the interface vtable passed in as g_iface
will be the default vtable from g_type_default_interface_ref(), or,
if you know the interface has already been loaded,
g_type_default_interface_peek().
any interface vtable for the interface, or the default vtable for the interface
name of a property to look up.
Add a property to an interface; this is only useful for interfaces that are added to GObject-derived types. Adding a property to an interface forces all objects classes with that interface to have a compatible property. The compatible property could be a newly created #GParamSpec, but normally g_object_class_override_property() will be used so that the object class only needs to provide an implementation and inherits the property description, default value, bounds, and so forth from the interface property.
This function is meant to be called from the interface's default
vtable initialization function (the class_init
member of
#GTypeInfo.) It must not be called after after class_init
has
been called for any object types implementing this interface.
If pspec
is a floating reference, it will be consumed.
any interface vtable for the interface, or the default vtable for the interface.
the #GParamSpec for the new property
Lists the properties of an interface.Generally, the interface
vtable passed in as g_iface
will be the default vtable from
g_type_default_interface_ref(), or, if you know the interface has
already been loaded, g_type_default_interface_peek().
any interface vtable for the interface, or the default vtable for the interface
Creates a new #GDataDocumentsService using the given #GDataAuthorizer. If authorizer
is %NULL, all requests are made as an unauthenticated user.
a #GDataAuthorizer to authorize the service's requests, or %NULL
Creates a new instance of a #GObject subtype and sets its properties.
Construction parameters (see %G_PARAM_CONSTRUCT, %G_PARAM_CONSTRUCT_ONLY) which are not explicitly specified are set to their default values.
the type id of the #GObject subtype to instantiate
an array of #GParameter
All the fields in the #GDataDocumentsService structure are private and should never be accessed directly.