]> git.evergreen-ils.org Git - OpenSRF.git/blob - src/libstack/opensrf.c
added list and hash code based on libJudy
[OpenSRF.git] / src / libstack / opensrf.c
1 #include "osrf_system.h"
2 #include "osrf_hash.h"
3 #include "osrf_list.h"
4
5 //static void _free(void* i) { free(i); }
6 //static void _hfree(char* c, void* i) { free(i); }
7
8 int main( int argc, char* argv[] ) {
9
10         /*
11         osrfHash* list = osrfNewHash();
12         list->freeItem = _hfree;
13
14         char* x = strdup("X");
15         char* y = strdup("Y");
16         char* z = strdup("Z");
17         osrfHashSet( list, x, "test1" );
18         osrfHashSet( list, y, "test2" );
19         osrfHashSet( list, z, "test3" );
20
21         char* q = (char*) osrfHashGet( list, "test1" );
22         printf( "%s\n", q );
23
24         q = (char*) osrfHashGet( list, "test2" );
25         printf( "%s\n", q );
26
27         q = (char*) osrfHashGet( list, "test3" );
28         printf( "%s\n", q );
29
30         osrfHashIterator* itr = osrfNewHashIterator(list);
31         char* val;
32
33         while( (val = osrfHashIteratorNext(itr)) )
34                 printf("Iterated item: %s\n", val );
35
36         osrfHashIteratorReset(itr);
37         while( (val = osrfHashIteratorNext(itr)) )
38                 printf("Iterated item: %s\n", val );
39
40         printf( "Count: %lu\n", osrfHashGetCount(list));
41
42         osrfHashIteratorFree(itr);
43
44         osrfHashFree(list);
45
46         exit(1);
47
48         osrfList* list = osrfNewList();
49         list->freeItem = _free;
50
51         char* x = strdup("X");
52         char* y = strdup("Y");
53         char* z = strdup("Z");
54         osrfListSet( list, x, 0 );
55         osrfListSet( list, y, 2 );
56         osrfListSet( list, z, 4 );
57
58         char* q = (char*) osrfListGetIndex( list, 4 );
59         printf( "%s\n", q );
60
61         osrfListIterator* itr = osrfNewListIterator( list );
62         char* val;
63
64         while( (val = osrfListIteratorNext(itr)) ) 
65                 printf("Found val: %s\n", val );
66
67         osrfListIteratorReset(itr);
68         printf("\n");
69         while( (val = osrfListIteratorNext(itr)) ) 
70                 printf("Found val: %s\n", val );
71
72         osrfListIteratorFree(itr);
73
74         printf( "Count: %lu\n", osrfListGetCount(list));
75
76         osrfListFree(list);
77
78         exit(1);
79         */
80
81
82
83         if( argc < 4 ) {
84                 fprintf(stderr, "Usage: %s <host> <bootstrap_config> <config_context>\n", argv[0]);
85                 return 1;
86         }
87
88         fprintf(stderr, "Loading OpenSRF host %s with bootstrap config %s "
89                         "and config context %s\n", argv[1], argv[2], argv[3] );
90
91         char* host = strdup( argv[1] );
92         char* config = strdup( argv[2] );
93         char* context = strdup( argv[3] );
94
95         init_proc_title( argc, argv );
96         set_proc_title( "OpenSRF System" );
97
98         osrfSystemBootstrap( host, config, context );
99
100         free(host);
101         free(config);
102         free(context);
103
104         return 0;
105 }
106
107