org.gcube.contentmanagement.gcubedocumentlibrary.streams.dsl
Class FoldThroughClause<FROM>

java.lang.Object
  extended by org.gcube.contentmanagement.gcubedocumentlibrary.streams.dsl.Clause<FROM,java.lang.Void>
      extended by org.gcube.contentmanagement.gcubedocumentlibrary.streams.dsl.FoldThroughClause<FROM>

public class FoldThroughClause<FROM>
extends Clause<FROM,java.lang.Void>

The through clause of group-based sentences.

Author:
Fabio Simeoni (University of Strathclyde)

Constructor Summary
FoldThroughClause(Env<FROM,java.lang.Void> e)
          Creates an instance of the clause in the evaluation environment of a given sentence.
 
Method Summary
<TO> FoldWithClause<FROM,TO>
pipingThrough(Filter<FROM,TO> filter)
          Configures a Filter for the stream in the evaluation environment.
<E extends java.lang.RuntimeException>
java.util.Iterator<java.util.List<FROM>>
with(IFaultPolicy<E> h)
          Configures a Streams.PassThroughFilter and a IFaultPolicy for the stream in the evaluation environment.
 java.util.Iterator<java.util.List<FROM>> withDefaults()
          Configures a Streams.PassThroughFilter and a Streams.IGNORE_POLICY for the stream in the evaluation environment.
<E extends java.lang.Exception>
withRemote(IFaultPolicy<E> h)
          Configures a Streams.PassThroughFilter and a IFaultPolicy for the stream in the evaluation environment.
  withRemoteDefaults()
          Configures a Streams.PassThroughFilter and a Streams.RETHROW_POLICY for the stream in the evaluation environment.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FoldThroughClause

public FoldThroughClause(Env<FROM,java.lang.Void> e)
Creates an instance of the clause in the evaluation environment of a given sentence.

Parameters:
e - the environment.
Method Detail

pipingThrough

public <TO> FoldWithClause<FROM,TO> pipingThrough(Filter<FROM,TO> filter)
Configures a Filter for the stream in the evaluation environment.

Type Parameters:
TO - the output type of the Filter.
Parameters:
filter - the Filter.
Returns:
the next clause.

with

public <E extends java.lang.RuntimeException> java.util.Iterator<java.util.List<FROM>> with(IFaultPolicy<E> h)
Configures a Streams.PassThroughFilter and a IFaultPolicy for the stream in the evaluation environment.

Type Parameters:
E - the Exception that the FaultPolicy can throw.
Parameters:
h - the FaultPolicy.
Returns:
a configured Iterator.

withRemote

public <E extends java.lang.Exception>  withRemote(IFaultPolicy<E> h)
Configures a Streams.PassThroughFilter and a IFaultPolicy for the stream in the evaluation environment.

Type Parameters:
E - the Exception that the FaultPolicy can throw.
Parameters:
h - the FaultPolicy.
Returns:
a configured RemoteIterator.

withDefaults

public java.util.Iterator<java.util.List<FROM>> withDefaults()
Configures a Streams.PassThroughFilter and a Streams.IGNORE_POLICY for the stream in the evaluation environment.

Returns:
a configured Iterator.

withRemoteDefaults

public  withRemoteDefaults()
Configures a Streams.PassThroughFilter and a Streams.RETHROW_POLICY for the stream in the evaluation environment.

Returns:
a configured RemoteIterator.