private InKvsPartitionMapService(DynamicPartitionMapImpl partitionMap, KeyValueService storage) { this.storage = storage; storage.createTable(PARTITION_MAP_TABLE, 1234); if (partitionMap != null) { updateMap(partitionMap); } }
/** * Only instances of {@code DynamicPartitionMapImpl} are supported by this implementation. * * @param partitionMap Must be instance of {@code DynamicPartitionMapImpl}. */ @Override public synchronized void updateMap(DynamicPartitionMap partitionMap) { if (!(partitionMap instanceof DynamicPartitionMapImpl)) { throw new IllegalArgumentException( "Only instances of DynamicPartitionMapImpl are supported!"); } DynamicPartitionMapImpl dpmi = (DynamicPartitionMapImpl) partitionMap; storage.createTable(PARTITION_MAP_TABLE, 1234); storage.truncateTable(PARTITION_MAP_TABLE); storage.put(PARTITION_MAP_TABLE, dpmi.toTable(), 0L); }