private static Fields getFields( Fields groupingFields, Functor[] functors ) { Fields fields = groupingFields; for( Functor functor : functors ) fields = fields.append( functor.getDeclaredFields() ); return fields; }
public static Fields createTypedFields( RelOptCluster cluster, List<RelDataTypeField> typeFields, boolean numeric ) { Fields fields = Fields.NONE; for( RelDataTypeField typeField : typeFields ) fields = fields.append( createTypedFieldsFor( cluster, typeField, numeric ) ); return fields; }
private Fields createFields( Collection<String> fieldsList ) { Fields fields = Fields.NONE; for( String name : fieldsList ) fields = fields.append( createField( name ) ); return fields; }
private Fields[] makeFieldsFor( Fields groupFields, List<AggregateCall> aggCalls ) { Fields[] fields = new Fields[ aggCalls.size() ]; for( int i = 0; i < aggCalls.size(); i++ ) fields[ i ] = groupFields.append( makeFieldsFor( aggCalls.get( i ) ) ); return fields; }
public MultiBufferOperation(Fields keyFields, MultiBuffer multiBuffer) { super(keyFields.append(multiBuffer.getResultFields())); this.internalBuffer = multiBuffer; }
public static Fields createTypedFieldsFor( RelOptCluster cluster, List<Integer> keys, RelDataType rowType, boolean numeric ) { Fields fields = Fields.NONE; for( Integer key : keys ) fields = fields.append( createTypedFieldsFor( cluster, rowType.getFieldList().get( key ), numeric ) ); return fields; }
@Override public Fields getDeclaredFields() { Fields sumName = new Fields( AverageBy.class.getPackage().getName() + "." + declaredFields.get( 0 ) + ".sum", Double.class ); Fields countName = new Fields( AverageBy.class.getPackage().getName() + "." + declaredFields.get( 0 ) + ".count", Long.class ); return sumName.append( countName ); }
private static Fields toFields( DDLColumn[] ddlColumns ) { Fields fields = Fields.NONE; for( DDLColumn ddlColumn : ddlColumns ) fields = fields.append( new Fields( ddlColumn.name ).applyTypes( ddlColumn.type ) ); return fields; } }
static Fields createPermutationFields( Fields incomingFields, Permutation permutation ) { Fields arguments = Fields.NONE; for( int i = 0; i < permutation.getTargetCount(); i++ ) arguments = arguments.append( new Fields( incomingFields.get( permutation.getTarget( i ) ) ) ); return arguments; } }
protected CombinerAggregator(CombinerDefinition<T> combinerDefinition) { super(combinerDefinition.getIntermediateFields().size(), combinerDefinition.getGroupFields().append(combinerDefinition.getOutputFields())); this.combinerDefinition = combinerDefinition; }
/** * Method appendNew appends the given TupleEntry instance to this instance. * * @param entry of type TupleEntry * @return TupleEntry */ public TupleEntry appendNew( TupleEntry entry ) { Fields appendedFields = fields.append( entry.fields.isUnknown() ? Fields.size( entry.tuple.size() ) : entry.fields ); Tuple appendedTuple = tuple.append( entry.tuple ); return new TupleEntry( appendedFields, appendedTuple ); }
@Override public void setUp() throws Exception { Logging.setLogLevel( this.getClass(), "cascading.pattern", "debug" ); super.setUp(); expectedFields = Fields.NONE .append( new Fields( "var0", double.class ) ) .append( new Fields( "var1", String.class ) ) .append( new Fields( "var2", double.class ) ); Tuple tuple = new Tuple( 0.d, "value", null ); tupleEntry = new TupleEntry( expectedFields, tuple ); }
protected void init(Pipe[] pipes, Fields[] groupFields, Fields groupRename, MultiBuffer operation) { Fields outputFields = groupRename.append(operation.getResultFields()); Pipe grouped = new CoGroup(pipes, groupFields, null, null, new BufferJoin()); grouped = new Every(grouped, new MultiBufferOperation(groupRename, operation), outputFields ); grouped = new Retain(grouped, outputFields ); setTails(grouped); } }
@Test public void testAppend3() { Fields fieldA = Fields.NONE; Fields fieldB = new Fields( 2 ); Fields appended = fieldA.append( fieldB ); assertEquals( "not equal: ", 1, appended.size() ); assertEquals( "not equal: ", 2, appended.get( 0 ) ); }
@Test public void testTypedAppendToNone() { Fields fieldA = Fields.NONE; Fields fieldB = new Fields( names( "a" ), types( String.class ) ); Fields appended = fieldA.append( fieldB ); assertEquals( "not equal: ", 1, appended.size() ); assertEquals( "not equal: ", "a", appended.get( 0 ) ); assertEquals( "not equal: ", String.class, appended.getType( 0 ) ); }
@Test public void testAppendNamed2() { Fields fieldA = new Fields( "a" ); Fields fieldB = new Fields( 0, 1 ); Fields appended = fieldA.append( fieldB ); assertEquals( "not equal: ", 3, appended.size() ); assertEquals( "not equal: ", "a", appended.get( 0 ) ); assertEquals( "not equal: ", 1, appended.get( 1 ) ); assertEquals( "not equal: ", 2, appended.get( 2 ) ); }
@Test public void testAppend2() { Fields fieldA = new Fields( 0, 1 ); Fields fieldB = new Fields( 2 ); Fields appended = fieldA.append( fieldB ); assertEquals( "not equal: ", 3, appended.size() ); assertEquals( "not equal: ", 0, appended.get( 0 ) ); assertEquals( "not equal: ", 1, appended.get( 1 ) ); assertEquals( "not equal: ", 2, appended.get( 2 ) ); }
@Test public void testAppend() { Fields fieldA = new Fields( 0, 1 ); Fields fieldB = new Fields( 0 ); Fields appended = fieldA.append( fieldB ); assertEquals( "not equal: ", 3, appended.size() ); assertEquals( "not equal: ", 0, appended.get( 0 ) ); assertEquals( "not equal: ", 1, appended.get( 1 ) ); assertEquals( "not equal: ", 2, appended.get( 2 ) ); }
@Test public void testAppendNamed() { Fields fieldA = new Fields( 0, 1 ); Fields fieldB = new Fields( "a" ); Fields appended = fieldA.append( fieldB ); assertEquals( "not equal: ", 3, appended.size() ); assertEquals( "not equal: ", 0, appended.get( 0 ) ); assertEquals( "not equal: ", 1, appended.get( 1 ) ); assertEquals( "not equal: ", "a", appended.get( 2 ) ); }
@Test public void testSetReplace() throws Exception { TupleEntry entry = new TupleEntry( new Fields( "json", JSONCoercibleType.TYPE ).append( new Fields( "name", String.class ) ), Tuple.size( 2 ) ); entry.setObject( 0, JSONData.nested ); entry.setObject( 1, "Jane Doe" ); JSONSetFunction function = new JSONSetFunction( new Fields( "result" ), new Fields( "name", String.class ), "/person/name" ); TupleListCollector result = invokeFunction( function, entry, new Fields( "result" ) ); JsonNode value = (JsonNode) result.iterator().next().getObject( 0 ); assertNotNull( value ); assertEquals( "Jane Doe", value.at( "/person/name" ).textValue() ); }