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

com.pulumi.azurenative.datafactory.outputs.CustomActivityResponse 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.outputs;

import com.pulumi.azurenative.datafactory.outputs.ActivityDependencyResponse;
import com.pulumi.azurenative.datafactory.outputs.ActivityPolicyResponse;
import com.pulumi.azurenative.datafactory.outputs.CustomActivityReferenceObjectResponse;
import com.pulumi.azurenative.datafactory.outputs.LinkedServiceReferenceResponse;
import com.pulumi.azurenative.datafactory.outputs.UserPropertyResponse;
import com.pulumi.core.annotations.CustomType;
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;

@CustomType
public final class CustomActivityResponse {
    /**
     * @return Elevation level and scope for the user, default is nonadmin task. Type: string (or Expression with resultType double).
     * 
     */
    private @Nullable Object autoUserSpecification;
    /**
     * @return Command for custom activity Type: string (or Expression with resultType string).
     * 
     */
    private Object command;
    /**
     * @return Activity depends on condition.
     * 
     */
    private @Nullable List dependsOn;
    /**
     * @return Activity description.
     * 
     */
    private @Nullable String description;
    /**
     * @return User defined property bag. There is no restriction on the keys or values that can be used. The user specified custom activity has the full responsibility to consume and interpret the content defined.
     * 
     */
    private @Nullable Map extendedProperties;
    /**
     * @return Folder path for resource files Type: string (or Expression with resultType string).
     * 
     */
    private @Nullable Object folderPath;
    /**
     * @return Linked service reference.
     * 
     */
    private @Nullable LinkedServiceReferenceResponse linkedServiceName;
    /**
     * @return Activity name.
     * 
     */
    private String name;
    /**
     * @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.
     * 
     */
    private @Nullable String onInactiveMarkAs;
    /**
     * @return Activity policy.
     * 
     */
    private @Nullable ActivityPolicyResponse policy;
    /**
     * @return Reference objects
     * 
     */
    private @Nullable CustomActivityReferenceObjectResponse referenceObjects;
    /**
     * @return Resource linked service reference.
     * 
     */
    private @Nullable LinkedServiceReferenceResponse resourceLinkedService;
    /**
     * @return The retention time for the files submitted for custom activity. Type: double (or Expression with resultType double).
     * 
     */
    private @Nullable Object retentionTimeInDays;
    /**
     * @return Activity state. This is an optional property and if not provided, the state will be Active by default.
     * 
     */
    private @Nullable String state;
    /**
     * @return Type of activity.
     * Expected value is 'Custom'.
     * 
     */
    private String type;
    /**
     * @return Activity user properties.
     * 
     */
    private @Nullable List userProperties;

    private CustomActivityResponse() {}
    /**
     * @return Elevation level and scope for the user, default is nonadmin task. Type: string (or Expression with resultType double).
     * 
     */
    public Optional autoUserSpecification() {
        return Optional.ofNullable(this.autoUserSpecification);
    }
    /**
     * @return Command for custom activity Type: string (or Expression with resultType string).
     * 
     */
    public Object command() {
        return this.command;
    }
    /**
     * @return Activity depends on condition.
     * 
     */
    public List dependsOn() {
        return this.dependsOn == null ? List.of() : this.dependsOn;
    }
    /**
     * @return Activity description.
     * 
     */
    public Optional description() {
        return Optional.ofNullable(this.description);
    }
    /**
     * @return User defined property bag. There is no restriction on the keys or values that can be used. The user specified custom activity has the full responsibility to consume and interpret the content defined.
     * 
     */
    public Map extendedProperties() {
        return this.extendedProperties == null ? Map.of() : this.extendedProperties;
    }
    /**
     * @return Folder path for resource files Type: string (or Expression with resultType string).
     * 
     */
    public Optional folderPath() {
        return Optional.ofNullable(this.folderPath);
    }
    /**
     * @return Linked service reference.
     * 
     */
    public Optional linkedServiceName() {
        return Optional.ofNullable(this.linkedServiceName);
    }
    /**
     * @return Activity name.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @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);
    }
    /**
     * @return Activity policy.
     * 
     */
    public Optional policy() {
        return Optional.ofNullable(this.policy);
    }
    /**
     * @return Reference objects
     * 
     */
    public Optional referenceObjects() {
        return Optional.ofNullable(this.referenceObjects);
    }
    /**
     * @return Resource linked service reference.
     * 
     */
    public Optional resourceLinkedService() {
        return Optional.ofNullable(this.resourceLinkedService);
    }
    /**
     * @return The retention time for the files submitted for custom activity. Type: double (or Expression with resultType double).
     * 
     */
    public Optional retentionTimeInDays() {
        return Optional.ofNullable(this.retentionTimeInDays);
    }
    /**
     * @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);
    }
    /**
     * @return Type of activity.
     * Expected value is 'Custom'.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return Activity user properties.
     * 
     */
    public List userProperties() {
        return this.userProperties == null ? List.of() : this.userProperties;
    }

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

