Example #1
0
    def _alarms_count(self, req_uri, tenant_id, query_parms, offset, limit):

        count_data = self._alarms_repo.get_alarms_count(tenant_id, query_parms, offset, limit)
        group_by = query_parms["group_by"] if "group_by" in query_parms else []

        # result = count_data
        result = {"links": [{"rel": "self", "href": req_uri}], "columns": ["count"]}

        if len(count_data) == 0 or count_data[0]["count"] == 0:
            count = [0]
            if "group_by" in query_parms:
                for field in query_parms["group_by"]:
                    result["columns"].append(field)
                    count.append(None)
            result["counts"] = [count]
            return result

        if len(count_data) > limit:
            result["links"].append(
                {"rel": "next", "href": helpers.create_alarms_count_next_link(req_uri, offset, limit)}
            )
            count_data = count_data[:limit]

        result["columns"].extend(group_by)

        result["counts"] = []
        for row in count_data:
            count_result = [row["count"]]
            for field in group_by:
                count_result.append(row[field])
            result["counts"].append(count_result)

        return result
Example #2
0
    def _alarms_count(self, req_uri, tenant_id, query_parms, offset, limit):

        count_data = self._alarms_repo.get_alarms_count(
            tenant_id, query_parms, offset, limit)
        group_by = query_parms['group_by'] if 'group_by' in query_parms else []

        # result = count_data
        result = {
            'links': [{
                'rel': 'self',
                'href': req_uri
            }],
            'columns': ['count']
        }

        if len(count_data) == 0 or count_data[0]['count'] == 0:
            count = [0]
            if 'group_by' in query_parms:
                for field in query_parms['group_by']:
                    result['columns'].append(field)
                    count.append(None)
            result['counts'] = [count]
            return result

        if len(count_data) > limit:
            result['links'].append({
                'rel':
                'next',
                'href':
                helpers.create_alarms_count_next_link(req_uri, offset, limit)
            })
            count_data = count_data[:limit]

        result['columns'].extend(group_by)

        result['counts'] = []
        for row in count_data:
            count_result = [row['count']]
            for field in group_by:
                count_result.append(row[field])
            result['counts'].append(count_result)

        return result
Example #3
0
    def _alarms_count(self, req_uri, tenant_id, query_parms, offset, limit):

        count_data = self._alarms_repo.get_alarms_count(tenant_id, query_parms, offset, limit)
        group_by = query_parms['group_by'] if 'group_by' in query_parms else []

        # result = count_data
        result = {
            'links': [
                {
                    'rel': 'self',
                    'href': req_uri
                }
            ],
            'columns': ['count']
        }

        if len(count_data) == 0 or count_data[0]['count'] == 0:
            count = [0]
            if 'group_by' in query_parms:
                for field in query_parms['group_by']:
                    result['columns'].append(field)
                    count.append(None)
            result['counts'] = [count]
            return result

        if len(count_data) > limit:
            result['links'].append({
                'rel': 'next',
                'href': helpers.create_alarms_count_next_link(req_uri, offset, limit)})
            count_data = count_data[:limit]

        result['columns'].extend(group_by)

        result['counts'] = []
        for row in count_data:
            count_result = [row['count']]
            for field in group_by:
                count_result.append(row[field])
            result['counts'].append(count_result)

        return result