All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.datafactory.inputs.HDInsightStreamingActivityArgs Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.azurenative.datafactory.inputs;

import com.pulumi.azurenative.datafactory.enums.ActivityOnInactiveMarkAs;
import com.pulumi.azurenative.datafactory.enums.ActivityState;
import com.pulumi.azurenative.datafactory.enums.HDInsightActivityDebugInfoOption;
import com.pulumi.azurenative.datafactory.inputs.ActivityDependencyArgs;
import com.pulumi.azurenative.datafactory.inputs.ActivityPolicyArgs;
import com.pulumi.azurenative.datafactory.inputs.LinkedServiceReferenceArgs;
import com.pulumi.azurenative.datafactory.inputs.UserPropertyArgs;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Object;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * HDInsight streaming activity type.
 * 
 */
public final class HDInsightStreamingActivityArgs extends com.pulumi.resources.ResourceArgs {

    public static final HDInsightStreamingActivityArgs Empty = new HDInsightStreamingActivityArgs();

    /**
     * User specified arguments to HDInsightActivity.
     * 
     */
    @Import(name="arguments")
    private @Nullable Output> arguments;

    /**
     * @return User specified arguments to HDInsightActivity.
     * 
     */
    public Optional>> arguments() {
        return Optional.ofNullable(this.arguments);
    }

    /**
     * Combiner executable name. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="combiner")
    private @Nullable Output combiner;

    /**
     * @return Combiner executable name. Type: string (or Expression with resultType string).
     * 
     */
    public Optional> combiner() {
        return Optional.ofNullable(this.combiner);
    }

    /**
     * Command line environment values.
     * 
     */
    @Import(name="commandEnvironment")
    private @Nullable Output> commandEnvironment;

    /**
     * @return Command line environment values.
     * 
     */
    public Optional>> commandEnvironment() {
        return Optional.ofNullable(this.commandEnvironment);
    }

    /**
     * Allows user to specify defines for streaming job request.
     * 
     */
    @Import(name="defines")
    private @Nullable Output> defines;

    /**
     * @return Allows user to specify defines for streaming job request.
     * 
     */
    public Optional>> defines() {
        return Optional.ofNullable(this.defines);
    }

    /**
     * Activity depends on condition.
     * 
     */
    @Import(name="dependsOn")
    private @Nullable Output> dependsOn;

    /**
     * @return Activity depends on condition.
     * 
     */
    public Optional>> dependsOn() {
        return Optional.ofNullable(this.dependsOn);
    }

    /**
     * Activity description.
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return Activity description.
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * Linked service reference where the files are located.
     * 
     */
    @Import(name="fileLinkedService")
    private @Nullable Output fileLinkedService;

    /**
     * @return Linked service reference where the files are located.
     * 
     */
    public Optional> fileLinkedService() {
        return Optional.ofNullable(this.fileLinkedService);
    }

    /**
     * Paths to streaming job files. Can be directories.
     * 
     */
    @Import(name="filePaths", required=true)
    private Output> filePaths;

    /**
     * @return Paths to streaming job files. Can be directories.
     * 
     */
    public Output> filePaths() {
        return this.filePaths;
    }

    /**
     * Debug info option.
     * 
     */
    @Import(name="getDebugInfo")
    private @Nullable Output> getDebugInfo;

    /**
     * @return Debug info option.
     * 
     */
    public Optional>> getDebugInfo() {
        return Optional.ofNullable(this.getDebugInfo);
    }

    /**
     * Input blob path. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="input", required=true)
    private Output input;

    /**
     * @return Input blob path. Type: string (or Expression with resultType string).
     * 
     */
    public Output input() {
        return this.input;
    }

    /**
     * Linked service reference.
     * 
     */
    @Import(name="linkedServiceName")
    private @Nullable Output linkedServiceName;

