class SentinelResourceImpl implements SentinelResource {
    @Autowired
    private ServiceResource serviceResource;

    @Autowired
    private ConfigResource configResource;

    @Autowired
    private RestTemplate consoleRestTemplate;

    @Override
    public boolean updateRemoteSentinel(SentinelRuleType ruleType, String group, String serviceId, String rule) {
        try {
            return configResource.updateRemoteConfig(group, serviceId + "-" + ruleType.getKey(), rule, FormatType.JSON_FORMAT);
        } catch (Exception e) {
            throw new DiscoveryException("Update remote " + ruleType.getDescription() + " failed, group={}, serviceId={}", e);
        }
    }

    @Override
    public boolean clearRemoteSentinel(SentinelRuleType ruleType, String group, String serviceId) {<FILL_FUNCTION_BODY>}

    @Override
    public String getRemoteSentinel(SentinelRuleType ruleType, String group, String serviceId) {
        try {
            return configResource.getRemoteConfig(group, serviceId + "-" + ruleType.getKey());
        } catch (Exception e) {
            throw new DiscoveryException("Get remote " + ruleType.getDescription() + " failed, group={}, serviceId={}", e);
        }
    }

    @Override
    public List<ResultEntity> updateSentinel(SentinelRuleType ruleType, String serviceId, String rule) {
        SentinelUpdateRestInvoker sentinelUpdateRestInvoker = new SentinelUpdateRestInvoker(serviceResource, serviceId, consoleRestTemplate, ruleType, rule);

        return sentinelUpdateRestInvoker.invoke();
    }

    @Override
    public List<ResultEntity> clearSentinel(SentinelRuleType ruleType, String serviceId) {
        SentinelClearRestInvoker sentinelClearRestInvoker = new SentinelClearRestInvoker(serviceResource, serviceId, consoleRestTemplate, ruleType);

        return sentinelClearRestInvoker.invoke();
    }

    @Override
    public List<ResultEntity> viewSentinel(SentinelRuleType ruleType, String serviceId) {
        SentinelViewRestInvoker sentinelViewRestInvoker = new SentinelViewRestInvoker(serviceResource, serviceId, consoleRestTemplate, ruleType);

        return sentinelViewRestInvoker.invoke();
    }
}

        try {
            return configResource.updateRemoteConfig(group, serviceId + "-" + ruleType.getKey(), DiscoveryConstant.EMPTY_JSON_RULE_MULTIPLE, FormatType.JSON_FORMAT);
        } catch (Exception e) {
            throw new DiscoveryException("Clear remote " + ruleType.getDescription() + " failed, group={}, serviceId={}", e);
        }
    
<no_super_class>