~ubuntu-branches/ubuntu/utopic/gnome-online-accounts/utopic

« back to all changes in this revision

Viewing changes to src/goabackend/goaprovider-priv.h

  • Committer: Package Import Robot
  • Author(s): Andreas Henriksson, Laurent Bigonville, Andreas Henriksson
  • Date: 2014-05-16 11:42:52 UTC
  • mfrom: (1.1.28) (0.1.12 sid)
  • Revision ID: package-import@ubuntu.com-20140516114252-u5ect6mk6ht8i38x
Tags: 3.12.2-1
[ Laurent Bigonville ]
* debian/control.in: Recommends realmd package (Closes: #725965)

[ Andreas Henriksson ]
* New upstream release.
  - Removes chat support from Windows Live provider (XMPP gateway gone).
* Bump Standards-Version to 3.9.5

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
2
2
/*
3
 
 * Copyright (C) 2013 Red Hat, Inc.
 
3
 * Copyright (C) 2013, 2014 Red Hat, Inc.
4
4
 *
5
5
 * This library is free software; you can redistribute it and/or
6
6
 * modify it under the terms of the GNU Lesser General Public
13
13
 * Lesser General Public License for more details.
14
14
 *
15
15
 * You should have received a copy of the GNU Lesser General
16
 
 * Public License along with this library; if not, write to the
17
 
 * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
18
 
 * Boston, MA 02111-1307, USA.
 
16
 * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
19
17
 *
20
18
 * Author: Debarshi Ray <debarshir@gnome.org>
21
19
 */
30
28
G_BEGIN_DECLS
31
29
 
32
30
/**
 
31
 * GoaProvider:
 
32
 *
 
33
 * The #GoaProvider structure contains only private data and should
 
34
 * only be accessed using the provided API.
 
35
 */
 
36
struct _GoaProvider
 
37
{
 
38
  /*< private >*/
 
39
  GObject parent_instance;
 
40
  GoaProviderPrivate *priv;
 
41
};
 
42
 
 
43
/**
 
44
 * GoaProviderClass:
 
45
 * @parent_class: The parent class.
 
46
 * @get_provider_type: Virtual function for goa_provider_get_provider_type().
 
47
 * @get_provider_name: Virtual function for goa_provider_get_provider_name().
 
48
 * @get_provider_icon: Virtual function for goa_provider_get_provider_icon().
 
49
 * @get_provider_group: Virtual function for goa_provider_get_provider_group().
 
50
 * @get_provider_features: Virtual function for goa_provider_get_provider_features().
 
51
 * @add_account: Virtual function for goa_provider_add_account().
 
52
 * @refresh_account: Virtual function for goa_provider_refresh_account().
 
53
 * @build_object: Virtual function for goa_provider_build_object().
 
54
 * @ensure_credentials_sync: Virtual function for goa_provider_ensure_credentials_sync().
 
55
 * @show_account: Virtual function for goa_provider_show_account().
 
56
 * @get_credentials_generation: Virtual function for goa_provider_get_credentials_generation().
 
57
 *
 
58
 * Class structure for #GoaProvider.
 
59
 */
 
60
struct _GoaProviderClass
 
61
{
 
62
  GObjectClass parent_class;
 
63
 
 
64
  /* pure virtual */
 
65
  const gchar *(*get_provider_type) (GoaProvider        *provider);
 
66
  gchar       *(*get_provider_name) (GoaProvider        *provider,
 
67
                                     GoaObject          *object);
 
68
  GIcon       *(*get_provider_icon) (GoaProvider        *provider,
 
69
                                     GoaObject          *object);
 
70
  GoaObject   *(*add_account)       (GoaProvider        *provider,
 
71
                                     GoaClient          *client,
 
72
                                     GtkDialog          *dialog,
 
73
                                     GtkBox             *vbox,
 
74
                                     GError            **error);
 
75
  gboolean     (*refresh_account)   (GoaProvider        *provider,
 
76
                                     GoaClient          *client,
 
77
                                     GoaObject          *object,
 
78
                                     GtkWindow          *parent,
 
79
                                     GError            **error);
 
80
  void         (*show_account)      (GoaProvider         *provider,
 
81
                                     GoaClient           *client,
 
82
                                     GoaObject           *object,
 
83
                                     GtkBox              *vbox,
 
84
                                     GtkGrid             *grid,
 
85
                                     GtkGrid             *dummy);
 
86
  gboolean     (*build_object)      (GoaProvider        *provider,
 
87
                                     GoaObjectSkeleton  *object,
 
88
                                     GKeyFile           *key_file,
 
89
                                     const gchar        *group,
 
90
                                     GDBusConnection    *connection,
 
91
                                     gboolean            just_added,
 
92
                                     GError            **error);
 
93
  /* virtual but with default implementation */
 
94
  gboolean (*ensure_credentials_sync) (GoaProvider         *provider,
 
95
                                       GoaObject           *object,
 
96
                                       gint                *out_expires_in,
 
97
                                       GCancellable        *cancellable,
 
98
                                       GError             **error);
 
99
  guint    (*get_credentials_generation) (GoaProvider   *provider);
 
100
 
 
101
  /* pure virtual */
 
102
  GoaProviderGroup (*get_provider_group) (GoaProvider   *provider);
 
103
  GoaProviderFeatures  (*get_provider_features)     (GoaProvider   *provider);
 
104
 
 
105
  /*< private >*/
 
106
  /* Padding for future expansion */
 
107
  gpointer goa_reserved[31];
 
108
};
 
109
 
 
110
/**
33
111
 * GOA_PROVIDER_EXTENSION_POINT_NAME:
34
112
 *
35
113
 * Extension point for #GoaProvider implementations.