Class S3Db

java.lang.Object
io.inversion.Rule<T>
io.inversion.Db<S3Db>
io.inversion.s3.S3Db
All Implemented Interfaces:
Comparable<S3Db>

public class S3Db extends io.inversion.Db<S3Db>
Bucket ~= Table Bucket Object field key value ~= Column Only mapping the key field since it is the only way to query anything within S3, since, as of now, you can't request files by size, or content-type, or some custom header.
  • Nested Class Summary

    Nested classes/interfaces inherited from class io.inversion.Rule

    io.inversion.Rule.RuleMatcher
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected String
     
    protected String
     
    protected String
     
    protected Map<String,String>
     
    protected String
    bucketName,bucketName,bucketName|alias,bucketName,bucketName|alias|prefix

    Fields inherited from class io.inversion.Db

    bootstrap, collections, dryRun, excludeColumns, includeColumns, includeTables, log, reservedParams, type

    Fields inherited from class io.inversion.Rule

    ALL_METHODS, configMap, description, excludeMatchers, excludeOn, includeMatchers, includeOn, name, order, params
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    S3Db(String name, String... includeOn)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    doDelete(io.inversion.Collection table, List<Map<String,Object>> indexValues)
     
    io.inversion.Results
    doSelect(io.inversion.Collection collection, List<io.inversion.rql.Term> columnMappedTerms)
     
    protected void
    doStartup(io.inversion.Api api)
     
    doUpsert(io.inversion.Collection table, List<Map<String,Object>> rows)
     
    com.amazonaws.services.s3.AmazonS3
     
    com.amazonaws.services.s3.AmazonS3
    getS3Client(String awsRegion, String awsAccessKey, String awsSecretKey)
     
    withAwsAccessKey(String awsAccessKey)
     
    withAwsRegion(String awsRegion)
     
    withAwsSecretKey(String awsSecretKey)
     

    Methods inherited from class io.inversion.Db

    beautifyCollectionName, beautifyName, buildCollections, buildRelationships, castDbOutput, castJsonInput, castJsonInput, configApi, configDb, delete, doPatch, doShutdown, doShutdown, excludeTable, filterOutJsonProperty, getCollection, getCollectionByTableName, getCollections, getProperty, getType, isBootstrap, isDryRun, isRunning, isType, makeRelationshipName, mapToColumnNames, mapToColumnNames, mapToJsonNames, patch, removeCollection, select, shutdown, shutdown, startup, upsert, withBootstrap, withCollection, withCollections, withDryRun, withExcludeColumns, withIncludeColumns, withIncludeTable, withIncludeTables, withType

    Methods inherited from class io.inversion.Rule

    afterWiringComplete, checkLazyConfig, compareTo, doLazyConfig, getAllExcludePaths, getAllIncludeMethods, getAllIncludePaths, getDefaultIncludeMatchers, getDescription, getExcludeMatchers, getIncludeMatchers, getName, getOrder, getParams, match, match, matches, matches, toString, withDescription, withExcludeOn, withExcludeOn, withIncludeOn, withIncludeOn, withName, withOrder, withParam, withParams

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • awsAccessKey

      protected String awsAccessKey
    • awsSecretKey

      protected String awsSecretKey
    • awsRegion

      protected String awsRegion
    • buckets

      protected String buckets
      bucketName,bucketName,bucketName|alias,bucketName,bucketName|alias|prefix
    • bucketPrefixes

      protected Map<String,String> bucketPrefixes
  • Constructor Details

    • S3Db

      public S3Db()
    • S3Db

      public S3Db(String name, String... includeOn)
  • Method Details

    • doStartup

      protected void doStartup(io.inversion.Api api)
      Overrides:
      doStartup in class io.inversion.Db<S3Db>
    • doSelect

      public io.inversion.Results doSelect(io.inversion.Collection collection, List<io.inversion.rql.Term> columnMappedTerms) throws io.inversion.ApiException
      Overrides:
      doSelect in class io.inversion.Db<S3Db>
      Throws:
      io.inversion.ApiException
    • doUpsert

      public List<String> doUpsert(io.inversion.Collection table, List<Map<String,Object>> rows) throws io.inversion.ApiException
      Overrides:
      doUpsert in class io.inversion.Db<S3Db>
      Throws:
      io.inversion.ApiException
    • doDelete

      public void doDelete(io.inversion.Collection table, List<Map<String,Object>> indexValues) throws io.inversion.ApiException
      Overrides:
      doDelete in class io.inversion.Db<S3Db>
      Throws:
      io.inversion.ApiException
    • getS3Client

      public com.amazonaws.services.s3.AmazonS3 getS3Client()
    • getS3Client

      public com.amazonaws.services.s3.AmazonS3 getS3Client(String awsRegion, String awsAccessKey, String awsSecretKey)
    • withAwsRegion

      public S3Db withAwsRegion(String awsRegion)
    • withAwsAccessKey

      public S3Db withAwsAccessKey(String awsAccessKey)
    • withAwsSecretKey

      public S3Db withAwsSecretKey(String awsSecretKey)