/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the kendra-2019-02-03.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Kendra.Model
{
///
/// This is the response object from the DescribeIndex operation.
///
public partial class DescribeIndexResponse : AmazonWebServiceResponse
{
private CapacityUnitsConfiguration _capacityUnits;
private DateTime? _createdAt;
private string _description;
private List _documentMetadataConfigurations = new List();
private IndexEdition _edition;
private string _errorMessage;
private string _id;
private IndexStatistics _indexStatistics;
private string _name;
private string _roleArn;
private ServerSideEncryptionConfiguration _serverSideEncryptionConfiguration;
private IndexStatus _status;
private DateTime? _updatedAt;
private UserContextPolicy _userContextPolicy;
private UserGroupResolutionConfiguration _userGroupResolutionConfiguration;
private List _userTokenConfigurations = new List();
///
/// Gets and sets the property CapacityUnits.
///
/// For Enterprise Edition indexes, you can choose to use additional capacity to meet
/// the needs of your application. This contains the capacity units used for the index.
/// A query or document storage capacity of zero indicates that the index is using the
/// default capacity. For more information on the default capacity for an index and adjusting
/// this, see Adjusting
/// capacity.
///
///
public CapacityUnitsConfiguration CapacityUnits
{
get { return this._capacityUnits; }
set { this._capacityUnits = value; }
}
// Check to see if CapacityUnits property is set
internal bool IsSetCapacityUnits()
{
return this._capacityUnits != null;
}
///
/// Gets and sets the property CreatedAt.
///
/// The Unix timestamp when the index was created.
///
///
public DateTime CreatedAt
{
get { return this._createdAt.GetValueOrDefault(); }
set { this._createdAt = value; }
}
// Check to see if CreatedAt property is set
internal bool IsSetCreatedAt()
{
return this._createdAt.HasValue;
}
///
/// Gets and sets the property Description.
///
/// The description for the index.
///
///
[AWSProperty(Min=0, Max=1000)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property DocumentMetadataConfigurations.
///
/// Configuration information for document metadata or fields. Document metadata are fields
/// or attributes associated with your documents. For example, the company department
/// name associated with each document.
///
///
[AWSProperty(Min=0, Max=500)]
public List DocumentMetadataConfigurations
{
get { return this._documentMetadataConfigurations; }
set { this._documentMetadataConfigurations = value; }
}
// Check to see if DocumentMetadataConfigurations property is set
internal bool IsSetDocumentMetadataConfigurations()
{
return this._documentMetadataConfigurations != null && this._documentMetadataConfigurations.Count > 0;
}
///
/// Gets and sets the property Edition.
///
/// The Amazon Kendra edition used for the index. You decide the edition when you create
/// the index.
///
///
public IndexEdition Edition
{
get { return this._edition; }
set { this._edition = value; }
}
// Check to see if Edition property is set
internal bool IsSetEdition()
{
return this._edition != null;
}
///
/// Gets and sets the property ErrorMessage.
///
/// When the Status
field value is FAILED
, the ErrorMessage
/// field contains a message that explains why.
///
///
[AWSProperty(Min=1, Max=2048)]
public string ErrorMessage
{
get { return this._errorMessage; }
set { this._errorMessage = value; }
}
// Check to see if ErrorMessage property is set
internal bool IsSetErrorMessage()
{
return this._errorMessage != null;
}
///
/// Gets and sets the property Id.
///
/// The identifier of the index.
///
///
[AWSProperty(Min=36, Max=36)]
public string Id
{
get { return this._id; }
set { this._id = value; }
}
// Check to see if Id property is set
internal bool IsSetId()
{
return this._id != null;
}
///
/// Gets and sets the property IndexStatistics.
///
/// Provides information about the number of FAQ questions and answers and the number
/// of text documents indexed.
///
///
public IndexStatistics IndexStatistics
{
get { return this._indexStatistics; }
set { this._indexStatistics = value; }
}
// Check to see if IndexStatistics property is set
internal bool IsSetIndexStatistics()
{
return this._indexStatistics != null;
}
///
/// Gets and sets the property Name.
///
/// The name of the index.
///
///
[AWSProperty(Min=1, Max=1000)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property RoleArn.
///
/// The Amazon Resource Name (ARN) of the IAM role that gives Amazon Kendra permission
/// to write to your Amazon Cloudwatch logs.
///
///
[AWSProperty(Min=0, Max=1284)]
public string RoleArn
{
get { return this._roleArn; }
set { this._roleArn = value; }
}
// Check to see if RoleArn property is set
internal bool IsSetRoleArn()
{
return this._roleArn != null;
}
///
/// Gets and sets the property ServerSideEncryptionConfiguration.
///
/// The identifier of the KMScustomer master key (CMK) that is used to encrypt your data.
/// Amazon Kendra doesn't support asymmetric CMKs.
///
///
public ServerSideEncryptionConfiguration ServerSideEncryptionConfiguration
{
get { return this._serverSideEncryptionConfiguration; }
set { this._serverSideEncryptionConfiguration = value; }
}
// Check to see if ServerSideEncryptionConfiguration property is set
internal bool IsSetServerSideEncryptionConfiguration()
{
return this._serverSideEncryptionConfiguration != null;
}
///
/// Gets and sets the property Status.
///
/// The current status of the index. When the value is ACTIVE
, the index
/// is ready for use. If the Status
field value is FAILED
, the
/// ErrorMessage
field contains a message that explains why.
///
///
public IndexStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property UpdatedAt.
///
/// The Unix when the index was last updated.
///
///
public DateTime UpdatedAt
{
get { return this._updatedAt.GetValueOrDefault(); }
set { this._updatedAt = value; }
}
// Check to see if UpdatedAt property is set
internal bool IsSetUpdatedAt()
{
return this._updatedAt.HasValue;
}
///
/// Gets and sets the property UserContextPolicy.
///
/// The user context policy for the Amazon Kendra index.
///
///
public UserContextPolicy UserContextPolicy
{
get { return this._userContextPolicy; }
set { this._userContextPolicy = value; }
}
// Check to see if UserContextPolicy property is set
internal bool IsSetUserContextPolicy()
{
return this._userContextPolicy != null;
}
///
/// Gets and sets the property UserGroupResolutionConfiguration.
///
/// Whether you have enabled the configuration for fetching access levels of groups and
/// users from an IAM Identity Center (successor to Single Sign-On) identity source.
///
///
public UserGroupResolutionConfiguration UserGroupResolutionConfiguration
{
get { return this._userGroupResolutionConfiguration; }
set { this._userGroupResolutionConfiguration = value; }
}
// Check to see if UserGroupResolutionConfiguration property is set
internal bool IsSetUserGroupResolutionConfiguration()
{
return this._userGroupResolutionConfiguration != null;
}
///
/// Gets and sets the property UserTokenConfigurations.
///
/// The user token configuration for the Amazon Kendra index.
///
///
[AWSProperty(Max=1)]
public List UserTokenConfigurations
{
get { return this._userTokenConfigurations; }
set { this._userTokenConfigurations = value; }
}
// Check to see if UserTokenConfigurations property is set
internal bool IsSetUserTokenConfigurations()
{
return this._userTokenConfigurations != null && this._userTokenConfigurations.Count > 0;
}
}
}