public class S3Emitter extends AbstractEmitter implements Initializable, StreamEmitter
  <properties>
      <emitters>
          <emitter class="org.apache.tika.pipes.emitter.s3.S3Emitter>
              <params>
                  <!-- required -->
                  <param name="name" type="string">s3e</param>
                  <!-- required -->
                  <param name="region" type="string">us-east-1</param>
                  <!-- required -->
                  <param name="credentialsProvider"
                       type="string">(profile|instance)</param>
                  <!-- required if credentialsProvider=profile-->
                  <param name="profile" type="string">my-profile</param>
                  <!-- required -->
                  <param name="bucket" type="string">my-bucket</param>
                  <!-- optional; prefix to add to the path before emitting;
                       default is no prefix -->
                  <param name="prefix" type="string">my-prefix</param>
                  <!-- optional; default is 'json' this will be added to the SOURCE_PATH
                                    if no emitter key is specified. Do not add a "."
                                     before the extension -->
                  <param name="fileExtension" type="string">json</param>
                  <!-- optional; default is 'true'-- whether to copy the
                     json to a local file before putting to s3 -->
                  <param name="spoolToTemp" type="bool">true</param>
              </params>
          </emitter>
      </emitters>
  </properties>| Constructor and Description | 
|---|
| S3Emitter() | 
| Modifier and Type | Method and Description | 
|---|---|
| void | checkInitialization(InitializableProblemHandler problemHandler) | 
| void | emit(String path,
    InputStream is,
    Metadata userMetadata) | 
| void | emit(String emitKey,
    List<Metadata> metadataList)Requires the src-bucket/path/to/my/file.txt in the  TikaCoreProperties.SOURCE_PATH. | 
| void | initialize(Map<String,Param> params)This initializes the s3 client. | 
| void | setBucket(String bucket) | 
| void | setCredentialsProvider(String credentialsProvider) | 
| void | setFileExtension(String fileExtension)If you want to customize the output file's file extension. | 
| void | setMaxConnections(int maxConnections)maximum number of http connections allowed. | 
| void | setPrefix(String prefix) | 
| void | setProfile(String profile) | 
| void | setRegion(String region) | 
| void | setSpoolToTemp(boolean spoolToTemp)Whether or not to spool the metadatalist to a tmp file before putting object. | 
emit, getName, setNamepublic void emit(String emitKey, List<Metadata> metadataList) throws IOException, TikaEmitterException
TikaCoreProperties.SOURCE_PATH.emit in interface EmittermetadataList - IOExceptionTikaExceptionTikaEmitterExceptionpublic void emit(String path, InputStream is, Metadata userMetadata) throws IOException, TikaEmitterException
emit in interface StreamEmitterpath - -- object path, not including the bucketis - inputStream to copyuserMetadata - this will be written to the s3 ObjectMetadata's userMetadataTikaEmitterException - or IOexception if there is a Runtime s3 client exceptionIOException@Field public void setSpoolToTemp(boolean spoolToTemp)
true.  If this is set to false,
 this emitter writes the json object to memory and then puts that into s3.spoolToTemp - @Field public void setFileExtension(String fileExtension)
fileExtension - @Field public void setMaxConnections(int maxConnections)
maxConnections - public void initialize(Map<String,Param> params) throws TikaConfigException
initialize in interface Initializableparams - params to use for initializationTikaConfigExceptionpublic void checkInitialization(InitializableProblemHandler problemHandler) throws TikaConfigException
checkInitialization in interface InitializableproblemHandler - if there is a problem and no
                       custom initializableProblemHandler has been configured
                       via Initializable parameters,
                       this is called to respond.TikaConfigExceptionCopyright © 2007–2021 The Apache Software Foundation. All rights reserved.