Added a backend per context
[cascardo/atompub.git] / src / backend.c
index cf72b30..c0f0162 100644 (file)
 
 #include <atompub/atom.h>
 
-extern Atom *giochannel_atom_retrieve_resource (AtomCtx *, IRI *);
+struct _atom_backend
+{
+  Atom * (*retrieve_resource) (AtomCtx *, IRI *);
+};
+
 
 Atom *
 atom_retrieve_resource (AtomCtx *ctx, IRI *iri)
 {
-  return giochannel_atom_retrieve_resource (ctx, iri);
+  AtomBackend *backend;
+  backend = atom_backend (ctx);
+  if (backend && backend->retrieve_resource)
+    return backend->retrieve_resource (ctx, iri);
+  return NULL;
 }