static int mod_init(void) { cachedb_engine cde; LM_NOTICE("initializing module cachedb_memcached\n"); cde.name = cache_mod_name; cde.cdb_func.init = memcached_init; cde.cdb_func.destroy = memcached_destroy; cde.cdb_func.get = wrap_memcached_get; cde.cdb_func.get_counter = wrap_memcached_get_counter; cde.cdb_func.set = wrap_memcached_insert; cde.cdb_func.remove = wrap_memcached_remove; cde.cdb_func.add = wrap_memcached_add; cde.cdb_func.sub = wrap_memcached_sub; cde.cdb_func.capability = CACHEDB_CAP_BINARY_VALUE; if (register_cachedb(&cde) < 0) { LM_ERR("failed to initialize cachedb_memcached\n"); return -1; } LM_DBG("succesfully inited cachedb_memcached\n"); return 0; }
/** * init module function */ static int mod_init(void) { cachedb_engine cde; LM_NOTICE("initializing module cachedb_redis ...\n"); memset(&cde,0,sizeof(cachedb_engine)); cde.name = cache_mod_name; cde.cdb_func.init = redis_init; cde.cdb_func.destroy = redis_destroy; cde.cdb_func.get = redis_get; cde.cdb_func.get_counter = redis_get_counter; cde.cdb_func.set = redis_set; cde.cdb_func.remove = redis_remove; cde.cdb_func.add = redis_add; cde.cdb_func.sub = redis_sub; cde.cdb_func.raw_query = redis_raw_query; cde.cdb_func.capability = 0; if (register_cachedb(&cde) < 0) { LM_ERR("failed to initialize cachedb_redis\n"); return -1; } return 0; }
/** * init module function */ static int mod_init(void) { cachedb_engine cde; LM_NOTICE("initializing module cachedb_couchbase ...\n"); cde.name = cache_mod_name; cde.cdb_func.init = couchbase_init; cde.cdb_func.destroy = couchbase_destroy; cde.cdb_func.get = couchbase_get; cde.cdb_func.get_counter = couchbase_get_counter; cde.cdb_func.set = couchbase_set; cde.cdb_func.remove = couchbase_remove; cde.cdb_func.add = couchbase_add; cde.cdb_func.sub = couchbase_sub; cde.cdb_func.capability = 0; if (register_cachedb(&cde) < 0) { LM_ERR("failed to initialize cachedb_couchbase\n"); return -1; } return 0; }
/** * init module function */ static int mod_init(void) { cachedb_engine cde; cachedb_con *con; str url=str_init("local://"); str name=str_init("local"); if(cache_htable_size< 1) cache_htable_size= 512; else cache_htable_size= 1<< cache_htable_size; if(lcache_htable_init(cache_htable_size) < 0) { LM_ERR("failed to initialize cache hash table\n"); return -1; } /* register the cache system */ cde.name = cache_mod_name; cde.cdb_func.init = lcache_init; cde.cdb_func.destroy = lcache_destroy; cde.cdb_func.get = lcache_htable_fetch; cde.cdb_func.get_counter = lcache_htable_fetch_counter; cde.cdb_func.set = lcache_htable_insert; cde.cdb_func.remove = lcache_htable_remove; cde.cdb_func.add = lcache_htable_add; cde.cdb_func.sub = lcache_htable_sub; cde.cdb_func.capability = CACHEDB_CAP_BINARY_VALUE; if(cache_clean_period <= 0 ) { LM_ERR("Worng parameter cache_clean_period - need a postive value\n"); return -1; } if( register_cachedb(&cde)< 0) { LM_ERR("failed to register to core memory store interface\n"); return -1; } /* insert connection for script */ con = lcache_init(&url); if (con == NULL) { LM_ERR("failed to init connection for script\n"); return -1; } if (cachedb_put_connection(&name,con) < 0) { LM_ERR("failed to insert connection for script\n"); return -1; } /* register timer to delete the expired entries */ register_timer("localcache-expire",localcache_clean, 0, cache_clean_period); return 0; }