describeRuleGroup method

Future<DescribeRuleGroupResponse> describeRuleGroup({
  1. bool? analyzeRuleGroup,
  2. String? ruleGroupArn,
  3. String? ruleGroupName,
  4. RuleGroupType? type,
})

Returns the data objects for the specified rule group.

May throw InternalServerError. May throw InvalidRequestException. May throw ResourceNotFoundException. May throw ThrottlingException.

Parameter analyzeRuleGroup : Indicates whether you want Network Firewall to analyze the stateless rules in the rule group for rule behavior such as asymmetric routing. If set to TRUE, Network Firewall runs the analysis.

Parameter ruleGroupArn : The Amazon Resource Name (ARN) of the rule group.

You must specify the ARN or the name, and you can specify both.

Parameter ruleGroupName : The descriptive name of the rule group. You can't change the name of a rule group after you create it.

You must specify the ARN or the name, and you can specify both.

Parameter type : Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.

Implementation

Future<DescribeRuleGroupResponse> describeRuleGroup({
  bool? analyzeRuleGroup,
  String? ruleGroupArn,
  String? ruleGroupName,
  RuleGroupType? type,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.0',
    'X-Amz-Target': 'NetworkFirewall_20201112.DescribeRuleGroup'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      if (analyzeRuleGroup != null) 'AnalyzeRuleGroup': analyzeRuleGroup,
      if (ruleGroupArn != null) 'RuleGroupArn': ruleGroupArn,
      if (ruleGroupName != null) 'RuleGroupName': ruleGroupName,
      if (type != null) 'Type': type.value,
    },
  );

  return DescribeRuleGroupResponse.fromJson(jsonResponse.body);
}