Branch data Line data Source code
1 : : /* 2 : : * gnome-keyring 3 : : * 4 : : * Copyright (C) 2011 Collabora Ltd. 5 : : * 6 : : * This program is free software; you can redistribute it and/or modify 7 : : * it under the terms of the GNU Lesser General Public License as 8 : : * published by the Free Software Foundation; either version 2.1 of 9 : : * the License, or (at your option) any later version. 10 : : * 11 : : * This program is distributed in the hope that it will be useful, but 12 : : * WITHOUT ANY WARRANTY; without even the implied warranty of 13 : : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 : : * Lesser General Public License for more details. 15 : : * 16 : : * You should have received a copy of the GNU Lesser General Public 17 : : * License along with this program; if not, see <http://www.gnu.org/licenses/>. 18 : : * 19 : : * Author: Stef Walter <stefw@collabora.co.uk> 20 : : */ 21 : : 22 : : #ifndef __GCR_IMPORTER_H__ 23 : : #define __GCR_IMPORTER_H__ 24 : : 25 : : #if !defined (__GCR_INSIDE_HEADER__) && !defined (GCR_COMPILATION) 26 : : #error "Only <gcr/gcr.h> can be included directly." 27 : : #endif 28 : : 29 : : #include "gcr-parser.h" 30 : : 31 : : #include <glib-object.h> 32 : : 33 : : #include <gio/gio.h> 34 : : 35 : : G_BEGIN_DECLS 36 : : 37 : : #define GCR_TYPE_IMPORTER gcr_importer_get_type () 38 [ # # # # : 0 : G_DECLARE_INTERFACE (GcrImporter, gcr_importer, GCR, IMPORTER, GObject) # # ] 39 : : 40 : : struct _GcrImporterInterface { 41 : : GTypeInterface parent; 42 : : 43 : : GList * (*create_for_parsed) (GcrParsed *parsed); 44 : : 45 : : gboolean (*queue_for_parsed) (GcrImporter *importer, 46 : : GcrParsed *parsed); 47 : : 48 : : void (*import_async) (GcrImporter *importer, 49 : : GCancellable *cancellable, 50 : : GAsyncReadyCallback callback, 51 : : gpointer user_data); 52 : : 53 : : gboolean (*import_finish) (GcrImporter *importer, 54 : : GAsyncResult *result, 55 : : GError **error); 56 : : 57 : : /*< private >*/ 58 : : gpointer reserved[14]; 59 : : }; 60 : : 61 : : GList * gcr_importer_create_for_parsed (GcrParsed *parsed); 62 : : 63 : : gboolean gcr_importer_queue_for_parsed (GcrImporter *importer, 64 : : GcrParsed *parsed); 65 : : 66 : : GList * gcr_importer_queue_and_filter_for_parsed (GList *importers, 67 : : GcrParsed *parsed); 68 : : 69 : : void gcr_importer_import_async (GcrImporter *importer, 70 : : GCancellable *cancellable, 71 : : GAsyncReadyCallback callback, 72 : : gpointer user_data); 73 : : 74 : : gboolean gcr_importer_import_finish (GcrImporter *importer, 75 : : GAsyncResult *result, 76 : : GError **error); 77 : : 78 : : GTlsInteraction * gcr_importer_get_interaction (GcrImporter *importer); 79 : : 80 : : void gcr_importer_set_interaction (GcrImporter *importer, 81 : : GTlsInteraction *interaction); 82 : : 83 : : void gcr_importer_register (GType importer_type, 84 : : GckAttributes *attrs); 85 : : 86 : : void gcr_importer_register_well_known (void); 87 : : 88 : : G_END_DECLS 89 : : 90 : : #endif /* __GCR_IMPORTER_H__ */