Class DocumentReaderConfig

java.lang.Object
software.amazon.awssdk.services.comprehend.model.DocumentReaderConfig
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<DocumentReaderConfig.Builder,DocumentReaderConfig>

@Generated("software.amazon.awssdk:codegen") public final class DocumentReaderConfig extends Object implements SdkPojo, Serializable, ToCopyableBuilder<DocumentReaderConfig.Builder,DocumentReaderConfig>

Provides configuration parameters to override the default actions for extracting text from PDF documents and image files.

By default, Amazon Comprehend performs the following actions to extract text from files, based on the input file type:

  • Word files - Amazon Comprehend parser extracts the text.

  • Digital PDF files - Amazon Comprehend parser extracts the text.

  • Image files and scanned PDF files - Amazon Comprehend uses the Amazon Textract DetectDocumentText API to extract the text.

DocumentReaderConfig does not apply to plain text files or Word files.

For image files and PDF documents, you can override these default actions using the fields listed below. For more information, see Setting text extraction options in the Comprehend Developer Guide.

See Also:
  • Method Details

    • documentReadAction

      public final DocumentReadAction documentReadAction()

      This field defines the Amazon Textract API operation that Amazon Comprehend uses to extract text from PDF files and image files. Enter one of the following values:

      • TEXTRACT_DETECT_DOCUMENT_TEXT - The Amazon Comprehend service uses the DetectDocumentText API operation.

      • TEXTRACT_ANALYZE_DOCUMENT - The Amazon Comprehend service uses the AnalyzeDocument API operation.

      If the service returns an enum value that is not available in the current SDK version, documentReadAction will return DocumentReadAction.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from documentReadActionAsString().

      Returns:
      This field defines the Amazon Textract API operation that Amazon Comprehend uses to extract text from PDF files and image files. Enter one of the following values:

      • TEXTRACT_DETECT_DOCUMENT_TEXT - The Amazon Comprehend service uses the DetectDocumentText API operation.

      • TEXTRACT_ANALYZE_DOCUMENT - The Amazon Comprehend service uses the AnalyzeDocument API operation.

      See Also:
    • documentReadActionAsString

      public final String documentReadActionAsString()

      This field defines the Amazon Textract API operation that Amazon Comprehend uses to extract text from PDF files and image files. Enter one of the following values:

      • TEXTRACT_DETECT_DOCUMENT_TEXT - The Amazon Comprehend service uses the DetectDocumentText API operation.

      • TEXTRACT_ANALYZE_DOCUMENT - The Amazon Comprehend service uses the AnalyzeDocument API operation.

      If the service returns an enum value that is not available in the current SDK version, documentReadAction will return DocumentReadAction.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from documentReadActionAsString().

      Returns:
      This field defines the Amazon Textract API operation that Amazon Comprehend uses to extract text from PDF files and image files. Enter one of the following values:

      • TEXTRACT_DETECT_DOCUMENT_TEXT - The Amazon Comprehend service uses the DetectDocumentText API operation.

      • TEXTRACT_ANALYZE_DOCUMENT - The Amazon Comprehend service uses the AnalyzeDocument API operation.

      See Also:
    • documentReadMode

      public final DocumentReadMode documentReadMode()

      Determines the text extraction actions for PDF files. Enter one of the following values:

      • SERVICE_DEFAULT - use the Amazon Comprehend service defaults for PDF files.

      • FORCE_DOCUMENT_READ_ACTION - Amazon Comprehend uses the Textract API specified by DocumentReadAction for all PDF files, including digital PDF files.

      If the service returns an enum value that is not available in the current SDK version, documentReadMode will return DocumentReadMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from documentReadModeAsString().

      Returns:
      Determines the text extraction actions for PDF files. Enter one of the following values:

      • SERVICE_DEFAULT - use the Amazon Comprehend service defaults for PDF files.

      • FORCE_DOCUMENT_READ_ACTION - Amazon Comprehend uses the Textract API specified by DocumentReadAction for all PDF files, including digital PDF files.

      See Also:
    • documentReadModeAsString

      public final String documentReadModeAsString()

      Determines the text extraction actions for PDF files. Enter one of the following values:

      • SERVICE_DEFAULT - use the Amazon Comprehend service defaults for PDF files.

      • FORCE_DOCUMENT_READ_ACTION - Amazon Comprehend uses the Textract API specified by DocumentReadAction for all PDF files, including digital PDF files.

      If the service returns an enum value that is not available in the current SDK version, documentReadMode will return DocumentReadMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from documentReadModeAsString().

      Returns:
      Determines the text extraction actions for PDF files. Enter one of the following values:

      • SERVICE_DEFAULT - use the Amazon Comprehend service defaults for PDF files.

      • FORCE_DOCUMENT_READ_ACTION - Amazon Comprehend uses the Textract API specified by DocumentReadAction for all PDF files, including digital PDF files.

      See Also:
    • featureTypes

      public final List<DocumentReadFeatureTypes> featureTypes()

      Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT as the read action, you must specify one or both of the following values:

      • TABLES - Returns additional information about any tables that are detected in the input document.

      • FORMS - Returns additional information about any forms that are detected in the input document.

      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 hasFeatureTypes() method.

      Returns:
      Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT as the read action, you must specify one or both of the following values:

      • TABLES - Returns additional information about any tables that are detected in the input document.

      • FORMS - Returns additional information about any forms that are detected in the input document.

    • hasFeatureTypes

      public final boolean hasFeatureTypes()
      For responses, this returns true if the service returned a value for the FeatureTypes property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • featureTypesAsStrings

      public final List<String> featureTypesAsStrings()

      Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT as the read action, you must specify one or both of the following values:

      • TABLES - Returns additional information about any tables that are detected in the input document.

      • FORMS - Returns additional information about any forms that are detected in the input document.

      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 hasFeatureTypes() method.

      Returns:
      Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT as the read action, you must specify one or both of the following values:

      • TABLES - Returns additional information about any tables that are detected in the input document.

      • FORMS - Returns additional information about any forms that are detected in the input document.

    • toBuilder

      public DocumentReaderConfig.Builder 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 interface ToCopyableBuilder<DocumentReaderConfig.Builder,DocumentReaderConfig>
      Returns:
      a builder for type T
    • builder

      public static DocumentReaderConfig.Builder builder()
    • serializableBuilderClass

      public static Class<? extends DocumentReaderConfig.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      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 an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String 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.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.