Example #1
0
static mapcache_pooled_connection* _sqlite_dimension_get_conn(mapcache_context *ctx, mapcache_tileset *tileset, mapcache_dimension_sqlite *dim) {
  mapcache_dimension *pdim = (mapcache_dimension*)dim;
  char *conn_key = apr_pstrcat(ctx->pool,"dim_",tileset?tileset->name:"","_",pdim->name,NULL);
  mapcache_pooled_connection *pc = mapcache_connection_pool_get_connection(ctx,conn_key,
        mapcache_sqlite_dimension_connection_constructor,
        mapcache_sqlite_dimension_connection_destructor, dim->dbfile);
  return pc;
}
Example #2
0
static mapcache_pooled_connection* _mapcache_memcache_get_conn(mapcache_context *ctx,
        mapcache_cache_memcache *cache, mapcache_tile *tile) {
  mapcache_pooled_connection *pc;
  struct mapcache_memcache_conn_param param;

  param.cache = cache;

  pc = mapcache_connection_pool_get_connection(ctx,cache->cache.name, mapcache_memcache_connection_constructor, mapcache_memcache_connection_destructor, &param);
  return pc;
}
Example #3
0
static mapcache_pooled_connection* _riak_get_connection(mapcache_context *ctx, mapcache_cache_riak *cache, mapcache_tile *tile)
{
    mapcache_pooled_connection *pc;
    struct riak_conn_params params;

    params.cache = cache;

    pc = mapcache_connection_pool_get_connection(ctx,cache->cache.name,mapcache_riak_connection_constructor,
            mapcache_riak_connection_destructor, &params);

    return pc;
}
Example #4
0
static mapcache_pooled_connection* _mapserver_get_connection(mapcache_context *ctx, mapcache_map *map)
{
  mapcache_pooled_connection *pc;
  char *key = apr_psprintf(ctx->pool, "ms_src_%s", map->tileset->source->name);

  pc = mapcache_connection_pool_get_connection(ctx, key, mapcache_mapserver_connection_constructor,
          mapcache_mapserver_connection_destructor, map->tileset->source);
  if(!GC_HAS_ERROR(ctx) && pc && pc->connection) {
  }

  return pc;
}
Example #5
0
static mapcache_pooled_connection* mapcache_sqlite_get_conn(mapcache_context *ctx, mapcache_cache_sqlite *cache, mapcache_tile *tile, int readonly) {
    struct sqlite_conn_params params;
    mapcache_pooled_connection *pc;
    char *key;
    _mapcache_cache_sqlite_filename_for_tile(ctx,cache,tile,&params.dbfile);
    params.cache = cache;
    params.readonly = readonly;
    if(!strstr(cache->dbfile,"{")) {
        key = apr_pstrcat(ctx->pool,readonly?"ro_":"rw_",cache->cache.name,NULL);
    } else {
        key = apr_pstrcat(ctx->pool,readonly?"ro_":"rw_",params.dbfile,NULL);
    }
    pc = mapcache_connection_pool_get_connection(ctx,key,mapcache_sqlite_connection_constructor,mapcache_sqlite_connection_destructor,&params);
    return pc;
}