1 /* 2 * Copyright (C) 2015 Red Hat, Inc. (www.redhat.com) 3 * Copyright (C) 2018 Red Hat, Inc. (www.redhat.com) 4 * 5 * This library is free software: you can redistribute it and/or modify it 6 * under the terms of the GNU Lesser General Public License as published by 7 * the Free Software Foundation. 8 * 9 * This library is distributed in the hope that it will be useful, but 10 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 11 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License 12 * for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public License 15 * along with this library. If not, see <http://www.gnu.org/licenses/>. 16 * 17 */ 18 19 #if !defined (__LIBEDATASERVER_H_INSIDE__) && !defined (LIBEDATASERVER_COMPILATION) 20 #error "Only <libedataserver/libedataserver.h> should be included directly." 21 #endif 22 23 #ifndef E_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2_H 24 #define E_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2_H 25 26 #include <glib.h> 27 #include <glib-object.h> 28 29 #include <libedataserver/e-source.h> 30 #include <libedataserver/e-source-credentials-provider-impl.h> 31 32 /* Standard GObject macros */ 33 #define E_TYPE_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2 \ 34 (e_source_credentials_provider_impl_oauth2_get_type ()) 35 #define E_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2(obj) \ 36 (G_TYPE_CHECK_INSTANCE_CAST \ 37 ((obj), E_TYPE_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2, ESourceCredentialsProviderImplOAuth2)) 38 #define E_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2_CLASS(cls) \ 39 (G_TYPE_CHECK_CLASS_CAST \ 40 ((cls), E_TYPE_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2, ESourceCredentialsProviderImplOAuth2Class)) 41 #define E_IS_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2(obj) \ 42 (G_TYPE_CHECK_INSTANCE_TYPE \ 43 ((obj), E_TYPE_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2)) 44 #define E_IS_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2_CLASS(cls) \ 45 (G_TYPE_CHECK_CLASS_TYPE \ 46 ((cls), E_TYPE_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2)) 47 #define E_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2_GET_CLASS(obj) \ 48 (G_TYPE_INSTANCE_GET_CLASS \ 49 ((obj), E_TYPE_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2, ESourceCredentialsProviderImplOAuth2Class)) 50 51 G_BEGIN_DECLS 52 53 typedef struct _ESourceCredentialsProviderImplOAuth2 ESourceCredentialsProviderImplOAuth2; 54 typedef struct _ESourceCredentialsProviderImplOAuth2Class ESourceCredentialsProviderImplOAuth2Class; 55 typedef struct _ESourceCredentialsProviderImplOAuth2Private ESourceCredentialsProviderImplOAuth2Private; 56 57 /** 58 * ESourceCredentialsProviderImplOAuth2: 59 * 60 * OAuth2 based credentials provider implementation. 61 * 62 * Since: 3.28 63 **/ 64 struct _ESourceCredentialsProviderImplOAuth2 { 65 /*< private >*/ 66 ESourceCredentialsProviderImpl parent; 67 ESourceCredentialsProviderImplOAuth2Private *priv; 68 }; 69 70 struct _ESourceCredentialsProviderImplOAuth2Class { 71 ESourceCredentialsProviderImplClass parent_class; 72 }; 73 74 GType e_source_credentials_provider_impl_oauth2_get_type (void); 75 76 G_END_DECLS 77 78 #endif /* E_SOURCE_CREDENTIALS_PROVIDER_IMPL_OAUTH2_H */ 79