public static StoreParams decode(JsonObject json) { StoreParamsBuilder builder = StoreParams.builder() ; for ( String key : json.keys() ) { String short_key = unkey(key) ; switch(short_key) { case fFileMode : builder.fileMode(FileMode.valueOf(getString(json, key))) ; break ; case fBlockSize: builder.blockSize(getInt(json, key)) ; break ; case fBlockReadCacheSize: builder.blockReadCacheSize(getInt(json, key)) ; break ; case fBlockWriteCacheSize: builder.blockWriteCacheSize(getInt(json, key)) ; break ; case fNode2NodeIdCacheSize: builder.node2NodeIdCacheSize(getInt(json, key)) ; break ; case fNodeId2NodeCacheSize: builder.nodeId2NodeCacheSize(getInt(json, key)) ; break ; case fNodeMissCacheSize: builder.nodeMissCacheSize(getInt(json, key)) ; break ; case fNodeTableBaseName: builder.nodeTableBaseName(getString(json, key)) ; break ; case fPrimaryIndexTriples: builder.primaryIndexTriples(getString(json, key)) ; break ; case fTripleIndexes: builder.tripleIndexes(getStringArray(json, key)) ; break ; case fPrimaryIndexQuads: builder.primaryIndexQuads(getString(json, key)) ; break ; case fQuadIndexes: builder.quadIndexes(getStringArray(json, key)) ; break ; case fPrefixTableBaseName: builder.prefixTableBaseName(getString(json, key)) ; break ; case fPrimaryIndexPrefix: builder.primaryIndexPrefix(getString(json, key)) ; break ; case fPrefixIndexes: builder.prefixIndexes(getStringArray(json, key)) ; break ; default: throw new TDBException("StoreParams key no recognized: "+key) ; } } return builder.build() ; }
@Override protected NodeTable createEmptyNodeTable() { StoreParams params = StoreParamsBuilder.create() .nodeId2NodeCacheSize(10) .node2NodeIdCacheSize(10) .nodeMissCacheSize(10).build() ; return BuildTestLib.makeNodeTable(Location.mem(), "test", params) ; } }
/** Using a base set of {@link StoreParams}, and update with dynamic parameters. * * @param baseParams * @param additionalParams * @return StoreParams */ public static StoreParams modify(StoreParams baseParams, StoreParamsDynamic additionalParams) { StoreParamsBuilder b = new StoreParamsBuilder(baseParams) ; // Merge explicitly set params if ( additionalParams.isSetFileMode() ) b.fileMode(additionalParams.getFileMode()) ; if ( additionalParams.isSetBlockReadCacheSize() ) b.blockReadCacheSize(additionalParams.getBlockReadCacheSize()) ; if ( additionalParams.isSetBlockWriteCacheSize() ) b.blockWriteCacheSize(additionalParams.getBlockWriteCacheSize()) ; if ( additionalParams.isSetNode2NodeIdCacheSize() ) b.node2NodeIdCacheSize(additionalParams.getNode2NodeIdCacheSize()) ; if ( additionalParams.isSetNodeId2NodeCacheSize() ) b.nodeId2NodeCacheSize(additionalParams.getNodeId2NodeCacheSize()) ; if ( additionalParams.isSetNodeMissCacheSize() ) b.nodeMissCacheSize(additionalParams.getNodeMissCacheSize()) ; return b.build(); }
@Test public void store_params_12() { String xs = "{ \"tdb.file_mode\": \"direct\" , \"tdb.block_size\": 2048 }" ; JsonObject x = JSON.parse(xs) ; StoreParams paramsExpected = StoreParams.builder().blockSize(2048).fileMode(FileMode.direct).build() ; StoreParams paramsActual = StoreParamsCodec.decode(x) ; assertEqualsStoreParams(paramsExpected,paramsActual) ; }
@Test public void store_params_22() { StoreParams params1 = StoreParams.builder() .blockReadCacheSize(0) .blockWriteCacheSize(1) .build(); StoreParams params2 = StoreParams.builder() .blockReadCacheSize(5) .build(); StoreParams params3 = StoreParamsBuilder.modify(params1, params2) ; assertFalse(params2.isSetBlockWriteCacheSize()) ; assertTrue(params3.isSetBlockReadCacheSize()) ; assertTrue(params3.isSetBlockWriteCacheSize()) ; assertEquals(5, params3.getBlockReadCacheSize().intValue()) ; // From params2 assertEquals(1, params3.getBlockWriteCacheSize().intValue()) ; // From params1, not params2(unset) }
@Test public void store_params_21() { StoreParams params1 = StoreParams.builder().blockReadCacheSize(0).build(); assertTrue(params1.isSetBlockReadCacheSize()) ; assertFalse(params1.isSetBlockWriteCacheSize()) ; StoreParams params2 = StoreParams.builder(params1).blockWriteCacheSize(0).build(); assertTrue(params2.isSetBlockReadCacheSize()) ; assertTrue(params2.isSetBlockWriteCacheSize()) ; assertFalse(params2.isSetNodeMissCacheSize()) ; }
@Test public void store_params_11() { String xs = "{ \"tdb.block_size\": 2048 }" ; JsonObject x = JSON.parse(xs) ; StoreParams paramsExpected = StoreParams.builder().blockSize(2048).build() ; StoreParams paramsActual = StoreParamsCodec.decode(x) ; assertEqualsStoreParams(paramsExpected,paramsActual) ; }
@Test public void store_params_20() { StoreParams params = StoreParams.builder().blockReadCacheSize(0).build(); assertTrue(params.isSetBlockReadCacheSize()) ; assertFalse(params.isSetBlockWriteCacheSize()) ; }
@Test public void store_params_04() { StoreParams params = StoreParams.builder().build() ; StoreParams params2 = roundTrip(params) ; assertEqualsStoreParams(params,params2) ; }
/** Build StoreParams, starting from given default values. * * @return StoreParamsBuilder */ public static StoreParamsBuilder builder(StoreParams params) { return StoreParamsBuilder.create(params) ; }
@Test public void store_params_12() { String xs = "{ \"tdb.file_mode\": \"direct\" , \"tdb.block_size\": 2048 }" ; JsonObject x = JSON.parse(xs) ; StoreParams paramsExpected = StoreParams.builder().blockSize(2048).fileMode(FileMode.direct).build() ; StoreParams paramsActual = StoreParamsCodec.decode(x) ; assertEqualsStoreParams(paramsExpected,paramsActual) ; }
@Test public void store_params_22() { StoreParams params1 = StoreParams.builder() .blockReadCacheSize(0) .blockWriteCacheSize(1) .build(); StoreParams params2 = StoreParams.builder() .blockReadCacheSize(5) .build(); StoreParams params3 = StoreParamsBuilder.modify(params1, params2) ; assertFalse(params2.isSetBlockWriteCacheSize()) ; assertTrue(params3.isSetBlockReadCacheSize()) ; assertTrue(params3.isSetBlockWriteCacheSize()) ; assertEquals(5, params3.getBlockReadCacheSize().intValue()) ; // From params2 assertEquals(1, params3.getBlockWriteCacheSize().intValue()) ; // From params1, not params2(unset) }
@Test public void store_params_21() { StoreParams params1 = StoreParams.builder().blockReadCacheSize(0).build(); assertTrue(params1.isSetBlockReadCacheSize()) ; assertFalse(params1.isSetBlockWriteCacheSize()) ; StoreParams params2 = StoreParams.builder(params1).blockWriteCacheSize(0).build(); assertTrue(params2.isSetBlockReadCacheSize()) ; assertTrue(params2.isSetBlockWriteCacheSize()) ; assertFalse(params2.isSetNodeMissCacheSize()) ; }
@Test public void store_params_11() { String xs = "{ \"tdb.block_size\": 2048 }" ; JsonObject x = JSON.parse(xs) ; StoreParams paramsExpected = StoreParams.builder().blockSize(2048).build() ; StoreParams paramsActual = StoreParamsCodec.decode(x) ; assertEqualsStoreParams(paramsExpected,paramsActual) ; }
@Test public void store_params_20() { StoreParams params = StoreParams.builder().blockReadCacheSize(0).build(); assertTrue(params.isSetBlockReadCacheSize()) ; assertFalse(params.isSetBlockWriteCacheSize()) ; }
@Test public void store_params_03() { StoreParams sp = StoreParams.builder().build() ; assertEqualsStoreParams(StoreParams.getDftStoreParams(), sp) ; }
/** Build StoreParams, starting from system defaults. * * @return StoreParamsBuilder */ public static StoreParamsBuilder builder() { return StoreParamsBuilder.create() ; }
@Override protected NodeTable createEmptyNodeTable() { StoreParams params = StoreParamsBuilder.create() .nodeId2NodeCacheSize(10) .node2NodeIdCacheSize(10) .nodeMissCacheSize(10).build() ; return BuildTestLib.makeNodeTable(Location.mem(), "test", params) ; } }
@Test public void store_params_10() { StoreParams params = StoreParams.builder().fileMode(FileMode.direct).blockSize(1024).build() ; StoreParams params2 = roundTrip(params) ; assertEqualsStoreParams(params,params2) ; assertEquals(params.getFileMode(), params2.getFileMode()) ; assertEquals(params.getBlockSize(), params2.getBlockSize()) ; }