| 141 | } |
| 142 | |
| 143 | pub fn remove(&self, input: RemoveNamedRuleOperationInput) -> ServiceResult<NamedRule> { |
| 144 | let named_rule = self.get(&input.named_rule_id)?; |
| 145 | |
| 146 | if self.is_named_rule_in_use_by_named_rules(&input.named_rule_id) |
| 147 | | self.is_named_rule_in_use_by_request_policies(&input.named_rule_id) |
| 148 | { |
| 149 | return Err(NamedRuleError::InUse)?; |
| 150 | } |
| 151 | |
| 152 | self.named_rule_repository.remove(&NamedRuleKey { |
| 153 | id: input.named_rule_id, |
| 154 | }); |
| 155 | |
| 156 | Ok(named_rule) |
| 157 | } |
| 158 | |
| 159 | pub fn edit(&self, input: EditNamedRuleOperationInput) -> ServiceResult<NamedRule> { |
| 160 | let mut named_rule = self.get(&input.named_rule_id)?; |