void atom_backend_delete (AtomBackend *);
void atom_backend_retrieve_resource_set (AtomBackend *,
Atom * (AtomCtx *, IRI *));
+void atom_backend_enumerate_entries_set (AtomBackend *,
+ void (AtomCtx *, Atom ***, size_t *));
Atom * atom_retrieve_resource (AtomCtx *, IRI *);
+void atom_enumerate_entries (AtomCtx *, Atom ***, size_t *);
AtomBackend * atom_backend (AtomCtx *);
void atom_backend_set (AtomCtx *, AtomBackend *);
struct _atom_backend
{
Atom * (*retrieve_resource) (AtomCtx *, IRI *);
+ void (*enumerate_entries) (AtomCtx *, Atom ***, size_t *);
};
AtomBackend *
AtomBackend *backend;
backend = g_slice_new (AtomBackend);
backend->retrieve_resource = NULL;
+ backend->enumerate_entries = NULL;
return backend;
}
backend->retrieve_resource = retrieve_resource;
}
+void
+atom_backend_enumerate_entries_set (AtomBackend *backend,
+ void enumerate_entries (AtomCtx *,
+ Atom ***, size_t*))
+{
+ backend->enumerate_entries = enumerate_entries;
+}
+
Atom *
atom_retrieve_resource (AtomCtx *ctx, IRI *iri)
{
return backend->retrieve_resource (ctx, iri);
return NULL;
}
+
+void
+atom_backend_enumerate_entries (AtomCtx *ctx, Atom *** entries, size_t *len)
+{
+ AtomBackend *backend;
+ backend = atom_backend (ctx);
+ if (backend && backend->enumerate_entries)
+ {
+ backend->enumerate_entries (ctx, entries, len);
+ return;
+ }
+}