cascading.tuple.TupleEntry.asIterableOf()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(4.8k)|赞(0)|评价(0)|浏览(116)

本文整理了Java中cascading.tuple.TupleEntry.asIterableOf()方法的一些代码示例,展示了TupleEntry.asIterableOf()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。TupleEntry.asIterableOf()方法的具体详情如下:
包路径:cascading.tuple.TupleEntry
类名称:TupleEntry
方法名:asIterableOf

TupleEntry.asIterableOf介绍

[英]Method asIterableOf returns an Iterable instance that will coerce all Tuple elements into the given type parameter.

This method honors any cascading.tuple.type.CoercibleType instances on the internal Fields instance for the specified Tuple element.
[中]方法asIterableOf返回一个Iterable实例,该实例将强制所有元组元素进入给定的类型参数。
这种方法尊重任何级联。元组。类型指定元组元素的内部字段实例上的强制类型实例。

代码示例

代码示例来源:origin: cwensel/cascading

@Override
public String toPartition( TupleEntry tupleEntry )
 {
 String partition = Util.join( tupleEntry.asIterableOf( String.class ), delimiter, true );
 if( postfix != null )
  partition = partition + postfix; // delimiter prefixed in ctor
 return partition;
 }
}

代码示例来源:origin: cwensel/cascading

protected boolean matchWholeTuple( Matcher matcher, TupleEntry input )
 {
 Iterable<String> iterable = input.asIterableOf( String.class );
 String join = Util.join( iterable, delimiter, false );
 matcher.reset( join );
 boolean matchFound = matcher.find();
 if( LOG.isDebugEnabled() )
  LOG.debug( "pattern: {}, matches: {}", getPatternString(), matchFound );
 return matchFound == negateMatch;
 }

代码示例来源:origin: com.hotels/plunger

@Override
public boolean isRemove(@SuppressWarnings("rawtypes") FlowProcess flowProcess, FilterCall<Void> filterCall) {
 PrintStream stream = streamSupplier.getPrintStream();
 if (firstRecord) {
  stream.append(prefix);
  for (Comparable<?> value : filterCall.getArguments().getFields().select(fieldsOfInterest)) {
   stream.append(value.toString());
   stream.append('\t');
  }
  stream.append('\n');
  firstRecord = false;
 }
 stream.append(prefix);
 for (String value : filterCall.getArguments().selectEntry(fieldsOfInterest).asIterableOf(String.class)) {
  stream.append(value);
  stream.append('\t');
 }
 stream.append('\n');
 return false;
}

代码示例来源:origin: cwensel/cascading

/**
 * Method getValue ...
 *
 * @param functionCall of FunctionCall<Context>
 * @return String
 */
protected String getValue( FunctionCall<Context> functionCall )
 {
 // if one argument
 if( functionCall.getArguments().size() == 1 )
  return functionCall.getArguments().getString( 0 );
 // if many arguments
 Iterator<String> values = functionCall.getArguments().asIterableOf( String.class ).iterator();
 StringBuilder result = new StringBuilder();
 while( values.hasNext() )
  {
  String next = values.next();
  if( next != null )
   result.append( next );
  }
 return result.toString();
 }

代码示例来源:origin: cwensel/cascading

@Override
public void sink( FlowProcess<? extends Properties> flowProcess, SinkCall<PrintWriter, OutputStream> sinkCall ) throws IOException
 {
 TupleEntry tupleEntry = sinkCall.getOutgoingEntry();
 Iterable<String> strings = tupleEntry.asIterableOf( String.class );
 delimitedParser.joinLine( strings, sinkCall.getContext() );
 sinkCall.getContext().println();
 }

代码示例来源:origin: cwensel/cascading

@Override
public void sink( FlowProcess<? extends Configuration> flowProcess, SinkCall<Object[], OutputCollector> sinkCall ) throws IOException
 {
 TupleEntry tupleEntry = sinkCall.getOutgoingEntry();
 Text text = (Text) sinkCall.getContext()[ 0 ];
 StringBuilder line = (StringBuilder) sinkCall.getContext()[ 1 ];
 Charset charset = (Charset) sinkCall.getContext()[ 2 ];
 Iterable<String> strings = tupleEntry.asIterableOf( String.class );
 line = (StringBuilder) delimitedParser.joinLine( strings, line );
 text.set( line.toString().getBytes( charset ) );
 sinkCall.getOutput().collect( null, text );
 line.setLength( 0 );
 }

代码示例来源:origin: cascading/cascading-hadoop2-io

@Override
public void sink( FlowProcess<? extends Configuration> flowProcess, SinkCall<Object[], OutputCollector> sinkCall ) throws IOException
 {
 TupleEntry tupleEntry = sinkCall.getOutgoingEntry();
 Text text = (Text) sinkCall.getContext()[ 0 ];
 StringBuilder line = (StringBuilder) sinkCall.getContext()[ 1 ];
 Charset charset = (Charset) sinkCall.getContext()[ 2 ];
 Iterable<String> strings = tupleEntry.asIterableOf( String.class );
 line = (StringBuilder) delimitedParser.joinLine( strings, line );
 text.set( line.toString().getBytes( charset ) );
 sinkCall.getOutput().collect( null, text );
 line.setLength( 0 );
 }

代码示例来源:origin: cwensel/cascading

@Test
public void testCoerceIterable()
 {
 final SimpleDateFormat dateFormat = new SimpleDateFormat( "dd/MMM/yyyy:HH:mm:ss:SSS Z" );
 CoercibleType coercible = new DateType( "dd/MMM/yyyy:HH:mm:ss:SSS Z", TimeZone.getDefault() );
 Date date = new Date();
 String stringDate = dateFormat.format( date );
 Tuple tuple = Tuple.size( 4 );
 Fields fields = Fields.size( 4 ).applyTypes( coercible, coercible, coercible, String.class );
 TupleEntry results = new TupleEntry( fields, tuple );
 results.setObject( 0, date );
 results.setLong( 1, date.getTime() );
 results.setString( 2, stringDate );
 results.setString( 3, stringDate );
 Iterable<String> iterable = results.asIterableOf( String.class );
 int count = 0;
 for( String s : iterable )
  {
  assertEquals( stringDate, s );
  count++;
  }
 assertEquals( count, results.size() );
 }

相关文章