more records constructor work, no yet finished
[pazpar2-moved-to-github.git] / src / config.c
index 18da89c..b054335 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: config.c,v 1.27 2007-04-20 11:00:29 marc Exp $
+/* $Id: config.c,v 1.29 2007-04-23 08:48:50 marc Exp $
    Copyright (c) 2006-2007, Index Data.
 
 This file is part of Pazpar2.
@@ -19,7 +19,7 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 02111-1307, USA.
  */
 
-/* $Id: config.c,v 1.27 2007-04-20 11:00:29 marc Exp $ */
+/* $Id: config.c,v 1.29 2007-04-23 08:48:50 marc Exp $ */
 
 #include <string.h>
 
@@ -88,8 +88,12 @@ struct conf_sortkey * conf_sortkey_assign(NMEM nmem,
 struct conf_service * conf_service_create(NMEM nmem,
                                           int num_metadata, int num_sortkeys)
 {
-    struct conf_service * service
-        = nmem_malloc(nmem, sizeof(struct conf_service));
+    struct conf_service * service = 0;
+
+    //assert(nmem);
+    
+    service = nmem_malloc(nmem, sizeof(struct conf_service));
+
     service->num_metadata = num_metadata;
     service->metadata = 0;
     if (service->num_metadata)
@@ -150,6 +154,20 @@ struct conf_sortkey * conf_service_add_sortkey(NMEM nmem,
 }
 
 
+int conf_service_field_id(struct conf_service *service, const char * name)
+{
+    int i = 0;
+
+    if (!service || !service->metadata || !service->num_metadata)
+        return -1;
+
+    for(i = 0; i < service->num_metadata; i++) {
+        if (!strcmp(name, (service->metadata[i]).name))
+            return i;
+    }
+   
+    return -1;
+};