from notifications_python_client.base import BaseAPIClient


class TemplateStatisticsApiClient(BaseAPIClient):
    def __init__(self, base_url=None, client_id=None, secret=None):
        super(self.__class__, self).__init__(base_url=base_url or 'base_url',
                                             client_id=client_id or 'client_id',
                                             secret=secret or 'secret')

    def init_app(self, app):
        self.base_url = app.config['API_HOST_NAME']
        self.client_id = app.config['ADMIN_CLIENT_USER_NAME']
        self.secret = app.config['ADMIN_CLIENT_SECRET']

    def get_template_statistics_for_service(self, service_id, limit_days=None):
        params = {}
        if limit_days is not None:
            params['limit_days'] = limit_days
        return self.get(
            url='/service/{}/template-statistics'.format(service_id),
            params=params
        )['data']

    def get_template_statistics_for_template(self, service_id, template_id):
        return self.get(
            url='/service/{}/template-statistics/{}'.format(service_id, template_id)
        )['data']

from notifications_python_client.base import BaseAPIClient


class TemplateStatisticsApiClient(BaseAPIClient):
    def __init__(self, base_url=None, client_id=None, secret=None):
        super(self.__class__, self).__init__(base_url=base_url or 'base_url',
                                             client_id=client_id or 'client_id',
                                             secret=secret or 'secret')

    def init_app(self, app):
        self.base_url = app.config['API_HOST_NAME']
        self.client_id = app.config['ADMIN_CLIENT_USER_NAME']
        self.secret = app.config['ADMIN_CLIENT_SECRET']

    def get_template_statistics_for_service(self, service_id, limit_days=None):
        params = {}
        if limit_days is not None:
            params['limit_days'] = limit_days

        response = self.get(
            url='/service/{}/template-statistics'.format(service_id),
            params=params
        )['data']

        if len(response) > 0 and 'template' in response[0]:
            return response

        return []

    def get_template_statistics_for_template(self, service_id, template_id):
        return self.get(
            url='/service/{}/template-statistics/{}'.format(service_id, template_id)
        )['data']

Handle the API migration