Class DynamoDbDataContext

  • All Implemented Interfaces:
    Closeable, AutoCloseable, org.apache.metamodel.convert.HasReadTypeConverters, org.apache.metamodel.DataContext, org.apache.metamodel.UpdateableDataContext

    public class DynamoDbDataContext
    extends org.apache.metamodel.QueryPostprocessDataContext
    implements org.apache.metamodel.UpdateableDataContext, Closeable
    DataContext implementation for Amazon DynamoDB.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static String SCHEMA_NAME
      The artificial schema name used by this DataContext.
      static String SYSTEM_PROPERTY_THROUGHPUT_READ_CAPACITY
      System property key used for getting the read throughput capacity when creating new tables.
      static String SYSTEM_PROPERTY_THROUGHPUT_WRITE_CAPACITY
      System property key used for getting the write throughput capacity when creating new tables.
      • Fields inherited from class org.apache.metamodel.QueryPostprocessDataContext

        INFORMATION_SCHEMA_NAME, SYSTEM_PROPERTY_CREATE_DEFAULT_TABLE_ALIAS
    • Constructor Summary

      Constructors 
      Constructor Description
      DynamoDbDataContext()  
      DynamoDbDataContext​(com.amazonaws.services.dynamodbv2.AmazonDynamoDB client)  
      DynamoDbDataContext​(com.amazonaws.services.dynamodbv2.AmazonDynamoDB client, org.apache.metamodel.util.SimpleTableDef[] tableDefs)  
      DynamoDbDataContext​(org.apache.metamodel.util.SimpleTableDef[] tableDefs)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()  
      protected Number executeCountQuery​(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.query.FilterItem> whereItems, boolean functionApproximationAllowed)  
      protected org.apache.metamodel.data.Row executePrimaryKeyLookupQuery​(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.query.SelectItem> selectItems, org.apache.metamodel.schema.Column primaryKeyColumn, Object keyValue)  
      org.apache.metamodel.UpdateSummary executeUpdate​(org.apache.metamodel.UpdateScript update)  
      com.amazonaws.services.dynamodbv2.AmazonDynamoDB getDynamoDb()  
      protected org.apache.metamodel.schema.Schema getMainSchema()  
      protected String getMainSchemaName()  
      protected org.apache.metamodel.data.DataSet materializeMainSchemaTable​(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.schema.Column> columns, int maxRows)  
      • Methods inherited from class org.apache.metamodel.QueryPostprocessDataContext

        addConverter, executeQuery, getDefaultSchemaName, getSchemaByNameInternal, getSchemaNamesInternal, isMainSchemaTable, isScalarFunctionMaterialized, materializeFromItem, materializeMainSchemaTable, materializeMainSchemaTable, materializeMainSchemaTableSelect, materializeTable
      • Methods inherited from class org.apache.metamodel.AbstractDataContext

        compileQuery, executeQuery, executeQuery, getColumnByQualifiedLabel, getDefaultSchema, getSchemaByName, getSchemaNames, getSchemas, getTableByQualifiedLabel, isQualifiedPathDelim, onSchemaCacheRefreshed, parseQuery, query, refreshSchemas
      • Methods inherited from interface org.apache.metamodel.DataContext

        compileQuery, executeQuery, executeQuery, executeQuery, getColumnByQualifiedLabel, getDefaultSchema, getSchemaByName, getSchemaNames, getSchemas, getTableByQualifiedLabel, parseQuery, query, refreshSchemas
    • Field Detail

      • SYSTEM_PROPERTY_THROUGHPUT_READ_CAPACITY

        public static final String SYSTEM_PROPERTY_THROUGHPUT_READ_CAPACITY
        System property key used for getting the read throughput capacity when creating new tables. Defaults to 5.
        See Also:
        Constant Field Values
      • SYSTEM_PROPERTY_THROUGHPUT_WRITE_CAPACITY

        public static final String SYSTEM_PROPERTY_THROUGHPUT_WRITE_CAPACITY
        System property key used for getting the write throughput capacity when creating new tables. Defaults to 5.
        See Also:
        Constant Field Values
      • SCHEMA_NAME

        public static final String SCHEMA_NAME
        The artificial schema name used by this DataContext.
        See Also:
        Constant Field Values
    • Constructor Detail

      • DynamoDbDataContext

        public DynamoDbDataContext()
      • DynamoDbDataContext

        public DynamoDbDataContext​(org.apache.metamodel.util.SimpleTableDef[] tableDefs)
      • DynamoDbDataContext

        public DynamoDbDataContext​(com.amazonaws.services.dynamodbv2.AmazonDynamoDB client)
      • DynamoDbDataContext

        public DynamoDbDataContext​(com.amazonaws.services.dynamodbv2.AmazonDynamoDB client,
                                   org.apache.metamodel.util.SimpleTableDef[] tableDefs)
    • Method Detail

      • getDynamoDb

        public com.amazonaws.services.dynamodbv2.AmazonDynamoDB getDynamoDb()
      • getMainSchema

        protected org.apache.metamodel.schema.Schema getMainSchema()
                                                            throws org.apache.metamodel.MetaModelException
        Specified by:
        getMainSchema in class org.apache.metamodel.QueryPostprocessDataContext
        Throws:
        org.apache.metamodel.MetaModelException
      • getMainSchemaName

        protected String getMainSchemaName()
                                    throws org.apache.metamodel.MetaModelException
        Specified by:
        getMainSchemaName in class org.apache.metamodel.QueryPostprocessDataContext
        Throws:
        org.apache.metamodel.MetaModelException
      • executeCountQuery

        protected Number executeCountQuery​(org.apache.metamodel.schema.Table table,
                                           List<org.apache.metamodel.query.FilterItem> whereItems,
                                           boolean functionApproximationAllowed)
        Overrides:
        executeCountQuery in class org.apache.metamodel.QueryPostprocessDataContext
      • materializeMainSchemaTable

        protected org.apache.metamodel.data.DataSet materializeMainSchemaTable​(org.apache.metamodel.schema.Table table,
                                                                               List<org.apache.metamodel.schema.Column> columns,
                                                                               int maxRows)
        Specified by:
        materializeMainSchemaTable in class org.apache.metamodel.QueryPostprocessDataContext
      • executePrimaryKeyLookupQuery

        protected org.apache.metamodel.data.Row executePrimaryKeyLookupQuery​(org.apache.metamodel.schema.Table table,
                                                                             List<org.apache.metamodel.query.SelectItem> selectItems,
                                                                             org.apache.metamodel.schema.Column primaryKeyColumn,
                                                                             Object keyValue)
        Overrides:
        executePrimaryKeyLookupQuery in class org.apache.metamodel.QueryPostprocessDataContext
      • executeUpdate

        public org.apache.metamodel.UpdateSummary executeUpdate​(org.apache.metamodel.UpdateScript update)
        Specified by:
        executeUpdate in interface org.apache.metamodel.UpdateableDataContext