class AbstractDynamoDao extends AbstractDao<M,P,K,I> {

    protected Object toStorageValue(Object val) {
        if (val == null) {
            return null;
        }
        if (val instanceof Number || val instanceof Collection || val instanceof Map || val instanceof Boolean) {
            return val;
        } else if (val instanceof Instant) {
            return ((Instant) val).toEpochMilli();
        } else {
            return val.toString();
        }
    }

    public  AbstractDynamoDao(Class<M> modelClass, Class<P> partialClass, AmazonDynamoDB db, String tableName);
    public  AbstractDynamoDao(Class<M> modelClass, Class<P> partialClass, AmazonDynamoDB db, String tableName, ItemMapper<M> modelMapper, ItemMapper<P> partialMapper);

}