Updated copyright headers.
[yazpp-moved-to-github.git] / src / yaz-marc-sample.cpp
index 9895359..c83dd74 100644 (file)
@@ -1,13 +1,13 @@
-/*
- * Copyright (c) 2000-2001, Index Data.
+/* This file is part of the yazpp toolkit.
+ * Copyright (C) 1998-2008 Index Data and Mike Taylor
  * See the file LICENSE for details.
- * 
- * $Id: yaz-marc-sample.cpp,v 1.4 2003-09-23 16:26:16 mike Exp $
  */
 
-#include <yaz++/z-server.h>
+#include <yazpp/z-server.h>
+
+using namespace yazpp_1;
 
-static char *marc_records[] = {
+static const char *marc_records[] = {
   "\x30\x30\x33\x36\x36\x6E\x61\x6D\x20\x20\x32\x32\x30\x30\x31\x36"
   "\x39\x38\x61\x20\x34\x35\x30\x30\x30\x30\x31\x30\x30\x31\x33\x30"
   "\x30\x30\x30\x30\x30\x30\x33\x30\x30\x30\x34\x30\x30\x30\x31\x33"
@@ -1478,9 +1478,18 @@ static char *marc_records[] = {
   "\x77\x6F\x72\x6B\x2C\x20\x4E\x44\x4E\x2E\x1E\x1D"
 };
 
-const char *Yaz_USMARC::get_record(int position)
+const char *Yaz_USMARC::get_record(size_t position)
 {
-    int max = sizeof(marc_records) / sizeof(*marc_records);
-    int eff_pos = (position-1) % max;
-    return marc_records[eff_pos];
+    if (position >= 1 && position <= (
+            sizeof(marc_records) / sizeof(*marc_records)))
+        return marc_records[position-1];
+    return 0;
 }
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+