wayang-platforms/wayang-java/src/main/java/org/apache/wayang/java/operators/JavaAmazonS3Source.java [76:106]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    @Override
    public List<ChannelDescriptor> getSupportedInputChannels(int index) {
        throw new UnsupportedOperationException(String.format("%s does not have input channels.", this));
    }

    @Override
    public List<ChannelDescriptor> getSupportedOutputChannels(int index) {
        assert index <= this.getNumOutputs() || (index == 0 && this.getNumOutputs() == 0);
        return Collections.singletonList(StreamChannel.DESCRIPTOR);
    }


    @Override
    public Tuple<Collection<ExecutionLineageNode>, Collection<ChannelInstance>> evaluate(ChannelInstance[] inputs,
            ChannelInstance[] outputs, JavaExecutor javaExecutor, OperatorContext operatorContext) {
        assert inputs.length == this.getNumInputs();
        assert outputs.length == this.getNumOutputs();

        try {
            
            BufferedReader buffereadReder = new BufferedReader(new InputStreamReader(super.getInputStream()));
            Stream<String> lines = buffereadReder.lines(); 
            ((StreamChannel.Instance) outputs[0]).accept(lines);
        }
        catch (Exception e) {
            throw new WayangException("Failed to read file from Amazon storage with error", e);
        }


     ExecutionLineageNode prepareLineageNode = new ExecutionLineageNode(operatorContext);
        prepareLineageNode.add(LoadProfileEstimators.createFromSpecification(
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



wayang-platforms/wayang-java/src/main/java/org/apache/wayang/java/operators/JavaAzureBlobStorageSource.java [73:104]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    @Override
    public List<ChannelDescriptor> getSupportedInputChannels(int index) {
        throw new UnsupportedOperationException(String.format("%s does not have input channels.", this));
    }

    @Override
    public List<ChannelDescriptor> getSupportedOutputChannels(int index) {
        assert index <= this.getNumOutputs() || (index == 0 && this.getNumOutputs() == 0);
        return Collections.singletonList(StreamChannel.DESCRIPTOR);
    }



    @Override
    public Tuple<Collection<ExecutionLineageNode>, Collection<ChannelInstance>> evaluate(ChannelInstance[] inputs,
            ChannelInstance[] outputs, JavaExecutor javaExecutor, OperatorContext operatorContext) {
        assert inputs.length == this.getNumInputs();
        assert outputs.length == this.getNumOutputs();

        try {
            
            BufferedReader buffereadReder = new BufferedReader(new InputStreamReader(super.getInputStream()));
            Stream<String> lines = buffereadReder.lines(); 
            ((StreamChannel.Instance) outputs[0]).accept(lines);
        }
        catch (Exception e) {
            throw new WayangException("Failed to read file from Amazon storage with error", e);
        }


     ExecutionLineageNode prepareLineageNode = new ExecutionLineageNode(operatorContext);
        prepareLineageNode.add(LoadProfileEstimators.createFromSpecification(
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



