"""DynamoDB Items/Decimal -> Json response formatter for flask.""" from decimal import Decimal from boto.dynamodb2 import items from flask import json class Encoder(json.JSONEncoder): """Encoder class for DynamoDB item or Decimal-> JSON converter.""" def default(self, obj): """Return a default encoder method implementation. Args: obj (DynamoDB item, Decimal): An object to convert into a json. """ if isinstance(obj, items.Item): return dict(obj) elif isinstance(obj, Decimal): return float(obj) return json.JSONEncoder.default(self, obj)