Method

EDataServerWebDAVSessionprincipal_property_search_sync

since: 3.26

Declaration [src]

gboolean
e_webdav_session_principal_property_search_sync (
  EWebDAVSession* webdav,
  const gchar* uri,
  gboolean apply_to_principal_collection_set,
  const gchar* match_ns_uri,
  const gchar* match_property,
  const gchar* match_value,
  GSList** out_principals,
  GCancellable* cancellable,
  GError** error
)

Description [src]

Issues a DAV:principal-property-search for the uri, or, in case it’s NULL, for the URI defined in associated ESource. The DAV:principal-property-search performs a search for all principals whose properties contain character data that matches the search criteria match_value in match_property property of namespace match_ns_uri.

By default, the function searches all members (at any depth) of the collection identified by the uri. If apply_to_principal_collection_set is set to TRUE, the search is applied instead to each collection returned by e_webdav_session_get_principal_collection_set_sync() for the uri.

The out_principals is a GSList of EWebDAVResource, where the kind is set to E_WEBDAV_RESOURCE_KIND_PRINCIPAL and only href with displayname are filled. All other members of EWebDAVResource are not set.

Free the returned out_principals with g_slist_free_full (principals, e_webdav_resource_free); when no longer needed.

Available since: 3.26

Parameters

uri

Type: const gchar*

URI to issue the request for, or NULL to read from ESource.

The argument can be NULL.
The data is owned by the caller of the method.
The value is a NUL terminated UTF-8 string.
apply_to_principal_collection_set

Type: gboolean

Whether to apply to principal-collection-set.

match_ns_uri

Type: const gchar*

Namespace URI of the property to search in, or NULL for E_WEBDAV_NS_DAV.

The argument can be NULL.
The data is owned by the caller of the method.
The value is a NUL terminated UTF-8 string.
match_property

Type: const gchar*

Name of the property to search in.

The data is owned by the caller of the method.
The value is a NUL terminated UTF-8 string.
match_value

Type: const gchar*

A string value to search for.

The data is owned by the caller of the method.
The value is a NUL terminated UTF-8 string.
out_principals

Type: A list of EWebDAVResource*

Return location for matching principals.

The argument will be set by the function.
The caller of the method takes ownership of the returned data, and is responsible for freeing it.
cancellable

Type: GCancellable

Optional GCancellable object, or NULL.

The argument can be NULL.
The data is owned by the caller of the method.
error

Type: GError **

The return location for a recoverable error.

The argument can be NULL.
If the return location is not NULL, then you must initialize it to a NULL GError*.
The argument will be left initialized to NULL by the method if there are no errors.
In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it.

Return value

Type: gboolean

Whether succeeded. Note it can report success also when no matching principal had been found.