@Override
    public ReplaceTopicRuleResult replaceTopicRule(ReplaceTopicRuleRequest request) {
        request = beforeClientExecution(request);
        return executeReplaceTopicRule(request);
    }
@ Override public ReplaceTopicRuleResult replaceTopicRule ( ReplaceTopicRuleRequest request ) { request = beforeClientExecution ( request ) ; return executeReplaceTopicRule ( request ) ; }
<p>
Replaces the rule. You must specify all parameters for the new rule. Creating rules is an administrator-level
action. Any user who has permission to create rules will be able to access data processed by the rule.
</p>

@param replaceTopicRuleRequest
The input for the ReplaceTopicRule operation.
@return Result of the ReplaceTopicRule operation returned by the service.
@throws SqlParseException
The Rule-SQL expression can't be parsed correctly.
@throws InternalException
An unexpected error has occurred.
@throws InvalidRequestException
The request is not valid.
@throws ServiceUnavailableException
The service is temporarily unavailable.
@throws UnauthorizedException
You are not authorized to perform this operation.
@throws ConflictingResourceUpdateException
A conflicting resource update exception. This exception is thrown when two pending updates cause a
conflict.
@sample AWSIot.ReplaceTopicRule