diff options
| author | Masahiro Wada <argon.argon.argon@gmail.com> | 2017-05-10 22:15:43 +0900 |
|---|---|---|
| committer | Masahiro Wada <argon.argon.argon@gmail.com> | 2017-05-14 03:12:24 +0900 |
| commit | 56d28129a39a3bf1b6bb22e5af07d0b514acd851 (patch) | |
| tree | f5fafd8a3f27bf90520f5b8bc5d22f92c062904b /requests_cache/backends/dynamodb.py | |
| parent | d5007c043667e3274247464860997557143c5bbb (diff) | |
| download | requests-cache-56d28129a39a3bf1b6bb22e5af07d0b514acd851.tar.gz | |
add dynamodb backend
Diffstat (limited to 'requests_cache/backends/dynamodb.py')
| -rw-r--r-- | requests_cache/backends/dynamodb.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/requests_cache/backends/dynamodb.py b/requests_cache/backends/dynamodb.py new file mode 100644 index 0000000..536a2bf --- /dev/null +++ b/requests_cache/backends/dynamodb.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +""" + requests_cache.backends.dynamodb + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ``dynamodb`` cache backend +""" +from .base import BaseCache +from .storage.dynamodbdict import DynamoDbDict + + +class DynamoDbCache(BaseCache): + """ ``dynamodb`` cache backend. + """ + def __init__(self, table_name='requests-cache', **options): + """ + :param namespace: dynamodb table name (default: ``'requests-cache'``) + :param connection: (optional) ``boto3.resource('dynamodb')`` + """ + super(DynamoDbCache, self).__init__(**options) + self.responses = DynamoDbDict(table_name, 'responses', + options.get('connection'), + options.get('endpont_url'), + options.get('region_name'), + options.get('read_capacity_units'), + options.get('write_capacity_units')) + self.keys_map = DynamoDbDict(table_name, + 'urls', + self.responses.connection) |
