@Test public void testWithSingleValueConstructor() { EmbeddedColumnInfo embeddedColumnInfo = new EmbeddedColumnInfo(null); ColumnInfo col1 = new ColumnInfo(); col1.setColumnName("column1"); ColumnInfo columnInfo = new ColumnInfo(); columnInfo.setColumnName("column1"); columnInfo.setIndexable(true); columnInfo.setType(Integer.class); java.util.List<ColumnInfo> columns = new ArrayList<ColumnInfo>(); columns.add(columnInfo); columns.add(col1); embeddedColumnInfo.setColumns(columns); embeddedColumnInfo.setEmbeddedColumnName("embeddedColumn"); Assert.assertEquals("embeddedColumn", embeddedColumnInfo.getEmbeddedColumnName()); Assert.assertNull(embeddedColumnInfo.getEmbeddable()); Assert.assertEquals(2, embeddedColumnInfo.getColumns().size()); Assert.assertNotNull(embeddedColumnInfo.toString()); EmbeddedColumnInfo embedded2 = new EmbeddedColumnInfo(null); Assert.assertNotSame(embeddedColumnInfo, embedded2); }
/** * On embedded columns. * * @param translator * the translator * @param tableInfo * the table info * @param queryBuilder * the query builder * @param compositeEmbeddables * the composite embeddables */ private void onEmbeddedColumns(CQLTranslator translator, TableInfo tableInfo, StringBuilder queryBuilder, List compositeEmbeddables) { List<EmbeddedColumnInfo> embeddedColumns = tableInfo.getEmbeddedColumnMetadatas(); for (EmbeddedColumnInfo embColInfo : embeddedColumns) { if (!compositeEmbeddables.contains(embColInfo.getEmbeddable().getJavaType().getSimpleName())) { String cqlType = CQLTranslator.FROZEN + Constants.STR_LT + Constants.ESCAPE_QUOTE + embColInfo.getEmbeddable().getJavaType().getSimpleName() + Constants.ESCAPE_QUOTE + Constants.STR_GT + translator.COMMA_STR; translator.appendColumnName(queryBuilder, embColInfo.getEmbeddedColumnName(), cqlType); } } }
orderByColumns = order.value().split("\\s*,\\s*"); EmbeddedColumnInfo embeddedColumnInfo = new EmbeddedColumnInfo(embeddableType); embeddedColumnInfo.setEmbeddedColumnName(embeddableColName); Map<String, PropertyIndex> indexedColumns = IndexProcessor.getIndexesOnEmbeddable(embeddedEntityClass); List<ColumnInfo> columns = new ArrayList<ColumnInfo>(); columns.add(getColumn(tableInfo, attr, indexedColumns.get(attr.getName()), orderByColumns)); embeddedColumnInfo.setColumns(columns); return embeddedColumnInfo;
if (tableInfo.getIdColumnName().equals(embeddedColumnInfo.getEmbeddedColumnName())) for (ColumnInfo columnInfo : embeddedColumnInfo.getColumns())
for (EmbeddedColumnInfo compositeCol : compositeColumns) if (compositeCol.getEmbeddedColumnName().equals(tableInfo.getIdColumnName())) getCompositeIdEmbeddables(compositeId.getEmbeddable(), compositeEmbeddables, metaModel); compoEmbeddableType = compositeId.getEmbeddable(); onCompositeColumns(translator, compositeId.getColumns(), queryBuilder, columns, isCounterColumnType); appendClusteringOrder(translator, compositeColumns.get(0).getColumns(), clusterKeyOrderingBuilder, primaryKeyBuilder); if (clusterKeyOrderingBuilder.length() != 0)
/** * Adds the to indexed column list. * * @param indexInfo * the index info */ public void addToIndexedColumnList(IndexInfo indexInfo) { ColumnInfo columnInfo = new ColumnInfo(); columnInfo.setColumnName(indexInfo.getColumnName()); if (getEmbeddedColumnMetadatas().isEmpty() || !getEmbeddedColumnMetadatas().get(0).getColumns().contains(columnInfo)) { if (!columnToBeIndexed.contains(indexInfo)) { columnToBeIndexed.add(indexInfo); } } } }
if (compositeColumns != null && !compositeColumns.isEmpty()) EmbeddableType embeddableType = compositeColumns.get(0).getEmbeddable(); for (ColumnInfo columnInfo : compositeColumns.get(0).getColumns())
if (embColumnInfo.getEmbeddedColumnName().equals(tableInfo.getIdColumnName()))
/** * @param tableInfo * @param collection */ private void createIndexes(TableInfo tableInfo, DBCollection collection) { // index normal column for (ColumnInfo columnInfo : tableInfo.getColumnMetadatas()) { if (columnInfo.isIndexable()) { IndexInfo indexInfo = tableInfo.getColumnToBeIndexed(columnInfo.getColumnName()); indexColumn(indexInfo, collection); } } // index embedded column. for (EmbeddedColumnInfo info : tableInfo.getEmbeddedColumnMetadatas()) { for (ColumnInfo columnInfo : info.getColumns()) { if (columnInfo.isIndexable()) { IndexInfo indexInfo = tableInfo.getColumnToBeIndexed(columnInfo.getColumnName()); indexEmbeddedColumn(indexInfo, info.getEmbeddedColumnName(), collection); } } } }
private void buildColumnsFromEmbeddableColumn(EmbeddedColumnInfo embColumnInfo, List<ColumnSchema> columns) { for (ColumnInfo columnInfo : embColumnInfo.getColumns()) { ColumnSchemaBuilder columnSchemaBuilder = new ColumnSchema.ColumnSchemaBuilder(columnInfo.getColumnName(), KuduDBValidationClassMapper.getValidTypeForClass(columnInfo.getType())); columns.add(columnSchemaBuilder.build()); } }
if (!compositeColumns.isEmpty()) compoEmbeddableType = compositeColumns.get(0).getEmbeddable(); onCompositeColumns(translator, compositeColumns.get(0).getColumns(), queryBuilder, columns);
@Test public void testWithSingleValueConstructor() EmbeddedColumnInfo embeddedColumnInfo = new EmbeddedColumnInfo(null); columns.add(col1); embeddedColumnInfo.setColumns(columns); embeddedColumnInfo.setEmbeddedColumnName("embeddedColumn"); Assert.assertEquals("embeddedColumn", embeddedColumnInfo.getEmbeddedColumnName()); Assert.assertNull(embeddedColumnInfo.getEmbeddable()); Assert.assertEquals(2, embeddedColumnInfo.getColumns().size()); Assert.assertNotNull(embeddedColumnInfo.toString()); EmbeddedColumnInfo embedded2 = new EmbeddedColumnInfo(null); Assert.assertNotSame(embeddedColumnInfo, embedded2);
/** * @param tableInfo * @param collection */ private void createIndexes(TableInfo tableInfo, DBCollection collection) { // index normal column for (ColumnInfo columnInfo : tableInfo.getColumnMetadatas()) { if (columnInfo.isIndexable()) { IndexInfo indexInfo = tableInfo.getColumnToBeIndexed(columnInfo.getColumnName()); indexColumn(indexInfo, collection); } } // index embedded column. for (EmbeddedColumnInfo info : tableInfo.getEmbeddedColumnMetadatas()) { for (ColumnInfo columnInfo : info.getColumns()) { if (columnInfo.isIndexable()) { IndexInfo indexInfo = tableInfo.getColumnToBeIndexed(columnInfo.getColumnName()); indexEmbeddedColumn(indexInfo, info.getEmbeddedColumnName(), collection); } } } }
for (EmbeddedColumnInfo embeddedColumnInfo : tableInfo.getEmbeddedColumnMetadatas()) for (ColumnInfo columnInfo : embeddedColumnInfo.getColumns())
for (ColumnInfo columnInfo : embColumnInfo.getColumns())
for (EmbeddedColumnInfo embeddedColumnInfo : embeddedColumnInfos) for (ColumnInfo column : embeddedColumnInfo.getColumns())
if (!tableInfo.getEmbeddedColumnMetadatas().isEmpty()) List<ColumnInfo> columnInfos = tableInfo.getEmbeddedColumnMetadatas().get(0).getColumns(); if (columnInfos.contains(columnInfo))