    /**
     * @return Linked service reference.
     * 
     */
    public Optional> linkedServiceName() {
        return Optional.ofNullable(this.linkedServiceName);
    }

    /**
     * Mapper executable name. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="mapper", required=true)
    private Output mapper;

    /**
     * @return Mapper executable name. Type: string (or Expression with resultType string).
     * 
     */
    public Output mapper() {
        return this.mapper;
    }

    /**
     * Activity name.
     * 
     */
    @Import(name="name", required=true)
    private Output name;

    /**
     * @return Activity name.
     * 
     */
    public Output name() {
        return this.name;
    }

    /**
     * Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
     * 
     */
    @Import(name="onInactiveMarkAs")
    private @Nullable Output> onInactiveMarkAs;

    /**
     * @return Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
     * 
     */
    public Optional>> onInactiveMarkAs() {
        return Optional.ofNullable(this.onInactiveMarkAs);
    }

    /**
     * Output blob path. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="output", required=true)
    private Output output;

    /**
     * @return Output blob path. Type: string (or Expression with resultType string).
     * 
     */
    public Output output() {
        return this.output;
    }

    /**
     * Activity policy.
     * 
     */
    @Import(name="policy")
    private @Nullable Output policy;

    /**
     * @return Activity policy.
     * 
     */
    public Optional> policy() {
        return Optional.ofNullable(this.policy);
    }

    /**
     * Reducer executable name. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="reducer", required=true)
    private Output reducer;

    /**
     * @return Reducer executable name. Type: string (or Expression with resultType string).
     * 
     */
    public Output reducer() {
        return this.reducer;
    }

    /**
     * Activity state. This is an optional property and if not provided, the state will be Active by default.
     * 
     */
    @Import(name="state")
    private @Nullable Output> state;

    /**
     * @return Activity state. This is an optional property and if not provided, the state will be Active by default.
     * 
     */
    public Optional>> state() {
        return Optional.ofNullable(this.state);
    }

    /**
     * Storage linked service references.
     * 
     */
    @Import(name="storageLinkedServices")
    private @Nullable Output> storageLinkedServices;

    /**
     * @return Storage linked service references.
     * 
     */
    public Optional>> storageLinkedServices() {
        return Optional.ofNullable(this.storageLinkedServices);
    }

    /**
     * Type of activity.
     * Expected value is 'HDInsightStreaming'.
     * 
     */
    @Import(name="type", required=true)
    private Output type;

    /**
     * @return Type of activity.
     * Expected value is 'HDInsightStreaming'.
     * 
     */
    public Output type() {
        return this.type;
    }

    /**
     * Activity user properties.
     * 
     */
    @Import(name="userProperties")
    private @Nullable Output> userProperties;

    /**
     * @return Activity user properties.
     * 
     */
    public Optional>> userProperties() {
        return Optional.ofNullable(this.userProperties);
    }

    private HDInsightStreamingActivityArgs() {}

