Require atom entries to have ID, title and authors
[cascardo/atompub.git] / include / atompub / entry.h
index d577894..4e0869e 100644 (file)
 
 #include <sys/types.h>
 #include <atompub/person.h>
+#include <atompub/category.h>
+#include <atompub/id.h>
 
 typedef struct _atom_entry AtomEntry;
 
-AtomEntry * atom_entry_new (char *, AtomPerson *);
+AtomEntry * atom_entry_new (char *, char *, AtomPerson *);
 AtomEntry * atom_entry_new_data_len (char *, size_t);
 void atom_entry_delete (AtomEntry *);
-char * atom_entry_id (AtomEntry *);
-void atom_entry_id_set (AtomEntry *, char *);
+AtomID * atom_entry_id (AtomEntry *);
+void atom_entry_id_set (AtomEntry *, AtomID *);
 char * atom_entry_title (AtomEntry *);
 void atom_entry_title_set (AtomEntry *, char *);
-AtomPerson * atom_entry_person (AtomEntry *);
-void atom_entry_person_set (AtomEntry *, AtomPerson *);
+void atom_entry_authors (AtomEntry *, AtomPerson ***, size_t *);
+void atom_entry_author_add (AtomEntry *, AtomPerson *);
+void atom_entry_categories (AtomEntry *, AtomCategory ***, size_t *);
+void atom_entry_category_add (AtomEntry *, AtomCategory *);
 char * atom_entry_summary (AtomEntry *);
 void atom_entry_summary_set (AtomEntry *, char *);
-char * atom_entry_string (AtomEntry *);
-size_t atom_entry_len (AtomEntry *);
+void atom_entry_string (AtomEntry *, char **, size_t *);
 
 #endif