| Camel Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
struct CamelService; #define CAMEL_SERVICE_ERROR enum CamelServiceError; enum CamelServiceConnectionStatus; CamelServiceAuthType; gboolean camel_service_construct (CamelService *service,struct _CamelSession *session,CamelProvider *provider,CamelURL *url,GError **error); gchar * camel_service_get_name (CamelService *service,gboolean brief); gchar * camel_service_get_path (CamelService *service); CamelProvider * camel_service_get_provider (CamelService *service); struct _CamelSession * camel_service_get_session (CamelService *service); gchar * camel_service_get_url (CamelService *service); void camel_service_cancel_connect (CamelService *service); gboolean camel_service_connect_sync (CamelService *service,GError **error); gboolean camel_service_disconnect_sync (CamelService *service,gboolean clean,GError **error); GList * camel_service_query_auth_types_sync (CamelService *service,GCancellable *cancellable,GError **error); enum CamelServiceLock; void camel_service_lock (CamelService *service,CamelServiceLock lock); void camel_service_unlock (CamelService *service,CamelServiceLock lock);
typedef enum {
CAMEL_SERVICE_ERROR_INVALID,
CAMEL_SERVICE_ERROR_URL_INVALID,
CAMEL_SERVICE_ERROR_UNAVAILABLE,
CAMEL_SERVICE_ERROR_CANT_AUTHENTICATE,
CAMEL_SERVICE_ERROR_NOT_CONNECTED
} CamelServiceError;
Since 2.32
typedef enum {
CAMEL_SERVICE_DISCONNECTED,
CAMEL_SERVICE_CONNECTING,
CAMEL_SERVICE_CONNECTED,
CAMEL_SERVICE_DISCONNECTING
} CamelServiceConnectionStatus;
typedef struct {
const gchar *name; /* user-friendly name */
const gchar *description;
const gchar *authproto;
gboolean need_password; /* needs a password to authenticate */
} CamelServiceAuthType;
gboolean camel_service_construct (CamelService *service,struct _CamelSession *session,CamelProvider *provider,CamelURL *url,GError **error);
Constructs a CamelService initialized with the given parameters.
|
a CamelService object |
|
the CamelSession for service
|
|
the CamelProvider associated with service
|
|
the default URL for the service (may be NULL) |
|
return location for a GError, or NULL
|
Returns : |
TRUE on success, FALSE on failure |
gchar * camel_service_get_name (CamelService *service,gboolean brief);
This gets the name of the service in a "friendly" (suitable for
humans) form. If brief is TRUE, this should be a brief description
such as for use in the folder tree. If brief is FALSE, it should
be a more complete and mostly unambiguous description.
|
a CamelService object |
|
whether or not to use a briefer form |
Returns : |
a description of the service which the caller must free |
gchar * camel_service_get_path (CamelService *service);
This gets a valid UNIX relative path describing service, which
is guaranteed to be different from the path returned for any
different service. This path MUST start with the name of the
provider, followed by a "/", but after that, it is up to the
provider.
|
a CamelService object |
Returns : |
the path, which the caller must free |
CamelProvider * camel_service_get_provider (CamelService *service);
Gets the CamelProvider associated with the service.
|
a CamelService object |
Returns : |
the provider |
struct _CamelSession * camel_service_get_session (CamelService *service);
Gets the CamelSession associated with the service.
|
a CamelService object |
Returns : |
the session |
gchar * camel_service_get_url (CamelService *service);
Gets the URL representing service. The returned URL must be
freed when it is no longer needed. For security reasons, this
routine does not return the password.
|
a CamelService object |
Returns : |
the URL representing service
|
void camel_service_cancel_connect (CamelService *service);
If service is currently attempting to connect to or disconnect
from a server, this causes it to stop and fail. Otherwise it is a
no-op.
|
a CamelService object |
gboolean camel_service_connect_sync (CamelService *service,GError **error);
Connect to the service using the parameters it was initialized with.
|
a CamelService object |
|
return location for a GError, or NULL
|
Returns : |
TRUE if the connection is made or FALSE otherwise |
gboolean camel_service_disconnect_sync (CamelService *service,gboolean clean,GError **error);
Disconnect from the service. If clean is FALSE, it should not
try to do any synchronizing or other cleanup of the connection.
|
a CamelService object |
|
whether or not to try to disconnect cleanly |
|
return location for a GError, or NULL
|
Returns : |
TRUE if the disconnect was successful or FALSE otherwise |
GList * camel_service_query_auth_types_sync (CamelService *service,GCancellable *cancellable,GError **error);
This is used by the mail source wizard to get the list of authentication types supported by the protocol, and information about them.
|
a CamelService object |
|
optional GCancellable object, or NULL
|
|
return location for a GError, or NULL
|
Returns : |
a list of CamelServiceAuthType records. The caller must free the list with g_list_free when it is done with it. |
typedef enum {
CAMEL_SERVICE_REC_CONNECT_LOCK,
CAMEL_SERVICE_CONNECT_OP_LOCK
} CamelServiceLock;
Since 2.32
void camel_service_lock (CamelService *service,CamelServiceLock lock);
Locks service's lock. Unlock it with camel_service_unlock().
|
a CamelService |
|
lock type to lock |
Since 2.32
void camel_service_unlock (CamelService *service,CamelServiceLock lock);
Unlocks service's lock, previously locked with camel_service_lock().
|
a CamelService |
|
lock type to unlock |
Since 2.32