|
Packit Service |
c6b9b0 |
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
|
|
Packit Service |
c6b9b0 |
/*
|
|
Packit Service |
c6b9b0 |
* Copyright © 2011 – 2017 Red Hat, Inc.
|
|
Packit Service |
c6b9b0 |
*
|
|
Packit Service |
c6b9b0 |
* This library is free software; you can redistribute it and/or
|
|
Packit Service |
c6b9b0 |
* modify it under the terms of the GNU Lesser General Public
|
|
Packit Service |
c6b9b0 |
* License as published by the Free Software Foundation; either
|
|
Packit Service |
c6b9b0 |
* version 2 of the License, or (at your option) any later version.
|
|
Packit Service |
c6b9b0 |
*
|
|
Packit Service |
c6b9b0 |
* This library is distributed in the hope that it will be useful,
|
|
Packit Service |
c6b9b0 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit Service |
c6b9b0 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit Service |
c6b9b0 |
* Lesser General Public License for more details.
|
|
Packit Service |
c6b9b0 |
*
|
|
Packit Service |
c6b9b0 |
* You should have received a copy of the GNU Lesser General
|
|
Packit Service |
c6b9b0 |
* Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
|
Packit Service |
c6b9b0 |
*/
|
|
Packit Service |
c6b9b0 |
|
|
Packit Service |
c6b9b0 |
#if !defined (__GOA_BACKEND_INSIDE_GOA_BACKEND_H__) && !defined (GOA_BACKEND_COMPILATION)
|
|
Packit Service |
c6b9b0 |
#error "Only <goabackend/goabackend.h> can be included directly."
|
|
Packit Service |
c6b9b0 |
#endif
|
|
Packit Service |
c6b9b0 |
|
|
Packit Service |
c6b9b0 |
#ifndef __GOA_BACKEND_ENUMS_H__
|
|
Packit Service |
c6b9b0 |
#define __GOA_BACKEND_ENUMS_H__
|
|
Packit Service |
c6b9b0 |
|
|
Packit Service |
c6b9b0 |
#include <glib.h>
|
|
Packit Service |
c6b9b0 |
|
|
Packit Service |
c6b9b0 |
G_BEGIN_DECLS
|
|
Packit Service |
c6b9b0 |
|
|
Packit Service |
c6b9b0 |
/**
|
|
Packit Service |
c6b9b0 |
* GoaProviderGroup:
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_GROUP_BRANDED: Providers with a well-known brand. For
|
|
Packit Service |
c6b9b0 |
* example, Google and Facebook.
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_GROUP_CONTACTS: Providers that offer address book services.
|
|
Packit Service |
c6b9b0 |
* For example, CardDAV.
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_GROUP_MAIL: Providers that offer email-like messaging
|
|
Packit Service |
c6b9b0 |
* services. For example, IMAP and SMTP.
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_GROUP_TICKETING: Providers with ticketing
|
|
Packit Service |
c6b9b0 |
* capabilities. For example, Kerberos.
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_GROUP_CHAT: Providers that offer chat-like messaging
|
|
Packit Service |
c6b9b0 |
* capabilities. For example, XMPP, IRC.
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_GROUP_INVALID: Used for error handling. No provider
|
|
Packit Service |
c6b9b0 |
* should belong to this group.
|
|
Packit Service |
c6b9b0 |
*
|
|
Packit Service |
c6b9b0 |
* An enum for specifying which group a provider belongs to. This is
|
|
Packit Service |
c6b9b0 |
* can be used to organize the providers while displaying them in an
|
|
Packit Service |
c6b9b0 |
* user interface.
|
|
Packit Service |
c6b9b0 |
*/
|
|
Packit Service |
c6b9b0 |
typedef enum
|
|
Packit Service |
c6b9b0 |
{
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_GROUP_BRANDED,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_GROUP_CONTACTS,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_GROUP_MAIL,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_GROUP_TICKETING,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_GROUP_CHAT,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_GROUP_INVALID
|
|
Packit Service |
c6b9b0 |
} GoaProviderGroup;
|
|
Packit Service |
c6b9b0 |
|
|
Packit Service |
c6b9b0 |
/**
|
|
Packit Service |
c6b9b0 |
* GoaProviderFeatures:
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_BRANDED: Common providers to be highlighted (ie. Google, OwnCloud).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_MAIL: Mail services (ie. SMTP, IMAP).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_CALENDAR: Calendaring services (ie. CalDAV).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_CONTACTS: Addressbook services (ie. CardDAV).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_CHAT: Instant messaging services (ie. XMPP, IRC).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_DOCUMENTS: Documents storage services (ie. Google Documents).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_PHOTOS: Photos storage services (ie. Flickr).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_FILES: Files storage services (ie. WebDAV).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_TICKETING: Ticketing services (ie. Kerberos).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_READ_LATER: Read later services (eg. Pocket).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_PRINTERS: Network printing services (e.g. Google Cloud Print).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_MAPS: Maps related services (e.g. Foursquare, Facebook).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_MUSIC: Music related services (e.g. Vkontakte).
|
|
Packit Service |
c6b9b0 |
* @GOA_PROVIDER_FEATURE_INVALID: Used for error handling. No provider
|
|
Packit Service |
c6b9b0 |
* should provide this feature.
|
|
Packit Service |
c6b9b0 |
*
|
|
Packit Service |
c6b9b0 |
* These flags specify the features exported by each provider. They can be
|
|
Packit Service |
c6b9b0 |
* expecially useful to restrict the list of available providers when
|
|
Packit Service |
c6b9b0 |
* requesting the creation of an account for a specific purpose (eg. from a
|
|
Packit Service |
c6b9b0 |
* chat program).
|
|
Packit Service |
c6b9b0 |
*
|
|
Packit Service |
c6b9b0 |
* Since: 3.10
|
|
Packit Service |
c6b9b0 |
*/
|
|
Packit Service |
c6b9b0 |
typedef enum /*< flags >*/
|
|
Packit Service |
c6b9b0 |
{
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_BRANDED = 1 << 1,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_MAIL = 1 << 2,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_CALENDAR = 1 << 3,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_CONTACTS = 1 << 4,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_CHAT = 1 << 5,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_DOCUMENTS = 1 << 6,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_PHOTOS = 1 << 7,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_FILES = 1 << 8,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_TICKETING = 1 << 9,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_READ_LATER= 1 << 10,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_PRINTERS = 1 << 11,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_MAPS = 1 << 12,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_MUSIC = 1 << 13,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_TODO = 1 << 14,
|
|
Packit Service |
c6b9b0 |
GOA_PROVIDER_FEATURE_INVALID = 0
|
|
Packit Service |
c6b9b0 |
} GoaProviderFeatures;
|
|
Packit Service |
c6b9b0 |
|
|
Packit Service |
c6b9b0 |
G_END_DECLS
|
|
Packit Service |
c6b9b0 |
|
|
Packit Service |
c6b9b0 |
#endif /* __GOA_BACKEND_ENUMS_H__ */
|