@Override public boolean containsInputColumn(final InputColumn<?> inputColumn) { if (inputColumn.isVirtualColumn() && _values.containsKey(inputColumn)) { return true; } return _delegate.containsInputColumn(inputColumn); }
private static String getKey(final Object object) { if (object instanceof InputColumn<?>) { final InputColumn<?> inputColumn = (InputColumn<?>) object; if (inputColumn.isVirtualColumn()) { return inputColumn.getName(); } } return String.valueOf(object.hashCode()); }
private boolean isOptimizable(final FilterConsumer filterConsumer) { final FilterDescriptor<?, ?> descriptor = filterConsumer.getComponentJob().getDescriptor(); if (!descriptor.isQueryOptimizable()) { logger.debug("FilterBeanDescriptor not optimizable: {}", descriptor); return false; } final InputColumn<?>[] input = filterConsumer.getRequiredInput(); for (final InputColumn<?> inputColumn : input) { if (inputColumn.isVirtualColumn()) { logger.debug("InputColumn is virtual: {}, so filter is not optimizable: {}", inputColumn, filterConsumer); return false; } } return true; }
if (o1.isVirtualColumn() && o2.isVirtualColumn()) { if (o1 instanceof TransformedInputColumn<?> && o2 instanceof TransformedInputColumn<?>) { final TransformedInputColumn<?> col1 = (TransformedInputColumn<?>) o1; if (o1.isPhysicalColumn() && o2.isVirtualColumn()) { return -1; } else {
final InputColumn<?>[] requiredColumns = ((InputColumnSinkJob) componentJob).getInput(); for (final InputColumn<?> column : requiredColumns) { if (column.isVirtualColumn()) { if (!satisfiedColumns.contains(column)) { logger.debug("InputColumn {} is available at query time, and therefore not satisfied "
for (final InputColumn<?> inputColumn : inputColumns) { if (inputColumn.isVirtualColumn()) { final InputColumnSourceJob source = scf.findInputColumnSource(inputColumn); if (source != null) { if (inputColumn.isVirtualColumn()) { final InputColumnSourceJob source = scf.findInputColumnSource(inputColumn); if (source != null) {