本文整理汇总了Java中com.mysql.fabric.ShardMappingFactory类的典型用法代码示例。如果您正苦于以下问题:Java ShardMappingFactory类的具体用法?Java ShardMappingFactory怎么用?Java ShardMappingFactory使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ShardMappingFactory类属于com.mysql.fabric包,在下文中一共展示了ShardMappingFactory类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getShardMappings
import com.mysql.fabric.ShardMappingFactory; //导入依赖的package包/类
/**
* Retrieve a set of complete shard mappings. The returned mappings include all information
* available about the mapping.
*
* @param shardMappingIdPattern
* the shard mapping id to retrieve
*/
public FabricStateResponse<Set<ShardMapping>> getShardMappings(String shardMappingIdPattern) throws FabricCommunicationException {
int version = 0;
Object args[] = new Object[] { version, shardMappingIdPattern }; // common to all calls
Response mapsResponse = errorSafeCallMethod(METHOD_DUMP_SHARD_MAPS, args);
// use the lowest ttl of all the calls
long minExpireTimeMillis = System.currentTimeMillis() + TimeUnit.SECONDS.toMillis(mapsResponse.getTtl());
int baseTtl = mapsResponse.getTtl();
// construct the maps
Set<ShardMapping> mappings = new HashSet<ShardMapping>();
for (Map<String, ?> rawMapping : mapsResponse.getResultSet()) {
int mappingId = (Integer) rawMapping.get(FIELD_MAPPING_ID);
ShardingType shardingType = ShardingType.valueOf((String) rawMapping.get(FIELD_TYPE_NAME));
String globalGroupName = (String) rawMapping.get(FIELD_GLOBAL_GROUP_ID);
FabricStateResponse<Set<ShardTable>> tables = getShardTables(mappingId);
FabricStateResponse<Set<ShardIndex>> indices = getShardIndices(mappingId);
if (tables.getExpireTimeMillis() < minExpireTimeMillis) {
minExpireTimeMillis = tables.getExpireTimeMillis();
}
if (indices.getExpireTimeMillis() < minExpireTimeMillis) {
minExpireTimeMillis = indices.getExpireTimeMillis();
}
ShardMapping m = new ShardMappingFactory().createShardMapping(mappingId, shardingType, globalGroupName, tables.getData(), indices.getData());
mappings.add(m);
}
return new FabricStateResponse<Set<ShardMapping>>(mappings, baseTtl, minExpireTimeMillis);
}
示例2: getShardMappings
import com.mysql.fabric.ShardMappingFactory; //导入依赖的package包/类
/**
* Retrieve a set of complete shard mappings. The returned mappings include all information
* available about the mapping.
*
* @param shardMappingIdPattern
* the shard mapping id to retrieve
*/
public FabricStateResponse<Set<ShardMapping>> getShardMappings(String shardMappingIdPattern) throws FabricCommunicationException {
int version = 0;
Object args[] = new Object[] { version, shardMappingIdPattern }; // common to all calls
Response mapsResponse = errorSafeCallMethod(METHOD_DUMP_SHARD_MAPS, args);
// use the lowest ttl of all the calls
long minExpireTimeMillis = System.currentTimeMillis() + (1000 * mapsResponse.getTtl());
// construct the maps
Set<ShardMapping> mappings = new HashSet<ShardMapping>();
for (Map rawMapping : mapsResponse.getResultSet()) {
int mappingId = (Integer) rawMapping.get(FIELD_MAPPING_ID);
ShardingType shardingType = ShardingType.valueOf((String) rawMapping.get(FIELD_TYPE_NAME));
String globalGroupName = (String) rawMapping.get(FIELD_GLOBAL_GROUP_ID);
FabricStateResponse<Set<ShardTable>> tables = getShardTables(mappingId);
FabricStateResponse<Set<ShardIndex>> indices = getShardIndices(mappingId);
if (tables.getExpireTimeMillis() < minExpireTimeMillis) {
minExpireTimeMillis = tables.getExpireTimeMillis();
}
if (indices.getExpireTimeMillis() < minExpireTimeMillis) {
minExpireTimeMillis = indices.getExpireTimeMillis();
}
ShardMapping m = new ShardMappingFactory().createShardMapping(mappingId, shardingType, globalGroupName, tables.getData(), indices.getData());
mappings.add(m);
}
return new FabricStateResponse<Set<ShardMapping>>(mappings, minExpireTimeMillis);
}
示例3: getShardMappings
import com.mysql.fabric.ShardMappingFactory; //导入依赖的package包/类
/**
* Retrieve a set of complete shard mappings. The returned mappings include all information
* available about the mapping.
* @param shardMappingIdPattern the shard mapping id to retrieve
*/
public FabricStateResponse<Set<ShardMapping>> getShardMappings(String shardMappingIdPattern) throws FabricCommunicationException {
int version = 0;
Object args[] = new Object[] {version, shardMappingIdPattern}; // common to all calls
DumpResponse mapsResponse = callDumpMethod("dump.shard_maps", args);
// use the lowest ttl of all the calls
long minExpireTimeMillis = System.currentTimeMillis() + (1000 * mapsResponse.getTtl());
// construct the maps
Set<ShardMapping> mappings = new HashSet<ShardMapping>();
for (List rawMapping : (List<List>) mapsResponse.getReturnValue()) {
String mappingId = (String)rawMapping.get(0);
ShardingType shardingType = ShardingType.valueOf((String)rawMapping.get(1));
String globalGroupName = (String)rawMapping.get(2);
FabricStateResponse<Set<ShardTable>> tables = getShardTables(mappingId);
FabricStateResponse<Set<ShardIndex>> indices = getShardIndices(mappingId);
if (tables.getExpireTimeMillis() < minExpireTimeMillis)
minExpireTimeMillis = tables.getExpireTimeMillis();
if (indices.getExpireTimeMillis() < minExpireTimeMillis)
minExpireTimeMillis = indices.getExpireTimeMillis();
ShardMapping m = new ShardMappingFactory().createShardMapping(mappingId, shardingType, globalGroupName,
tables.getData(), indices.getData());
mappings.add(m);
}
return new FabricStateResponse<Set<ShardMapping>>(mappings, minExpireTimeMillis);
}