Class Join<I>
- java.lang.Object
-
- uk.gov.gchq.gaffer.operation.impl.join.Join<I>
-
- Type Parameters:
I- Iterable input type.
- All Implemented Interfaces:
Closeable,AutoCloseable,Input<Iterable<? extends I>>,InputOutput<Iterable<? extends I>,Iterable<? extends uk.gov.gchq.koryphe.tuple.MapTuple>>,MultiInput<I>,Output<Iterable<? extends uk.gov.gchq.koryphe.tuple.MapTuple>>,Operation,Operations<Operation>
public class Join<I> extends Object implements InputOutput<Iterable<? extends I>,Iterable<? extends uk.gov.gchq.koryphe.tuple.MapTuple>>, MultiInput<I>, Operations<Operation>
AJoinOperation is used to join two Iterables together, specifying a match and merge method.Note: The input iterables are limited by default to 100,000 as these are read into memory as a Collection. This limit can be changed by adding specifying a collectionLimit in the Operation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classJoin.Builder<I>-
Nested classes/interfaces inherited from interface uk.gov.gchq.gaffer.operation.Operation
Operation.BaseBuilder<OP extends Operation,B extends Operation.BaseBuilder<OP,?>>
-
-
Constructor Summary
Constructors Constructor Description Join()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object[]createInputArray()IntegergetCollectionLimit()Iterable<? extends I>getInput()JoinTypegetJoinType()MatchKeygetMatchKey()MatchgetMatchMethod()OperationgetOperation()Collection<Operation>getOperations()Should return aCollectionof all operations contained within theOperationsimplementation.Map<String,String>getOptions()com.fasterxml.jackson.core.type.TypeReference<Iterable<? extends uk.gov.gchq.koryphe.tuple.MapTuple>>getOutputTypeReference()BooleanisFlatten()voidsetCollectionLimit(Integer collectionLimit)voidsetFlatten(Boolean flatten)voidsetInput(Iterable<? extends I> leftSideInput)voidsetJoinType(JoinType joinType)voidsetMatchKey(MatchKey matchKey)voidsetMatchMethod(Match matchMethod)voidsetOperation(Operation rightSideOperation)voidsetOptions(Map<String,String> options)Join<I>shallowClone()Operation implementations should ensure a ShallowClone method is implemented.-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface uk.gov.gchq.gaffer.operation.io.MultiInput
setInput
-
Methods inherited from interface uk.gov.gchq.gaffer.operation.Operation
_getNullOrOptions, addOption, containsOption, getOption, getOption, validate, validateRequiredFieldPresent
-
Methods inherited from interface uk.gov.gchq.gaffer.operation.Operations
flatten, getOperationsClass, updateOperations
-
Methods inherited from interface uk.gov.gchq.gaffer.operation.io.Output
castToOutputType, getOutputClass, getOutputType
-
-
-
-
Method Detail
-
getOperation
public Operation getOperation()
-
setOperation
public void setOperation(Operation rightSideOperation)
-
getMatchMethod
public Match getMatchMethod()
-
setMatchMethod
public void setMatchMethod(Match matchMethod)
-
getMatchKey
public MatchKey getMatchKey()
-
setMatchKey
public void setMatchKey(MatchKey matchKey)
-
setFlatten
public void setFlatten(Boolean flatten)
-
isFlatten
public Boolean isFlatten()
-
getJoinType
public JoinType getJoinType()
-
setJoinType
public void setJoinType(JoinType joinType)
-
getCollectionLimit
public Integer getCollectionLimit()
-
setCollectionLimit
public void setCollectionLimit(Integer collectionLimit)
-
shallowClone
public Join<I> shallowClone() throws org.apache.commons.lang3.exception.CloneFailedException
Description copied from interface:OperationOperation implementations should ensure a ShallowClone method is implemented. Performs a shallow clone. Creates a new instance and copies the fields across. It does not clone the fields. If the operation contains nested operations, these must also be cloned.- Specified by:
shallowClonein interfaceOperation- Returns:
- shallow clone
- Throws:
org.apache.commons.lang3.exception.CloneFailedException- if a Clone error occurs
-
getOptions
public Map<String,String> getOptions()
- Specified by:
getOptionsin interfaceOperation- Returns:
- the operation options. This may contain store specific options such as authorisation strings or and other properties required for the operation to be executed. Note these options will probably not be interpreted in the same way by every store implementation.
-
setOptions
public void setOptions(Map<String,String> options)
- Specified by:
setOptionsin interfaceOperation- Parameters:
options- the operation options. This may contain store specific options such as authorisation strings or and other properties required for the operation to be executed. Note these options will probably not be interpreted in the same way by every store implementation.
-
getOutputTypeReference
public com.fasterxml.jackson.core.type.TypeReference<Iterable<? extends uk.gov.gchq.koryphe.tuple.MapTuple>> getOutputTypeReference()
- Specified by:
getOutputTypeReferencein interfaceOutput<I>
-
getOperations
public Collection<Operation> getOperations()
Description copied from interface:OperationsShould return aCollectionof all operations contained within theOperationsimplementation. The collection of operations may be modified by Gaffer.- Specified by:
getOperationsin interfaceOperations<I>- Returns:
- A
CollectionofOperations.
-
createInputArray
public Object[] createInputArray()
- Specified by:
createInputArrayin interfaceMultiInput<I>
-
-