/** * Gets the size (in bytes) of a single {@link SelectItem} */ protected int getValueSize(SelectItem selectItem) { Column column = selectItem.getColumn(); if (column == null) { return DEFAULT_COLUMN_SIZE; } else { return getValueSize(column); } }
public SelectItem getSelectItem(Column column) { if (column != null) { for (SelectItem item : getItems()) { if (column.equals(item.getColumn())) { return item; } } } return null; }
public SelectItem getSelectItem(Column column) { if (column != null) { for (SelectItem item : getItems()) { if (column.equals(item.getColumn())) { return item; } } } return null; }
/** * Gets the size (in bytes) of a single {@link SelectItem} */ protected int getValueSize(SelectItem selectItem) { Column column = selectItem.getColumn(); if (column == null) { return DEFAULT_COLUMN_SIZE; } else { return getValueSize(column); } }
@Override public List<InputColumn<?>> getInputColumns() { final List<InputColumn<?>> result = new ArrayList<>(); final List<SelectItem> selectItems = _row.getSelectItems(); for (final SelectItem selectItem : selectItems) { if (selectItem.getColumn() != null && selectItem.getAggregateFunction() == null) { result.add(new MetaModelInputColumn(selectItem.getColumn())); } } return result; } }
@Override public List<InputColumn<?>> getInputColumns() { List<InputColumn<?>> result = new ArrayList<InputColumn<?>>(); SelectItem[] selectItems = _row.getSelectItems(); for (SelectItem selectItem : selectItems) { if (selectItem.getColumn() != null && selectItem.getFunction() == null) { result.add(new MetaModelInputColumn(selectItem.getColumn())); } } return result; } }
/** * @throws MetaModelException when value is null */ @Override public synchronized void execute() { final List<FilterItem> whereItems = getWhereItems(); if (whereItems == null || whereItems.size() == 0) { throw new IllegalArgumentException("HBase currently only supports deleting items by their row key."); } final FilterItem filterItem = whereItems.get(0); if (!HBaseDataContext.FIELD_ID.equals(filterItem.getSelectItem().getColumn().getName())) { throw new IllegalArgumentException("HBase currently only supports deleting items by their row key."); } getRowKeys(filterItem).forEach(rowKey -> _dataContext.getHBaseClient().deleteRow(getTable().getName(), rowKey)); }
/** * @throws MetaModelException when value is null */ @Override public synchronized void execute() { final List<FilterItem> whereItems = getWhereItems(); if (whereItems == null || whereItems.size() == 0) { throw new IllegalArgumentException("HBase currently only supports deleting items by their row key."); } final FilterItem filterItem = whereItems.get(0); if (!HBaseDataContext.FIELD_ID.equals(filterItem.getSelectItem().getColumn().getName())) { throw new IllegalArgumentException("HBase currently only supports deleting items by their row key."); } getRowKeys(filterItem).forEach(rowKey -> _dataContext.getHBaseClient().deleteRow(getTable().getName(), rowKey)); }
@Override public RowInsertionBuilder like(Row row) { List<SelectItem> selectItems = row.getSelectItems(); for (int i = 0; i < selectItems.size(); i++) { SelectItem selectItem = selectItems.get(i); Column column = selectItem.getColumn(); if (column != null) { if (_table == column.getTable()) { value(column, row.getValue(i)); } else { value(column.getName(), row.getValue(i)); } } } return this; }
@Override public RowInsertionBuilder like(Row row) { List<SelectItem> selectItems = row.getSelectItems(); for (int i = 0; i < selectItems.size(); i++) { SelectItem selectItem = selectItems.get(i); Column column = selectItem.getColumn(); if (column != null) { if (_table == column.getTable()) { value(column, row.getValue(i)); } else { value(column.getName(), row.getValue(i)); } } } return this; }
@Override public RowInsertionBuilder like(Row row) { List<SelectItem> selectItems = row.getSelectItems(); for (int i = 0; i < selectItems.size(); i++) { SelectItem selectItem = selectItems.get(i); Column column = selectItem.getColumn(); if (column != null) { if (_table == column.getTable()) { value(column, row.getValue(i)); } else { value(column.getName(), row.getValue(i)); } } } return this; }
@Override public RowInsertionBuilder like(Row row) { List<SelectItem> selectItems = row.getSelectItems(); for (int i = 0; i < selectItems.size(); i++) { SelectItem selectItem = selectItems.get(i); Column column = selectItem.getColumn(); if (column != null) { if (_table == column.getTable()) { value(column, row.getValue(i)); } else { value(column.getName(), row.getValue(i)); } } } return this; }
@Override public Row getRow() { if (_currentItem == null) { return null; } final DataSetHeader header = getHeader(); final Object[] values = new Object[header.size()]; for (int i = 0; i < values.length; i++) { final AttributeValue attributeValue = _currentItem.get(header.getSelectItem(i).getColumn().getName()); values[i] = DynamoDbUtils.toValue(attributeValue); } final Row row = new DefaultRow(header, values); return row; } }
@Override public Row convert(Document document, DataSetHeader header) { final Object[] values = new Object[header.size()]; for (int i = 0; i < values.length; i++) { final String columnName = header.getSelectItem(i).getColumn().getName(); values[i] = get(document, columnName); } return new DefaultRow(header, values); }
@Override public Row convert(Document document, DataSetHeader header) { final Object[] values = new Object[header.size()]; for (int i = 0; i < values.length; i++) { final String columnName = header.getSelectItem(i).getColumn().getName(); values[i] = get(document, columnName); } return new DefaultRow(header, values); }
@Override protected org.apache.metamodel.data.Row executePrimaryKeyLookupQuery(Table table, List<SelectItem> selectItems, Column primaryKeyColumn, Object keyValue) { if (primaryKeyColumn.getType() == ColumnType.UUID && keyValue instanceof String) { keyValue = UUID.fromString(keyValue.toString()); } Selection select = QueryBuilder.select(); for (SelectItem selectItem : selectItems) { final Column column = selectItem.getColumn(); assert column != null; select = select.column(column.getName()); } final Statement statement = select.from(keySpaceName, table.getName()).where(QueryBuilder.eq(primaryKeyColumn .getName(), keyValue)); final Row row = cassandraCluster.connect().execute(statement).one(); return CassandraUtils.toRow(row, new SimpleDataSetHeader(selectItems)); }
@Override public Row getRow() { final int size = getHeader().size(); final Object[] values = new Object[size]; for (int i = 0; i < values.length; i++) { final SelectItem selectItem = getHeader().getSelectItem(i); final String column = selectItem.getColumn().getName(); values[i] = _pojoTable.getValue(column, _next); } return new DefaultRow(getHeader(), values); }
@Override public Row getRow() { final int size = getHeader().size(); final Object[] values = new Object[size]; for (int i = 0; i < values.length; i++) { final SelectItem selectItem = getHeader().getSelectItem(i); final String column = selectItem.getColumn().getName(); values[i] = _pojoTable.getValue(column, _next); } return new DefaultRow(getHeader(), values); }
@Override public Row getRow() { if (_record == null) { return null; } final DataSetHeader header = getHeader(); final Object[] values = new Object[header.size()]; for (int i = 0; i < values.length; i++) { final Column column = header.getSelectItem(i).getColumn(); final String fieldName = column.getName(); final Object value = _record.getField(fieldName); final Object parsedValue = convert(value, column.getType()); values[i] = parsedValue; } return new DefaultRow(header, values); }
@Override public Row getRow() { if (_record == null) { return null; } final DataSetHeader header = getHeader(); final Object[] values = new Object[header.size()]; for (int i = 0; i < values.length; i++) { final Column column = header.getSelectItem(i).getColumn(); final String fieldName = column.getName(); final Object value = _record.getField(fieldName); final Object parsedValue = convert(value, column.getType()); values[i] = parsedValue; } return new DefaultRow(header, values); }