    public static Builder builder(CustomActivityResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Object autoUserSpecification;
        private Object command;
        private @Nullable List dependsOn;
        private @Nullable String description;
        private @Nullable Map extendedProperties;
        private @Nullable Object folderPath;
        private @Nullable LinkedServiceReferenceResponse linkedServiceName;
        private String name;
        private @Nullable String onInactiveMarkAs;
        private @Nullable ActivityPolicyResponse policy;
        private @Nullable CustomActivityReferenceObjectResponse referenceObjects;
        private @Nullable LinkedServiceReferenceResponse resourceLinkedService;
        private @Nullable Object retentionTimeInDays;
        private @Nullable String state;
        private String type;
        private @Nullable List userProperties;
        public Builder() {}
        public Builder(CustomActivityResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.autoUserSpecification = defaults.autoUserSpecification;
    	      this.command = defaults.command;
    	      this.dependsOn = defaults.dependsOn;
    	      this.description = defaults.description;
    	      this.extendedProperties = defaults.extendedProperties;
    	      this.folderPath = defaults.folderPath;
    	      this.linkedServiceName = defaults.linkedServiceName;
    	      this.name = defaults.name;
    	      this.onInactiveMarkAs = defaults.onInactiveMarkAs;
    	      this.policy = defaults.policy;
    	      this.referenceObjects = defaults.referenceObjects;
    	      this.resourceLinkedService = defaults.resourceLinkedService;
    	      this.retentionTimeInDays = defaults.retentionTimeInDays;
    	      this.state = defaults.state;
    	      this.type = defaults.type;
    	      this.userProperties = defaults.userProperties;
        }

        @CustomType.Setter
        public Builder autoUserSpecification(@Nullable Object autoUserSpecification) {

            this.autoUserSpecification = autoUserSpecification;
            return this;
        }
        @CustomType.Setter
        public Builder command(Object command) {
            if (command == null) {
              throw new MissingRequiredPropertyException("CustomActivityResponse", "command");
            }
            this.command = command;
            return this;
        }
        @CustomType.Setter
        public Builder dependsOn(@Nullable List dependsOn) {

            this.dependsOn = dependsOn;
            return this;
        }
        public Builder dependsOn(ActivityDependencyResponse... dependsOn) {
            return dependsOn(List.of(dependsOn));
        }
        @CustomType.Setter
        public Builder description(@Nullable String description) {

            this.description = description;
            return this;
        }
        @CustomType.Setter
        public Builder extendedProperties(@Nullable Map extendedProperties) {

            this.extendedProperties = extendedProperties;
            return this;
        }
        @CustomType.Setter
        public Builder folderPath(@Nullable Object folderPath) {

            this.folderPath = folderPath;
            return this;
        }
        @CustomType.Setter
        public Builder linkedServiceName(@Nullable LinkedServiceReferenceResponse linkedServiceName) {

            this.linkedServiceName = linkedServiceName;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("CustomActivityResponse", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder onInactiveMarkAs(@Nullable String onInactiveMarkAs) {

            this.onInactiveMarkAs = onInactiveMarkAs;
            return this;
        }
        @CustomType.Setter
        public Builder policy(@Nullable ActivityPolicyResponse policy) {

            this.policy = policy;
            return this;
        }
        @CustomType.Setter
        public Builder referenceObjects(@Nullable CustomActivityReferenceObjectResponse referenceObjects) {

            this.referenceObjects = referenceObjects;
            return this;
        }
        @CustomType.Setter
        public Builder resourceLinkedService(@Nullable LinkedServiceReferenceResponse resourceLinkedService) {

            this.resourceLinkedService = resourceLinkedService;
            return this;
        }
        @CustomType.Setter
        public Builder retentionTimeInDays(@Nullable Object retentionTimeInDays) {

            this.retentionTimeInDays = retentionTimeInDays;
            return this;
        }
        @CustomType.Setter
        public Builder state(@Nullable String state) {

            this.state = state;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("CustomActivityResponse", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder userProperties(@Nullable List userProperties) {

            this.userProperties = userProperties;
            return this;
        }
        public Builder userProperties(UserPropertyResponse... userProperties) {
            return userProperties(List.of(userProperties));
        }
        public CustomActivityResponse build() {
            final var _resultValue = new CustomActivityResponse();
            _resultValue.autoUserSpecification = autoUserSpecification;
            _resultValue.command = command;
            _resultValue.dependsOn = dependsOn;
            _resultValue.description = description;
            _resultValue.extendedProperties = extendedProperties;
            _resultValue.folderPath = folderPath;
            _resultValue.linkedServiceName = linkedServiceName;
            _resultValue.name = name;
            _resultValue.onInactiveMarkAs = onInactiveMarkAs;
            _resultValue.policy = policy;
            _resultValue.referenceObjects = referenceObjects;
            _resultValue.resourceLinkedService = resourceLinkedService;
            _resultValue.retentionTimeInDays = retentionTimeInDays;
            _resultValue.state = state;
            _resultValue.type = type;
            _resultValue.userProperties = userProperties;
            return _resultValue;
        }
    }
}