def update_rates(adapter_class_name=None): adapter_class_name = (adapter_class_name or getattr( settings, EXCHANGE_ADAPTER_CLASS_KEY, EXCHANGE_DEFAULT_ADAPTER_CLASS)) adapter_class = import_class(adapter_class_name) adapter = adapter_class() if not isinstance(adapter, BaseAdapter): raise TypeError("invalid adapter class: %s" % adapter_class_name) adapter.update() if CACHE_ENABLED: update_rates_cached()
def handle(self, *args, **options): """ Handle command """ adapter_class_name = options['class'] try: adapter_class = import_class(adapter_class_name) adapter = adapter_class() if not isinstance(adapter, BaseAdapter): raise TypeError except (ImportError, TypeError), detail: raise CommandError("invalid adapter class: Detail: %s" % detail)
def update_rates(adapter_class_name=None): adapter_class_name = (adapter_class_name or getattr(settings, EXCHANGE_ADAPTER_CLASS_KEY, EXCHANGE_DEFAULT_ADAPTER_CLASS)) adapter_class = import_class(adapter_class_name) adapter = adapter_class() if not isinstance(adapter, BaseAdapter): raise TypeError("invalid adapter class: %s" % adapter_class_name) adapter.update() if CACHE_ENABLED: update_rates_cached()
def update_rates_from_date(adapter_class_name=None, date=None): adapter_class_name = (adapter_class_name or getattr(settings, EXCHANGE_ADAPTER_CLASS_KEY, EXCHANGE_DEFAULT_ADAPTER_CLASS)) adapter_class = import_class(adapter_class_name) adapter = adapter_class() if not isinstance(adapter, BaseAdapter): raise TypeError("invalid adapter class: %s" % adapter_class_name) if isinstance(date, basestring): from_date = datetime.datetime.strptime(date, '%Y-%m-%d') else: from_date = date if isinstance(date, datetime.date) else datetime.date.today() today = datetime.date.today() numdays = (today - from_date).days + 1 date_list = [today - datetime.timedelta(days=x) for x in range(0, numdays)] for day in date_list: adapter.update_by_day(day) if CACHE_ENABLED: update_rates_cached()