from base.base_metrics import BaseMetrics

class WAFMetrics(BaseMetrics):
    def __init__(self, access_key, secret_key, region, web_acl_id):
        super().__init__(access_key, secret_key, region)
        self.web_acl_id = web_acl_id

    def get_allowed_requests(self, start_time, end_time,time,stat):
        metric_name = 'AllowedRequests'
        namespace = 'AWS/WAF'
        dimensions = [{'Name': 'WebACL', 'Value': self.web_acl_id}]
        period = time
        statistics = stat
        return self.get_metric_data(metric_name, namespace, dimensions, start_time, end_time, period, statistics)

    def get_blocked_requests(self, start_time, end_time,time,stat):
        metric_name = 'BlockedRequests'
        namespace = 'AWS/WAF'
        dimensions = [{'Name': 'WebACL', 'Value': self.web_acl_id}]
        period = time
        statistics = stat
        return self.get_metric_data(metric_name, namespace, dimensions, start_time, end_time, period, statistics)
