Detailed Description
The QContactSaveRequest class allows a client to asynchronously request that certain contacts be saved to a contacts store.
For a QContactSaveRequest, the resultsAvailable() signal will be emitted when either the individual item errors (which may be retrieved by calling errorMap()), or the resultant contacts (which may be retrieved by calling contacts()), are updated, as well as if the overall operation error (which may be retrieved by calling error()) is updated.
Please see the class documentation of QContactAbstractRequest for more information about the usage of request classes and ownership semantics.
Member Function Documentation
QContactSaveRequest::QContactSaveRequest(QObject * parent = 0)
Constructs a new contact save request whose parent is the specified parent
QContactSaveRequest::~QContactSaveRequest()
Frees any memory used by this request
QList<QContact> QContactSaveRequest::contacts() const
Returns the list of contacts which will be saved if called prior to calling start(), otherwise returns the list of contacts with their ids set appropriately (successfully saved new contacts will have an id assigned).
See also setContacts().
Returns the map of input contact list indices to errors which occurred
void QContactSaveRequest::setContact(const QContact & contact)
Sets the contact to be saved to contact. Equivalent to calling:
setContacts(QList<QContact>() << contact);
void QContactSaveRequest::setContacts(const QList<QContact> & contacts)
Sets the list of contacts to be saved to contacts
See also contacts().
Sets the storageLocation where the new contacts will be saved to.
This is ignored for contacts which have already been saved. Instead, those contacts are saved back to the storage location where they were originally stored.
See also QContactAbstractRequest::StorageLocation and storageLocation().
Set the list of definitions to restrict saving to typeMask. This allows you to perform partial save (and remove) operations on existing contacts.
If typeMask is empty (the default), no restrictions will apply, and the passed in contacts will be saved as is. Otherwise, only details whose types are in the typeMask will be saved. If a type is present in the list, but there are no corresponding details in the contact passed into this request, any existing details in the manager for that contact will be removed.
This is useful if you've used a fetch hint to fetch a partial contact from a manager so that you can save changes to the details you actually fetched without removing the details you didn't.
Additionally, when performing synchronization operations with other managers that don't support the full range of details, you can restrict the update operation to only those details so that you don't lose the extra details that are supported in this manager.
Note: Some managers do not support partial updates natively, in which case the QtContacts framework will emulate the functionality (fetching the whole contact, applying the new restricted details, and saving the contact back).
See also typeMask().
Returns the storage location where the contacts will be saved to.
This is ignored for contacts which have already been saved. Instead, those contacts are saved back to the storage location where they were originally stored.
See also QContactAbstractRequest::StorageLocation and setStorageLocation().
Returns the list of definitions that this request will operate on.
If the list is empty, the request will operate on all details.
See also setTypeMask().