Add runtime configuration to perl lib
authorChip Black <bytex64@bytex64.net>
Fri, 27 Feb 2015 06:37:03 +0000 (00:37 -0600)
committerChip Black <bytex64@bytex64.net>
Fri, 27 Feb 2015 06:37:03 +0000 (00:37 -0600)
lib/perl/Blerg-Database/Database.xs
lib/perl/Blerg-Database/lib/Blerg/Database.pm

index 536bbe1..97b426c 100644 (file)
@@ -10,6 +10,7 @@
 #include "database/tags.h"
 #include "database/subscription.h"
 #include "database/util.h"
+#include "database/configuration.h"
 #include "common/auth.h"
 
 #include "const-c.inc"
@@ -210,3 +211,15 @@ void auth_get_counter(const char *username)
         } else {
             XSRETURN_UNDEF;
         }
+
+void configuration()
+    INIT:
+        HV *confhash;
+    PPCODE:
+        confhash = newHV();
+        hv_store(confhash, "base_path", 9, newSVpv(blergconf.base_path, 0), 0);
+        hv_store(confhash, "data_path", 9, newSVpv(blergconf.data_path, 0), 0);
+        hv_store(confhash, "hash_tags_path", 14, newSVpv(blergconf.hash_tags_path, 0), 0);
+        hv_store(confhash, "ref_tags_path", 13, newSVpv(blergconf.ref_tags_path, 0), 0);
+
+        XPUSHs(sv_2mortal(newRV_noinc((SV*)confhash)));
index b75b3f7..e462860 100644 (file)
@@ -244,6 +244,30 @@ Validates that C<name> is a valid tag name.
 
 Validates that C<name> is a valid username.
 
+=item configuration()
+
+Returns a hashref containing runtime configuration information.  Contains these fields:
+
+=over
+
+=item base_path
+
+The base path to the BlĂ«rg database
+
+=item data_path
+
+The path under base_path for account data
+
+=item hash_tags_path
+
+The path under base_path for hashtag data
+
+=item ref_tags_path
+
+The path under base_path for mention data
+
+=back
+
 =back
 
 =head2 AUTHENTICATION