class BroadcastBackendHandler implements TextProtocolBackendHandler {

    @Override
    public BackendResponse execute() throws SQLException {
        String originalSchema = backendConnection.getSchemaName();
        for (String each : ProxyContext.getInstance().getAllSchemaNames()) {
            backendConnection.setCurrentSchema(each);
            if (!ProxyContext.getInstance().getSchema(each).isComplete()) {
                throw new RuleNotExistsException();
            }
            databaseCommunicationEngineFactory.newTextProtocolInstance(sqlStatement, sql, backendConnection).execute();
        }
        backendConnection.setCurrentSchema(originalSchema);
        return new UpdateResponse();
    }

}