Added routine res_get_int which returns resource value as int.
authorAdam Dickmeiss <adam@indexdata.dk>
Mon, 13 Jun 2005 10:27:52 +0000 (10:27 +0000)
committerAdam Dickmeiss <adam@indexdata.dk>
Mon, 13 Jun 2005 10:27:52 +0000 (10:27 +0000)
include/idzebra/res.h
util/res.c

index 2a7c296..da219d5 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: res.h,v 1.4 2005-03-30 09:25:23 adam Exp $
+/* $Id: res.h,v 1.5 2005-06-13 10:27:52 adam Exp $
    Copyright (C) 1995-2005
    Index Data ApS
 
@@ -58,6 +58,9 @@ YAZ_EXPORT
 const char *res_get_prefix (Res r, const char *name, const char *prefix,
                            const char *def);
 
+YAZ_EXPORT
+ZEBRA_RES res_get_int(Res r, const char *name, int *val);
+
 YAZ_END_CDECL
 
 #endif
index af41a8b..4714c68 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: res.c,v 1.41 2005-04-15 10:47:49 adam Exp $
+/* $Id: res.c,v 1.42 2005-06-13 10:27:52 adam Exp $
    Copyright (C) 1995-2005
    Index Data ApS
 
@@ -455,3 +455,14 @@ int res_write (Res r)
     return 0;
 }
 
+ZEBRA_RES res_get_int(Res r, const char *name, int *val)
+{
+    const char *cp = res_get(r, name);
+    if (cp)
+    {
+       if (sscanf(cp, "%d", val) == 1)
+           return ZEBRA_OK;
+       yaz_log(YLOG_WARN, "Expected integer for resource %s", name);
+    }
+    return ZEBRA_FAIL;
+}