Class FederatedOperation<INPUT,​OUTPUT>

    • Constructor Detail

      • FederatedOperation

        public FederatedOperation()
    • Method Detail

      • isSkipFailedFederatedExecution

        public boolean isSkipFailedFederatedExecution()
      • skipFailedFederatedExecution

        public FederatedOperation<INPUT,​OUTPUT> skipFailedFederatedExecution​(boolean skipFailedFederatedExecution)
      • setOptions

        public void setOptions​(Map<String,​String> options)
        Specified by:
        setOptions in interface Operation
        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.
      • getPayloadOperation

        public Operation getPayloadOperation()
        Returns a shallow clone of the payload operation.
        Returns:
        cloned payload
      • hasPayloadOperation

        public boolean hasPayloadOperation()
      • getUnClonedPayload

        public Operation getUnClonedPayload()
        Use responsibly internals including options may incorrectly get modified.
        Returns:
        uncloned payload
      • getPayloadClass

        public Class<? extends Operation> getPayloadClass()
      • payloadInstanceOf

        public boolean payloadInstanceOf​(Class<?> c)
      • getMergeFunction

        public BiFunction getMergeFunction()
      • getOptions

        public Map<String,​String> getOptions()
        Specified by:
        getOptions in interface Operation
        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.
      • shallowClone

        public FederatedOperation<INPUT,​OUTPUT> shallowClone()
                                                            throws org.apache.commons.lang3.exception.CloneFailedException
        Description copied from interface: Operation
        Operation 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:
        shallowClone in interface Operation
        Returns:
        shallow clone
        Throws:
        org.apache.commons.lang3.exception.CloneFailedException - if a Clone error occurs
      • deepClone

        public FederatedOperation<INPUT,​OUTPUT> deepClone()
                                                         throws org.apache.commons.lang3.exception.CloneFailedException
        Throws:
        org.apache.commons.lang3.exception.CloneFailedException
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • getOutputTypeReference

        public com.fasterxml.jackson.core.type.TypeReference getOutputTypeReference()
        Specified by:
        getOutputTypeReference in interface Output<INPUT>
      • getInput

        public INPUT getInput()
        FederatedOperation does not have input.
        Specified by:
        getInput in interface Input<INPUT>
        Returns:
        null
      • setInput

        public void setInput​(INPUT input)
        FederatedOperation does not have input, but will pass through to payload.
        Specified by:
        setInput in interface Input<INPUT>
        Parameters:
        input - input to passed to payload operation.