Class Document
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<Document.Builder,
Document>
A document in an index.
- See Also:
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal String
The identifier of the access control configuration that you want to apply to the document.Information on principals (users and/or groups) and which documents they should have access to.final List
<DocumentAttribute> Custom attributes to apply to the document.final SdkBytes
blob()
The contents of the document.static Document.Builder
builder()
final ContentType
The file type of the document in theBlob
field.final String
The file type of the document in theBlob
field.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final boolean
For responses, this returns true if the service returned a value for the AccessControlList property.final boolean
For responses, this returns true if the service returned a value for the Attributes property.final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the HierarchicalAccessControlList property.final List
<HierarchicalPrincipal> The list of principal lists that define the hierarchy for which documents users should have access to.final String
id()
A identifier of the document in the index.final S3Path
s3Path()
Returns the value of the S3Path property for this object.static Class
<? extends Document.Builder> final String
title()
The title of the document.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
id
A identifier of the document in the index.
Note, each document ID must be unique per index. You cannot create a data source to index your documents with their unique IDs and then use the
BatchPutDocument
API to index the same documents, or vice versa. You can delete a data source and then use theBatchPutDocument
API to index the same documents, or vice versa.- Returns:
- A identifier of the document in the index.
Note, each document ID must be unique per index. You cannot create a data source to index your documents with their unique IDs and then use the
BatchPutDocument
API to index the same documents, or vice versa. You can delete a data source and then use theBatchPutDocument
API to index the same documents, or vice versa.
-
title
The title of the document.
- Returns:
- The title of the document.
-
blob
The contents of the document.
Documents passed to the
Blob
parameter must be base64 encoded. Your code might not need to encode the document file bytes if you're using an Amazon Web Services SDK to call Amazon Kendra APIs. If you are calling the Amazon Kendra endpoint directly using REST, you must base64 encode the contents before sending.- Returns:
- The contents of the document.
Documents passed to the
Blob
parameter must be base64 encoded. Your code might not need to encode the document file bytes if you're using an Amazon Web Services SDK to call Amazon Kendra APIs. If you are calling the Amazon Kendra endpoint directly using REST, you must base64 encode the contents before sending.
-
s3Path
Returns the value of the S3Path property for this object.- Returns:
- The value of the S3Path property for this object.
-
hasAttributes
public final boolean hasAttributes()For responses, this returns true if the service returned a value for the Attributes property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
attributes
Custom attributes to apply to the document. Use the custom attributes to provide additional information for searching, to provide facets for refining searches, and to provide additional information in the query response.
For example, 'DataSourceId' and 'DataSourceSyncJobId' are custom attributes that provide information on the synchronization of documents running on a data source. Note, 'DataSourceSyncJobId' could be an optional custom attribute as Amazon Kendra will use the ID of a running sync job.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasAttributes()
method.- Returns:
- Custom attributes to apply to the document. Use the custom attributes to provide additional information
for searching, to provide facets for refining searches, and to provide additional information in the
query response.
For example, 'DataSourceId' and 'DataSourceSyncJobId' are custom attributes that provide information on the synchronization of documents running on a data source. Note, 'DataSourceSyncJobId' could be an optional custom attribute as Amazon Kendra will use the ID of a running sync job.
-
hasAccessControlList
public final boolean hasAccessControlList()For responses, this returns true if the service returned a value for the AccessControlList property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
accessControlList
Information on principals (users and/or groups) and which documents they should have access to. This is useful for user context filtering, where search results are filtered based on the user or their group access to documents.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasAccessControlList()
method.- Returns:
- Information on principals (users and/or groups) and which documents they should have access to. This is useful for user context filtering, where search results are filtered based on the user or their group access to documents.
-
hasHierarchicalAccessControlList
public final boolean hasHierarchicalAccessControlList()For responses, this returns true if the service returned a value for the HierarchicalAccessControlList property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
hierarchicalAccessControlList
The list of principal lists that define the hierarchy for which documents users should have access to.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasHierarchicalAccessControlList()
method.- Returns:
- The list of principal lists that define the hierarchy for which documents users should have access to.
-
contentType
The file type of the document in the
Blob
field.If you want to index snippets or subsets of HTML documents instead of the entirety of the HTML documents, you must add the
HTML
start and closing tags (<HTML>content</HTML>
) around the content.If the service returns an enum value that is not available in the current SDK version,
contentType
will returnContentType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromcontentTypeAsString()
.- Returns:
- The file type of the document in the
Blob
field.If you want to index snippets or subsets of HTML documents instead of the entirety of the HTML documents, you must add the
HTML
start and closing tags (<HTML>content</HTML>
) around the content. - See Also:
-
contentTypeAsString
The file type of the document in the
Blob
field.If you want to index snippets or subsets of HTML documents instead of the entirety of the HTML documents, you must add the
HTML
start and closing tags (<HTML>content</HTML>
) around the content.If the service returns an enum value that is not available in the current SDK version,
contentType
will returnContentType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromcontentTypeAsString()
.- Returns:
- The file type of the document in the
Blob
field.If you want to index snippets or subsets of HTML documents instead of the entirety of the HTML documents, you must add the
HTML
start and closing tags (<HTML>content</HTML>
) around the content. - See Also:
-
accessControlConfigurationId
The identifier of the access control configuration that you want to apply to the document.
- Returns:
- The identifier of the access control configuration that you want to apply to the document.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<Document.Builder,
Document> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode() -
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value. -
getValueForField
-
sdkFields
-