    private HDInsightStreamingActivityArgs(HDInsightStreamingActivityArgs $) {
        this.arguments = $.arguments;
        this.combiner = $.combiner;
        this.commandEnvironment = $.commandEnvironment;
        this.defines = $.defines;
        this.dependsOn = $.dependsOn;
        this.description = $.description;
        this.fileLinkedService = $.fileLinkedService;
        this.filePaths = $.filePaths;
        this.getDebugInfo = $.getDebugInfo;
        this.input = $.input;
        this.linkedServiceName = $.linkedServiceName;
        this.mapper = $.mapper;
        this.name = $.name;
        this.onInactiveMarkAs = $.onInactiveMarkAs;
        this.output = $.output;
        this.policy = $.policy;
        this.reducer = $.reducer;
        this.state = $.state;
        this.storageLinkedServices = $.storageLinkedServices;
        this.type = $.type;
        this.userProperties = $.userProperties;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(HDInsightStreamingActivityArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private HDInsightStreamingActivityArgs $;

        public Builder() {
            $ = new HDInsightStreamingActivityArgs();
        }

        public Builder(HDInsightStreamingActivityArgs defaults) {
            $ = new HDInsightStreamingActivityArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param arguments User specified arguments to HDInsightActivity.
         * 
         * @return builder
         * 
         */
        public Builder arguments(@Nullable Output> arguments) {
            $.arguments = arguments;
            return this;
        }

        /**
         * @param arguments User specified arguments to HDInsightActivity.
         * 
         * @return builder
         * 
         */
        public Builder arguments(List arguments) {
            return arguments(Output.of(arguments));
        }

        /**
         * @param arguments User specified arguments to HDInsightActivity.
         * 
         * @return builder
         * 
         */
        public Builder arguments(Object... arguments) {
            return arguments(List.of(arguments));
        }

        /**
         * @param combiner Combiner executable name. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder combiner(@Nullable Output combiner) {
            $.combiner = combiner;
            return this;
        }

        /**
         * @param combiner Combiner executable name. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder combiner(Object combiner) {
            return combiner(Output.of(combiner));
        }

        /**
         * @param commandEnvironment Command line environment values.
         * 
         * @return builder
         * 
         */
        public Builder commandEnvironment(@Nullable Output> commandEnvironment) {
            $.commandEnvironment = commandEnvironment;
            return this;
        }

        /**
         * @param commandEnvironment Command line environment values.
         * 
         * @return builder
         * 
         */
        public Builder commandEnvironment(List commandEnvironment) {
            return commandEnvironment(Output.of(commandEnvironment));
        }

        /**
         * @param commandEnvironment Command line environment values.
         * 
         * @return builder
         * 
         */
        public Builder commandEnvironment(Object... commandEnvironment) {
            return commandEnvironment(List.of(commandEnvironment));
        }

        /**
         * @param defines Allows user to specify defines for streaming job request.
         * 
         * @return builder
         * 
         */
        public Builder defines(@Nullable Output> defines) {
            $.defines = defines;
            return this;
        }

        /**
         * @param defines Allows user to specify defines for streaming job request.
         * 
         * @return builder
         * 
         */
        public Builder defines(Map defines) {
            return defines(Output.of(defines));
        }

        /**
         * @param dependsOn Activity depends on condition.
         * 
         * @return builder
         * 
         */
        public Builder dependsOn(@Nullable Output> dependsOn) {
            $.dependsOn = dependsOn;
            return this;
        }

        /**
         * @param dependsOn Activity depends on condition.
         * 
         * @return builder
         * 
         */
        public Builder dependsOn(List dependsOn) {
            return dependsOn(Output.of(dependsOn));
        }

        /**
         * @param dependsOn Activity depends on condition.
         * 
         * @return builder
         * 
         */
        public Builder dependsOn(ActivityDependencyArgs... dependsOn) {
            return dependsOn(List.of(dependsOn));
        }

        /**
         * @param description Activity description.
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Activity description.
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param fileLinkedService Linked service reference where the files are located.
         * 
         * @return builder
         * 
         */
        public Builder fileLinkedService(@Nullable Output fileLinkedService) {
            $.fileLinkedService = fileLinkedService;
            return this;
        }

        /**
         * @param fileLinkedService Linked service reference where the files are located.
         * 
         * @return builder
         * 
         */
        public Builder fileLinkedService(LinkedServiceReferenceArgs fileLinkedService) {
            return fileLinkedService(Output.of(fileLinkedService));
        }

        /**
         * @param filePaths Paths to streaming job files. Can be directories.
         * 
         * @return builder
         * 
         */
        public Builder filePaths(Output> filePaths) {
            $.filePaths = filePaths;
            return this;
        }

        /**
         * @param filePaths Paths to streaming job files. Can be directories.
         * 
         * @return builder
         * 
         */
        public Builder filePaths(List filePaths) {
            return filePaths(Output.of(filePaths));
        }

        /**
         * @param filePaths Paths to streaming job files. Can be directories.
         * 
         * @return builder
         * 
         */
        public Builder filePaths(Object... filePaths) {
            return filePaths(List.of(filePaths));
        }

        /**
         * @param getDebugInfo Debug info option.
         * 
         * @return builder
         * 
         */
        public Builder getDebugInfo(@Nullable Output> getDebugInfo) {
            $.getDebugInfo = getDebugInfo;
            return this;
        }

        /**
         * @param getDebugInfo Debug info option.
         * 
         * @return builder
         * 
         */
        public Builder getDebugInfo(Either getDebugInfo) {
            return getDebugInfo(Output.of(getDebugInfo));
        }

        /**
         * @param getDebugInfo Debug info option.
         * 
         * @return builder
         * 
         */
        public Builder getDebugInfo(String getDebugInfo) {
            return getDebugInfo(Either.ofLeft(getDebugInfo));
        }

        /**
         * @param getDebugInfo Debug info option.
         * 
         * @return builder
         * 
         */
        public Builder getDebugInfo(HDInsightActivityDebugInfoOption getDebugInfo) {
            return getDebugInfo(Either.ofRight(getDebugInfo));
        }

        /**
         * @param input Input blob path. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder input(Output input) {
            $.input = input;
            return this;
        }

        /**
         * @param input Input blob path. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder input(Object input) {
            return input(Output.of(input));
        }

        /**
         * @param linkedServiceName Linked service reference.
         * 
         * @return builder
         * 
         */
        public Builder linkedServiceName(@Nullable Output linkedServiceName) {
            $.linkedServiceName = linkedServiceName;
            return this;
        }

        /**
         * @param linkedServiceName Linked service reference.
         * 
         * @return builder
         * 
         */
        public Builder linkedServiceName(LinkedServiceReferenceArgs linkedServiceName) {
            return linkedServiceName(Output.of(linkedServiceName));
        }

        /**
         * @param mapper Mapper executable name. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder mapper(Output mapper) {
            $.mapper = mapper;
            return this;
        }

        /**
         * @param mapper Mapper executable name. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder mapper(Object mapper) {
            return mapper(Output.of(mapper));
        }

        /**
         * @param name Activity name.
         * 
         * @return builder
         * 
         */
        public Builder name(Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Activity name.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
         * 
         * @return builder
         * 
         */
        public Builder onInactiveMarkAs(@Nullable Output> onInactiveMarkAs) {
            $.onInactiveMarkAs = onInactiveMarkAs;
            return this;
        }

        /**
         * @param onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
         * 
         * @return builder
         * 
         */
        public Builder onInactiveMarkAs(Either onInactiveMarkAs) {
            return onInactiveMarkAs(Output.of(onInactiveMarkAs));
        }

        /**
         * @param onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
         * 
         * @return builder
         * 
         */
        public Builder onInactiveMarkAs(String onInactiveMarkAs) {
            return onInactiveMarkAs(Either.ofLeft(onInactiveMarkAs));
        }

        /**
         * @param onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
         * 
         * @return builder
         * 
         */
        public Builder onInactiveMarkAs(ActivityOnInactiveMarkAs onInactiveMarkAs) {
            return onInactiveMarkAs(Either.ofRight(onInactiveMarkAs));
        }

        /**
         * @param output Output blob path. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder output(Output output) {
            $.output = output;
            return this;
        }

        /**
         * @param output Output blob path. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder output(Object output) {
            return output(Output.of(output));
        }

        /**
         * @param policy Activity policy.
         * 
         * @return builder
         * 
         */
        public Builder policy(@Nullable Output policy) {
            $.policy = policy;
            return this;
        }

        /**
         * @param policy Activity policy.
         * 
         * @return builder
         * 
         */
        public Builder policy(ActivityPolicyArgs policy) {
            return policy(Output.of(policy));
        }

        /**
         * @param reducer Reducer executable name. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder reducer(Output reducer) {
            $.reducer = reducer;
            return this;
        }

        /**
         * @param reducer Reducer executable name. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder reducer(Object reducer) {
            return reducer(Output.of(reducer));
        }

        /**
         * @param state Activity state. This is an optional property and if not provided, the state will be Active by default.
         * 
         * @return builder
         * 
         */
        public Builder state(@Nullable Output> state) {
            $.state = state;
            return this;
        }

        /**
         * @param state Activity state. This is an optional property and if not provided, the state will be Active by default.
         * 
         * @return builder
         * 
         */
        public Builder state(Either state) {
            return state(Output.of(state));
        }

        /**
         * @param state Activity state. This is an optional property and if not provided, the state will be Active by default.
         * 
         * @return builder
         * 
         */
        public Builder state(String state) {
            return state(Either.ofLeft(state));
        }

        /**
         * @param state Activity state. This is an optional property and if not provided, the state will be Active by default.
         * 
         * @return builder
         * 
         */
        public Builder state(ActivityState state) {
            return state(Either.ofRight(state));
        }

        /**
         * @param storageLinkedServices Storage linked service references.
         * 
         * @return builder
         * 
         */
        public Builder storageLinkedServices(@Nullable Output> storageLinkedServices) {
            $.storageLinkedServices = storageLinkedServices;
            return this;
        }

        /**
         * @param storageLinkedServices Storage linked service references.
         * 
         * @return builder
         * 
         */
        public Builder storageLinkedServices(List storageLinkedServices) {
            return storageLinkedServices(Output.of(storageLinkedServices));
        }

        /**
         * @param storageLinkedServices Storage linked service references.
         * 
         * @return builder
         * 
         */
        public Builder storageLinkedServices(LinkedServiceReferenceArgs... storageLinkedServices) {
            return storageLinkedServices(List.of(storageLinkedServices));
        }

        /**
         * @param type Type of activity.
         * Expected value is 'HDInsightStreaming'.
         * 
         * @return builder
         * 
         */
        public Builder type(Output type) {
            $.type = type;
            return this;
        }

        /**
         * @param type Type of activity.
         * Expected value is 'HDInsightStreaming'.
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Output.of(type));
        }

        /**
         * @param userProperties Activity user properties.
         * 
         * @return builder
         * 
         */
        public Builder userProperties(@Nullable Output> userProperties) {
            $.userProperties = userProperties;
            return this;
        }

        /**
         * @param userProperties Activity user properties.
         * 
         * @return builder
         * 
         */
        public Builder userProperties(List userProperties) {
            return userProperties(Output.of(userProperties));
        }

        /**
         * @param userProperties Activity user properties.
         * 
         * @return builder
         * 
         */
        public Builder userProperties(UserPropertyArgs... userProperties) {
            return userProperties(List.of(userProperties));
        }

        public HDInsightStreamingActivityArgs build() {
            if ($.filePaths == null) {
                throw new MissingRequiredPropertyException("HDInsightStreamingActivityArgs", "filePaths");
            }
            if ($.input == null) {
                throw new MissingRequiredPropertyException("HDInsightStreamingActivityArgs", "input");
            }
            if ($.mapper == null) {
                throw new MissingRequiredPropertyException("HDInsightStreamingActivityArgs", "mapper");
            }
            if ($.name == null) {
                throw new MissingRequiredPropertyException("HDInsightStreamingActivityArgs", "name");
            }
            if ($.output == null) {
                throw new MissingRequiredPropertyException("HDInsightStreamingActivityArgs", "output");
            }
            if ($.reducer == null) {
                throw new MissingRequiredPropertyException("HDInsightStreamingActivityArgs", "reducer");
            }
            $.type = Codegen.stringProp("type").output().arg($.type).require();
            return $;
        }
    }

}