Remove Atom Resource
authorThadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Mon, 13 Oct 2008 00:51:15 +0000 (21:51 -0300)
committerThadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Mon, 13 Oct 2008 00:51:15 +0000 (21:51 -0300)
This is required as the next step is to make the frontend decide if the
requested resource is a feed or an entry, instead of the backend.

atom/Makefile.am
atom/backend.c
atom/resource.c [deleted file]
frontend/cgi/cgi.c
include/atompub/Makefile.am
include/atompub/atom.h
include/atompub/backend.h
include/atompub/resource.h [deleted file]

index 28f1a27..28a604e 100644 (file)
@@ -1,5 +1,5 @@
 lib_LTLIBRARIES = libatom.la
-libatom_la_SOURCES = id.c entry.c person.c feed.c resource.c \
+libatom_la_SOURCES = id.c entry.c person.c feed.c \
                config.c ctx.c backend.c error.c frontend.c
 libatom_la_CFLAGS = -I$(top_srcdir)/include $(GLIB_CFLAGS)
 libatom_la_CFLAGS += $(XML_CFLAGS) $(GIO_CFLAGS)
index 734e6d2..d517748 100644 (file)
@@ -157,29 +157,3 @@ atom_retrieve_feed (AtomCtx *ctx)
   g_free (entries);
   return feed;
 }
-
-AtomResource *
-atom_retrieve_resource (AtomCtx *ctx, AtomID *id)
-{
-  AtomResource *res;
-  res = NULL;
-  if (atom_is_feed (ctx, id))
-    {
-      AtomFeed *feed;
-      feed = atom_retrieve_feed (ctx);
-      if (feed == NULL)
-        return NULL;
-      res = atom_resource_new_from_feed (feed);
-      atom_feed_delete (feed);
-    }
-  else if (atom_error_get (ctx) == NULL)
-    {
-      AtomEntry *entry;
-      entry = atom_retrieve_entry (ctx, id);
-      if (entry == NULL)
-        return NULL;
-      res = atom_resource_new_from_entry (entry);
-      atom_entry_delete (entry);
-    }
-  return res;
-}
diff --git a/atom/resource.c b/atom/resource.c
deleted file mode 100644 (file)
index 00d76fe..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- *  Copyright (C) 2008  Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License along
- *  with this program; if not, write to the Free Software Foundation, Inc.,
- *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-
-#include <atompub/atom.h>
-
-#include <glib.h>
-
-struct _atom_resource
-{
-  char *str;
-  size_t len;
-};
-
-AtomResource *
-atom_resource_new_from_feed (AtomFeed *feed)
-{
-  AtomResource *res;
-  res = g_slice_new (AtomResource);
-  atom_feed_string (feed, &(res->str), &(res->len));
-  return res;
-}
-
-AtomResource *
-atom_resource_new_from_entry (AtomEntry *entry)
-{
-  AtomResource *res;
-  res = g_slice_new (AtomResource);
-  atom_entry_string (entry, &(res->str), &(res->len));
-  return res;
-}
-
-void
-atom_resource_delete (AtomResource *res)
-{
-  if (res->str)
-    g_free (res->str);
-  g_slice_free (AtomResource, res);
-}
-
-void
-atom_resource_string (AtomResource *res, char **buffer, size_t *len)
-{
-  if (buffer)
-    *buffer = g_strdup (res->str);
-  if (len)
-    *len = res->len;
-}
index 3c5d72a..069a073 100644 (file)
@@ -46,10 +46,10 @@ cgi_serve_request (AtomCtx *ctx)
   if (!strcmp (method, "GET"))
     {
       AtomID *id;
-      AtomResource *atom;
+      AtomEntry *atom;
       AtomError *error;
       id = atom_id_new (path);
-      atom = atom_retrieve_resource (ctx, id);
+      atom = atom_retrieve_entry (ctx, id);
       atom_id_delete (id);
       if (atom)
        {
@@ -57,10 +57,10 @@ cgi_serve_request (AtomCtx *ctx)
          size_t len;
          char *header = "Content-type: application/atom+xml\n\n";
          write (1, header, strlen (header));
-         atom_resource_string (atom, &str, &len);
+         atom_entry_string (atom, &str, &len);
          write (1, str, len);
          g_free (str);
-         atom_resource_delete (atom);
+         atom_entry_delete (atom);
        }
       else if ((error = atom_error_get (ctx)) != NULL)
        {
index c30add5..3c00973 100644 (file)
@@ -1,4 +1,4 @@
 pkginclude_HEADERS = atom.h config.h ctx.h entry.h person.h error.h feed.h \
                id.h iri.h backend.h atom-glib.h error-glib.h atom-xml.h \
-               entry-xml.h person-xml.h feed-xml.h globals.h resource.h \
+               entry-xml.h person-xml.h feed-xml.h globals.h \
                map.h frontend.h
index 6ac66f3..e374963 100644 (file)
@@ -29,7 +29,6 @@
 #include <atompub/entry.h>
 #include <atompub/person.h>
 #include <atompub/feed.h>
-#include <atompub/resource.h>
 #include <atompub/backend.h>
 #include <atompub/map.h>
 #include <atompub/frontend.h>
index 5a42ae2..d423212 100644 (file)
@@ -39,7 +39,6 @@ AtomEntry * atom_retrieve_entry (AtomCtx *, AtomID *);
 void atom_enumerate_entries (AtomCtx *, char ***, AtomEntry ***, size_t *);
 int atom_is_feed (AtomCtx *, AtomID *);
 AtomFeed * atom_retrieve_feed (AtomCtx *);
-AtomResource *atom_retrieve_resource (AtomCtx *, AtomID *);
 AtomBackend * atom_backend (AtomCtx *);
 void atom_backend_set (AtomCtx *, AtomBackend *);
 
diff --git a/include/atompub/resource.h b/include/atompub/resource.h
deleted file mode 100644 (file)
index a6a7f26..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- *  Copyright (C) 2008  Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License along
- *  with this program; if not, write to the Free Software Foundation, Inc.,
- *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-
-#ifndef ATOMPUB_RESOURCE_H
-#define ATOMPUB_RESOURCE_H
-
-#include <atompub/ctx.h>
-#include <atompub/feed.h>
-#include <atompub/entry.h>
-
-typedef struct _atom_resource AtomResource;
-
-AtomResource * atom_resource_new_from_feed (AtomFeed *);
-AtomResource * atom_resource_new_from_entry (AtomEntry *);
-void atom_resource_delete (AtomResource *);
-void atom_resource_string (AtomResource *, char **, size_t *);
-
-#endif