use of com.navercorp.pinpoint.hbase.schema.reader.core.TableConfiguration in project pinpoint by naver.
the class XmlHbaseSchemaParserTest method parseSchema.
@Test
public void parseSchema() {
final String schemaFile = "hbase-schema/test-hbase-schema.xml";
TableConfiguration expectedChangeSet1_tableConfiguration = new TableConfiguration.Builder().durability(TableConfiguration.Durability.ASYNC_WAL).build();
List<ColumnFamilyChange> expectedChangeSet1_columnFamilies = Arrays.asList(new CreateColumnFamilyChange("CF1", new ColumnFamilyConfiguration.Builder().timeToLive(86400).dataBlockEncoding(ColumnFamilyConfiguration.DataBlockEncoding.NONE).build()), new CreateColumnFamilyChange("CF2", ColumnFamilyConfiguration.EMPTY_CONFIGURATION));
CreateTableChange.SplitOption expectedChangeSet1_tableSplitOption = new CreateTableChange.SplitOption.Auto(16);
TableChange expectedChangeSet1_tableChange = new CreateTableChange("Table1", expectedChangeSet1_tableConfiguration, expectedChangeSet1_columnFamilies, expectedChangeSet1_tableSplitOption);
List<ColumnFamilyChange> expectedChangeSet2_columnFamilies = Arrays.asList(new CreateColumnFamilyChange("CF3", ColumnFamilyConfiguration.EMPTY_CONFIGURATION));
TableChange expectedChangeSet2_tableChange = new ModifyTableChange("Table1", TableConfiguration.EMPTY_CONFIGURATION, expectedChangeSet2_columnFamilies);
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(schemaFile);
XmlHbaseSchemaParseResult parseResult = parser.parseSchema(new InputSource(inputStream));
List<String> includeFiles = new ArrayList<>(parseResult.getIncludeFiles());
assertThat(includeFiles.size(), is(1));
String includeFile = includeFiles.get(0);
assertThat(includeFile, is("test-hbase-schema-include.xml"));
List<ChangeSet> changeSets = new ArrayList<>(parseResult.getChangeSets());
assertThat(changeSets.size(), is(2));
ChangeSet changeSet1 = changeSets.get(0);
assertThat(changeSet1.getId(), is("id-1"));
assertThat(changeSet1.getTableChanges(), is(Arrays.asList(expectedChangeSet1_tableChange)));
ChangeSet changeSet2 = changeSets.get(1);
assertThat(changeSet2.getId(), is("id-2"));
assertThat(changeSet2.getTableChanges(), is(Arrays.asList(expectedChangeSet2_tableChange)));
}
use of com.navercorp.pinpoint.hbase.schema.reader.core.TableConfiguration in project pinpoint by naver.
the class TableChangeMapper method map.
public TableChange map(ChangeSet.CreateTable createTable) {
String tableName = createTable.getName();
if (StringUtils.isEmpty(tableName)) {
throw new InvalidHbaseSchemaException("Table name must not be empty");
}
TableConfiguration tableConfiguration = tableConfigurationMapper.mapConfiguration(createTable.getConfiguration());
List<ColumnFamilyChange> columnFamilyChanges = mapColumnFamilies(createTable.getCreateColumnFamily());
CreateTableChange.SplitOption splitOption = splitOptionMapper.mapSplitOption(createTable.getSplit());
return new CreateTableChange(tableName, tableConfiguration, columnFamilyChanges, splitOption);
}
Aggregations