public List<TblColRef> getAllGlobalDictColumns() { List<TblColRef> globalDictCols = new ArrayList<TblColRef>(); List<DictionaryDesc> dictionaryDescList = getDictionaries(); if (dictionaryDescList == null) { return globalDictCols; } for (DictionaryDesc dictionaryDesc : dictionaryDescList) { String cls = dictionaryDesc.getBuilderClass(); if (GlobalDictionaryBuilder.class.getName().equals(cls) || SegmentAppendTrieDictBuilder.class.getName().equals(cls)) globalDictCols.add(dictionaryDesc.getColumnRef()); } return globalDictCols; }
@Override public void validate(CubeDesc cubeDesc, ValidateContext context) { List<DictionaryDesc> dictDescs = cubeDesc.getDictionaries(); Set<TblColRef> dimensionColumns = cubeDesc.listDimensionColumnsIncludingDerived(); RowKeyDesc rowKeyDesc = cubeDesc.getRowkey();
if (cubeDesc.getDictionaries() != null) { for (DictionaryDesc dictDesc : cubeDesc.getDictionaries()) { TblColRef c = dictDesc.getColumnRef(); initAddColumn(c);
private void testDictionaryDesc(String expectMessage, DictionaryDesc... descs) throws IOException { DictionaryRule rule = new DictionaryRule(); File f = new File(LocalFileMetadataTestCase.LOCALMETA_TEST_DATA + "/cube_desc/test_kylin_cube_without_slr_left_join_desc.json"); CubeDesc desc = JsonUtil.readValue(new FileInputStream(f), CubeDesc.class); List<DictionaryDesc> newDicts = Lists.newArrayList(desc.getDictionaries()); for (DictionaryDesc dictDesc : descs) { newDicts.add(dictDesc); } desc.setDictionaries(newDicts); desc.init(config); ValidateContext vContext = new ValidateContext(); rule.validate(desc, vContext); if (expectMessage == null) { assertTrue(vContext.getResults().length == 0); } else { assertTrue(vContext.getResults().length == 1); String actualMessage = vContext.getResults()[0].getMessage(); assertTrue(actualMessage.startsWith(expectMessage)); } } }
newCubeDesc.setDimensions(cubeDesc.getDimensions()); newCubeDesc.setMeasures(cubeDesc.getMeasures()); newCubeDesc.setDictionaries(cubeDesc.getDictionaries()); newCubeDesc.setRowkey(cubeDesc.getRowkey()); newCubeDesc.setHbaseMapping(cubeDesc.getHbaseMapping());
public List<TblColRef> getAllGlobalDictColumns() { List<TblColRef> globalDictCols = new ArrayList<TblColRef>(); List<DictionaryDesc> dictionaryDescList = getDictionaries(); if (dictionaryDescList == null) { return globalDictCols; } for (DictionaryDesc dictionaryDesc : dictionaryDescList) { String cls = dictionaryDesc.getBuilderClass(); if (GlobalDictionaryBuilder.class.getName().equals(cls) || SegmentAppendTrieDictBuilder.class.getName().equals(cls)) globalDictCols.add(dictionaryDesc.getColumnRef()); } return globalDictCols; }
@Override public void validate(CubeDesc cubeDesc, ValidateContext context) { List<DictionaryDesc> dictDescs = cubeDesc.getDictionaries(); Set<TblColRef> dimensionColumns = cubeDesc.listDimensionColumnsIncludingDerived(); RowKeyDesc rowKeyDesc = cubeDesc.getRowkey();
if (cubeDesc.getDictionaries() != null) { for (DictionaryDesc dictDesc : cubeDesc.getDictionaries()) { TblColRef c = dictDesc.getColumnRef(); initAddColumn(c);
newCubeDesc.setDimensions(cubeDesc.getDimensions()); newCubeDesc.setMeasures(cubeDesc.getMeasures()); newCubeDesc.setDictionaries(cubeDesc.getDictionaries()); newCubeDesc.setRowkey(cubeDesc.getRowkey()); newCubeDesc.setHbaseMapping(cubeDesc.getHbaseMapping());