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

com.pulumi.aws.kendra.inputs.DataSourceState Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

There is a newer version: 6.72.0
Show newest version
// *** 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.aws.kendra.inputs;

import com.pulumi.aws.kendra.inputs.DataSourceConfigurationArgs;
import com.pulumi.aws.kendra.inputs.DataSourceCustomDocumentEnrichmentConfigurationArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class DataSourceState extends com.pulumi.resources.ResourceArgs {

    public static final DataSourceState Empty = new DataSourceState();

    /**
     * ARN of the Data Source.
     * 
     */
    @Import(name="arn")
    private @Nullable Output arn;

    /**
     * @return ARN of the Data Source.
     * 
     */
    public Optional> arn() {
        return Optional.ofNullable(this.arn);
    }

    /**
     * A block with the configuration information to connect to your Data Source repository. You can't specify the `configuration` block when the `type` parameter is set to `CUSTOM`. Detailed below.
     * 
     */
    @Import(name="configuration")
    private @Nullable Output configuration;

    /**
     * @return A block with the configuration information to connect to your Data Source repository. You can't specify the `configuration` block when the `type` parameter is set to `CUSTOM`. Detailed below.
     * 
     */
    public Optional> configuration() {
        return Optional.ofNullable(this.configuration);
    }

    /**
     * The Unix timestamp of when the Data Source was created.
     * 
     */
    @Import(name="createdAt")
    private @Nullable Output createdAt;

    /**
     * @return The Unix timestamp of when the Data Source was created.
     * 
     */
    public Optional> createdAt() {
        return Optional.ofNullable(this.createdAt);
    }

    /**
     * A block with the configuration information for altering document metadata and content during the document ingestion process. For more information on how to create, modify and delete document metadata, or make other content alterations when you ingest documents into Amazon Kendra, see [Customizing document metadata during the ingestion process](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html). Detailed below.
     * 
     */
    @Import(name="customDocumentEnrichmentConfiguration")
    private @Nullable Output customDocumentEnrichmentConfiguration;

    /**
     * @return A block with the configuration information for altering document metadata and content during the document ingestion process. For more information on how to create, modify and delete document metadata, or make other content alterations when you ingest documents into Amazon Kendra, see [Customizing document metadata during the ingestion process](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html). Detailed below.
     * 
     */
    public Optional> customDocumentEnrichmentConfiguration() {
        return Optional.ofNullable(this.customDocumentEnrichmentConfiguration);
    }

    /**
     * The unique identifiers of the Data Source.
     * 
     */
    @Import(name="dataSourceId")
    private @Nullable Output dataSourceId;

    /**
     * @return The unique identifiers of the Data Source.
     * 
     */
    public Optional> dataSourceId() {
        return Optional.ofNullable(this.dataSourceId);
    }

    /**
     * A description for the Data Source connector.
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return A description for the Data Source connector.
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * When the Status field value is `FAILED`, the ErrorMessage field contains a description of the error that caused the Data Source to fail.
     * 
     */
    @Import(name="errorMessage")
    private @Nullable Output errorMessage;

    /**
     * @return When the Status field value is `FAILED`, the ErrorMessage field contains a description of the error that caused the Data Source to fail.
     * 
     */
    public Optional> errorMessage() {
        return Optional.ofNullable(this.errorMessage);
    }

    /**
     * The identifier of the index for your Amazon Kendra data source.
     * 
     */
    @Import(name="indexId")
    private @Nullable Output indexId;

    /**
     * @return The identifier of the index for your Amazon Kendra data source.
     * 
     */
    public Optional> indexId() {
        return Optional.ofNullable(this.indexId);
    }

    /**
     * The code for a language. This allows you to support a language for all documents when creating the Data Source connector. English is supported by default. For more information on supported languages, including their codes, see [Adding documents in languages other than English](https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html).
     * 
     */
    @Import(name="languageCode")
    private @Nullable Output languageCode;

    /**
     * @return The code for a language. This allows you to support a language for all documents when creating the Data Source connector. English is supported by default. For more information on supported languages, including their codes, see [Adding documents in languages other than English](https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html).
     * 
     */
    public Optional> languageCode() {
        return Optional.ofNullable(this.languageCode);
    }

    /**
     * A name for your data source connector.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return A name for your data source connector.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * The Amazon Resource Name (ARN) of a role with permission to access the data source connector. For more information, see [IAM roles for Amazon Kendra](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). You can't specify the `role_arn` parameter when the `type` parameter is set to `CUSTOM`. The `role_arn` parameter is required for all other data sources.
     * 
     */
    @Import(name="roleArn")
    private @Nullable Output roleArn;

    /**
     * @return The Amazon Resource Name (ARN) of a role with permission to access the data source connector. For more information, see [IAM roles for Amazon Kendra](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). You can't specify the `role_arn` parameter when the `type` parameter is set to `CUSTOM`. The `role_arn` parameter is required for all other data sources.
     * 
     */
    public Optional> roleArn() {
        return Optional.ofNullable(this.roleArn);
    }

    /**
     * Sets the frequency for Amazon Kendra to check the documents in your Data Source repository and update the index. If you don't set a schedule Amazon Kendra will not periodically update the index. You can call the `StartDataSourceSyncJob` API to update the index.
     * 
     */
    @Import(name="schedule")
    private @Nullable Output schedule;

    /**
     * @return Sets the frequency for Amazon Kendra to check the documents in your Data Source repository and update the index. If you don't set a schedule Amazon Kendra will not periodically update the index. You can call the `StartDataSourceSyncJob` API to update the index.
     * 
     */
    public Optional> schedule() {
        return Optional.ofNullable(this.schedule);
    }

    /**
     * The current status of the Data Source. When the status is `ACTIVE` the Data Source is ready to use. When the status is `FAILED`, the `error_message` field contains the reason that the Data Source failed.
     * 
     */
    @Import(name="status")
    private @Nullable Output status;

    /**
     * @return The current status of the Data Source. When the status is `ACTIVE` the Data Source is ready to use. When the status is `FAILED`, the `error_message` field contains the reason that the Data Source failed.
     * 
     */
    public Optional> status() {
        return Optional.ofNullable(this.status);
    }

    /**
     * Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
     * 
     */
    @Import(name="tags")
    private @Nullable Output> tags;

    /**
     * @return Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
     * 
     */
    public Optional>> tags() {
        return Optional.ofNullable(this.tags);
    }

    /**
     * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
     * 
     * @deprecated
     * Please use `tags` instead.
     * 
     */
    @Deprecated /* Please use `tags` instead. */
    @Import(name="tagsAll")
    private @Nullable Output> tagsAll;

    /**
     * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
     * 
     * @deprecated
     * Please use `tags` instead.
     * 
     */
    @Deprecated /* Please use `tags` instead. */
    public Optional>> tagsAll() {
        return Optional.ofNullable(this.tagsAll);
    }

    /**
     * The type of data source repository. For an updated list of values, refer to [Valid Values for Type](https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html#Kendra-CreateDataSource-request-Type).
     * 
     * The following arguments are optional:
     * 
     */
    @Import(name="type")
    private @Nullable Output type;

    /**
     * @return The type of data source repository. For an updated list of values, refer to [Valid Values for Type](https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html#Kendra-CreateDataSource-request-Type).
     * 
     * The following arguments are optional:
     * 
     */
    public Optional> type() {
        return Optional.ofNullable(this.type);
    }

    /**
     * The Unix timestamp of when the Data Source was last updated.
     * 
     */
    @Import(name="updatedAt")
    private @Nullable Output updatedAt;

    /**
     * @return The Unix timestamp of when the Data Source was last updated.
     * 
     */
    public Optional> updatedAt() {
        return Optional.ofNullable(this.updatedAt);
    }

    private DataSourceState() {}

    private DataSourceState(DataSourceState $) {
        this.arn = $.arn;
        this.configuration = $.configuration;
        this.createdAt = $.createdAt;
        this.customDocumentEnrichmentConfiguration = $.customDocumentEnrichmentConfiguration;
        this.dataSourceId = $.dataSourceId;
        this.description = $.description;
        this.errorMessage = $.errorMessage;
        this.indexId = $.indexId;
        this.languageCode = $.languageCode;
        this.name = $.name;
        this.roleArn = $.roleArn;
        this.schedule = $.schedule;
        this.status = $.status;
        this.tags = $.tags;
        this.tagsAll = $.tagsAll;
        this.type = $.type;
        this.updatedAt = $.updatedAt;
    }

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

    public static final class Builder {
        private DataSourceState $;

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

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

        /**
         * @param arn ARN of the Data Source.
         * 
         * @return builder
         * 
         */
        public Builder arn(@Nullable Output arn) {
            $.arn = arn;
            return this;
        }

        /**
         * @param arn ARN of the Data Source.
         * 
         * @return builder
         * 
         */
        public Builder arn(String arn) {
            return arn(Output.of(arn));
        }

        /**
         * @param configuration A block with the configuration information to connect to your Data Source repository. You can't specify the `configuration` block when the `type` parameter is set to `CUSTOM`. Detailed below.
         * 
         * @return builder
         * 
         */
        public Builder configuration(@Nullable Output configuration) {
            $.configuration = configuration;
            return this;
        }

        /**
         * @param configuration A block with the configuration information to connect to your Data Source repository. You can't specify the `configuration` block when the `type` parameter is set to `CUSTOM`. Detailed below.
         * 
         * @return builder
         * 
         */
        public Builder configuration(DataSourceConfigurationArgs configuration) {
            return configuration(Output.of(configuration));
        }

        /**
         * @param createdAt The Unix timestamp of when the Data Source was created.
         * 
         * @return builder
         * 
         */
        public Builder createdAt(@Nullable Output createdAt) {
            $.createdAt = createdAt;
            return this;
        }

        /**
         * @param createdAt The Unix timestamp of when the Data Source was created.
         * 
         * @return builder
         * 
         */
        public Builder createdAt(String createdAt) {
            return createdAt(Output.of(createdAt));
        }

        /**
         * @param customDocumentEnrichmentConfiguration A block with the configuration information for altering document metadata and content during the document ingestion process. For more information on how to create, modify and delete document metadata, or make other content alterations when you ingest documents into Amazon Kendra, see [Customizing document metadata during the ingestion process](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html). Detailed below.
         * 
         * @return builder
         * 
         */
        public Builder customDocumentEnrichmentConfiguration(@Nullable Output customDocumentEnrichmentConfiguration) {
            $.customDocumentEnrichmentConfiguration = customDocumentEnrichmentConfiguration;
            return this;
        }

        /**
         * @param customDocumentEnrichmentConfiguration A block with the configuration information for altering document metadata and content during the document ingestion process. For more information on how to create, modify and delete document metadata, or make other content alterations when you ingest documents into Amazon Kendra, see [Customizing document metadata during the ingestion process](https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html). Detailed below.
         * 
         * @return builder
         * 
         */
        public Builder customDocumentEnrichmentConfiguration(DataSourceCustomDocumentEnrichmentConfigurationArgs customDocumentEnrichmentConfiguration) {
            return customDocumentEnrichmentConfiguration(Output.of(customDocumentEnrichmentConfiguration));
        }

        /**
         * @param dataSourceId The unique identifiers of the Data Source.
         * 
         * @return builder
         * 
         */
        public Builder dataSourceId(@Nullable Output dataSourceId) {
            $.dataSourceId = dataSourceId;
            return this;
        }

        /**
         * @param dataSourceId The unique identifiers of the Data Source.
         * 
         * @return builder
         * 
         */
        public Builder dataSourceId(String dataSourceId) {
            return dataSourceId(Output.of(dataSourceId));
        }

        /**
         * @param description A description for the Data Source connector.
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description A description for the Data Source connector.
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param errorMessage When the Status field value is `FAILED`, the ErrorMessage field contains a description of the error that caused the Data Source to fail.
         * 
         * @return builder
         * 
         */
        public Builder errorMessage(@Nullable Output errorMessage) {
            $.errorMessage = errorMessage;
            return this;
        }

        /**
         * @param errorMessage When the Status field value is `FAILED`, the ErrorMessage field contains a description of the error that caused the Data Source to fail.
         * 
         * @return builder
         * 
         */
        public Builder errorMessage(String errorMessage) {
            return errorMessage(Output.of(errorMessage));
        }

        /**
         * @param indexId The identifier of the index for your Amazon Kendra data source.
         * 
         * @return builder
         * 
         */
        public Builder indexId(@Nullable Output indexId) {
            $.indexId = indexId;
            return this;
        }

        /**
         * @param indexId The identifier of the index for your Amazon Kendra data source.
         * 
         * @return builder
         * 
         */
        public Builder indexId(String indexId) {
            return indexId(Output.of(indexId));
        }

        /**
         * @param languageCode The code for a language. This allows you to support a language for all documents when creating the Data Source connector. English is supported by default. For more information on supported languages, including their codes, see [Adding documents in languages other than English](https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html).
         * 
         * @return builder
         * 
         */
        public Builder languageCode(@Nullable Output languageCode) {
            $.languageCode = languageCode;
            return this;
        }

        /**
         * @param languageCode The code for a language. This allows you to support a language for all documents when creating the Data Source connector. English is supported by default. For more information on supported languages, including their codes, see [Adding documents in languages other than English](https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html).
         * 
         * @return builder
         * 
         */
        public Builder languageCode(String languageCode) {
            return languageCode(Output.of(languageCode));
        }

        /**
         * @param name A name for your data source connector.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name A name for your data source connector.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param roleArn The Amazon Resource Name (ARN) of a role with permission to access the data source connector. For more information, see [IAM roles for Amazon Kendra](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). You can't specify the `role_arn` parameter when the `type` parameter is set to `CUSTOM`. The `role_arn` parameter is required for all other data sources.
         * 
         * @return builder
         * 
         */
        public Builder roleArn(@Nullable Output roleArn) {
            $.roleArn = roleArn;
            return this;
        }

        /**
         * @param roleArn The Amazon Resource Name (ARN) of a role with permission to access the data source connector. For more information, see [IAM roles for Amazon Kendra](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html). You can't specify the `role_arn` parameter when the `type` parameter is set to `CUSTOM`. The `role_arn` parameter is required for all other data sources.
         * 
         * @return builder
         * 
         */
        public Builder roleArn(String roleArn) {
            return roleArn(Output.of(roleArn));
        }

        /**
         * @param schedule Sets the frequency for Amazon Kendra to check the documents in your Data Source repository and update the index. If you don't set a schedule Amazon Kendra will not periodically update the index. You can call the `StartDataSourceSyncJob` API to update the index.
         * 
         * @return builder
         * 
         */
        public Builder schedule(@Nullable Output schedule) {
            $.schedule = schedule;
            return this;
        }

        /**
         * @param schedule Sets the frequency for Amazon Kendra to check the documents in your Data Source repository and update the index. If you don't set a schedule Amazon Kendra will not periodically update the index. You can call the `StartDataSourceSyncJob` API to update the index.
         * 
         * @return builder
         * 
         */
        public Builder schedule(String schedule) {
            return schedule(Output.of(schedule));
        }

        /**
         * @param status The current status of the Data Source. When the status is `ACTIVE` the Data Source is ready to use. When the status is `FAILED`, the `error_message` field contains the reason that the Data Source failed.
         * 
         * @return builder
         * 
         */
        public Builder status(@Nullable Output status) {
            $.status = status;
            return this;
        }

        /**
         * @param status The current status of the Data Source. When the status is `ACTIVE` the Data Source is ready to use. When the status is `FAILED`, the `error_message` field contains the reason that the Data Source failed.
         * 
         * @return builder
         * 
         */
        public Builder status(String status) {
            return status(Output.of(status));
        }

        /**
         * @param tags Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
         * 
         * @return builder
         * 
         */
        public Builder tags(@Nullable Output> tags) {
            $.tags = tags;
            return this;
        }

        /**
         * @param tags Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
         * 
         * @return builder
         * 
         */
        public Builder tags(Map tags) {
            return tags(Output.of(tags));
        }

        /**
         * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
         * 
         * @return builder
         * 
         * @deprecated
         * Please use `tags` instead.
         * 
         */
        @Deprecated /* Please use `tags` instead. */
        public Builder tagsAll(@Nullable Output> tagsAll) {
            $.tagsAll = tagsAll;
            return this;
        }

        /**
         * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
         * 
         * @return builder
         * 
         * @deprecated
         * Please use `tags` instead.
         * 
         */
        @Deprecated /* Please use `tags` instead. */
        public Builder tagsAll(Map tagsAll) {
            return tagsAll(Output.of(tagsAll));
        }

        /**
         * @param type The type of data source repository. For an updated list of values, refer to [Valid Values for Type](https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html#Kendra-CreateDataSource-request-Type).
         * 
         * The following arguments are optional:
         * 
         * @return builder
         * 
         */
        public Builder type(@Nullable Output type) {
            $.type = type;
            return this;
        }

        /**
         * @param type The type of data source repository. For an updated list of values, refer to [Valid Values for Type](https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html#Kendra-CreateDataSource-request-Type).
         * 
         * The following arguments are optional:
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Output.of(type));
        }

        /**
         * @param updatedAt The Unix timestamp of when the Data Source was last updated.
         * 
         * @return builder
         * 
         */
        public Builder updatedAt(@Nullable Output updatedAt) {
            $.updatedAt = updatedAt;
            return this;
        }

        /**
         * @param updatedAt The Unix timestamp of when the Data Source was last updated.
         * 
         * @return builder
         * 
         */
        public Builder updatedAt(String updatedAt) {
            return updatedAt(Output.of(updatedAt));
        }

        public DataSourceState build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy