Search in sources :

Example 1 with Output

use of co.cask.cdap.api.data.batch.Output in project cdap by caskdata.

the class MapReduceBatchContext method addOutput.

@Override
public void addOutput(final Output output) {
    final Output actualOutput = suffixOutput(getOutput(output));
    Output trackableOutput = caller.callUnchecked(new Callable<Output>() {

        @Override
        public Output call() throws Exception {
            Output trackableOutput = isPreviewEnabled ? actualOutput : ExternalDatasets.makeTrackable(mrContext.getAdmin(), actualOutput);
            mrContext.addOutput(trackableOutput);
            return trackableOutput;
        }
    });
    outputNames.add(trackableOutput.getAlias());
}
Also used : Output(co.cask.cdap.api.data.batch.Output)

Example 2 with Output

use of co.cask.cdap.api.data.batch.Output in project cdap by caskdata.

the class SparkBatchSinkContext method addOutput.

@Override
public void addOutput(Output output) {
    Output actualOutput = suffixOutput(getOutput(output));
    Output trackableOutput = isPreviewEnabled ? actualOutput : ExternalDatasets.makeTrackable(admin, actualOutput);
    sinkFactory.addOutput(getStageName(), trackableOutput);
}
Also used : Output(co.cask.cdap.api.data.batch.Output)

Example 3 with Output

use of co.cask.cdap.api.data.batch.Output in project cdap by caskdata.

the class MockExternalSink method prepareRun.

@Override
public void prepareRun(BatchSinkContext context) throws Exception {
    OutputFormatProvider outputFormatProvider = new OutputFormatProvider() {

        @Override
        public String getOutputFormatClassName() {
            return TextOutputFormat.class.getCanonicalName();
        }

        @Override
        public Map<String, String> getOutputFormatConfiguration() {
            return ImmutableMap.of(TextOutputFormat.OUTDIR, config.dirName);
        }
    };
    if (config.name != null) {
        Output output = Output.of(config.name, outputFormatProvider);
        output.alias(config.alias);
        context.addOutput(output);
    } else {
        context.addOutput(config.alias, outputFormatProvider);
    }
}
Also used : Output(co.cask.cdap.api.data.batch.Output) OutputFormatProvider(co.cask.cdap.api.data.batch.OutputFormatProvider)

Example 4 with Output

use of co.cask.cdap.api.data.batch.Output in project cdap by caskdata.

the class BasicMapReduceContext method addOutput.

@Override
public void addOutput(Output output) {
    if (output instanceof Output.DatasetOutput) {
        Output.DatasetOutput datasetOutput = ((Output.DatasetOutput) output);
        String datasetNamespace = datasetOutput.getNamespace();
        if (datasetNamespace == null) {
            datasetNamespace = getNamespace();
        }
        String datasetName = output.getName();
        Map<String, String> arguments = ((Output.DatasetOutput) output).getArguments();
        // we can delay the instantiation of the Dataset to later, but for now, we still have to maintain backwards
        // compatibility for the #setOutput(String, Dataset) method, so delaying the instantiation of this dataset will
        // bring about code complexity without much benefit. Once #setOutput(String, Dataset) is removed, we can postpone
        // this dataset instantiation
        DatasetOutputFormatProvider outputFormatProvider = new DatasetOutputFormatProvider(datasetNamespace, datasetName, arguments, getDataset(datasetNamespace, datasetName, arguments, AccessType.WRITE), MapReduceBatchWritableOutputFormat.class);
        addOutput(output.getAlias(), outputFormatProvider);
    } else if (output instanceof Output.OutputFormatProviderOutput) {
        addOutput(output.getAlias(), ((Output.OutputFormatProviderOutput) output).getOutputFormatProvider());
    } else {
        // shouldn't happen unless user defines their own Output class
        throw new IllegalArgumentException(String.format("Output %s has unknown output class %s", output.getName(), output.getClass().getCanonicalName()));
    }
}
Also used : ProvidedOutput(co.cask.cdap.internal.app.runtime.batch.dataset.output.ProvidedOutput) Output(co.cask.cdap.api.data.batch.Output) DatasetOutputFormatProvider(co.cask.cdap.internal.app.runtime.batch.dataset.DatasetOutputFormatProvider)

Aggregations

Output (co.cask.cdap.api.data.batch.Output)4 OutputFormatProvider (co.cask.cdap.api.data.batch.OutputFormatProvider)1 DatasetOutputFormatProvider (co.cask.cdap.internal.app.runtime.batch.dataset.DatasetOutputFormatProvider)1 ProvidedOutput (co.cask.cdap.internal.app.runtime.batch.dataset.output.ProvidedOutput)1