class If extends GenericInput<I> implements InputOutput<I, O>, Operations<Operation> {

    @Override
    @JsonIgnore
    public Collection<Operation> getOperations() {
        final List<Operation> ops = new LinkedList<>();

        if (null == conditional) {
            ops.add(new OperationChain());
        } else {
            ops.add(OperationChain.wrap(conditional.getTransform()));
        }

        ops.add(OperationChain.wrap(then));
        ops.add(OperationChain.wrap(otherwise));

        return ops;
    }

}