test_class.declarator: backendConnection
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private BackendConnection backendConnection;
test_class.type: BackendConnection
test_class.var_name: backendConnection
test_class.file: shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/text/sctl/hint/ShardingCTLHintBackendHandlerTest.java
test_class.identifier: ShardingCTLHintBackendHandlerTest
test_case.body: @Test
      public void assertClear() {
          clearThreadLocal();
          String sql = "sctl:hint clear ";
          ShardingCTLHintBackendHandler hintBackendHandler = new ShardingCTLHintBackendHandler(sql, backendConnection);
          assertThat(hintBackendHandler.execute(), instanceOf(UpdateResponse.class));
          assertThat(HintManager.getInstance(), instanceOf(HintManager.class));
          HintManager.clear();
      }
test_case.class_method_signature: ShardingCTLHintBackendHandlerTest.assertClear()
test_case.full_signature: @Test public void assertClear()
test_case.identifier: assertClear
test_case.invocations: clearThreadLocal assertThat execute instanceOf assertThat getInstance instanceOf clear
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void assertClear()
focal_class.declarator: sql
focal_class.modifier: private final
focal_class.original_string: private final String sql;
focal_class.type: String
focal_class.var_name: sql
focal_class.declarator: backendConnection
focal_class.modifier: private final
focal_class.original_string: private final BackendConnection backendConnection;
focal_class.type: BackendConnection
focal_class.var_name: backendConnection
focal_class.declarator: hintCommandExecutor
focal_class.modifier: private
focal_class.original_string: private HintCommandExecutor hintCommandExecutor;
focal_class.type: HintCommandExecutor
focal_class.var_name: hintCommandExecutor
focal_class.file: shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/sctl/hint/ShardingCTLHintBackendHandler.java
focal_class.identifier: ShardingCTLHintBackendHandler
focal_class.interfaces: implements TextProtocolBackendHandler
focal_class.class_method_signature: ShardingCTLHintBackendHandler.execute()
focal_class.full_signature: @SuppressWarnings("unchecked") @Override public BackendResponse execute()
focal_class.identifier: execute
focal_class.modifiers: @SuppressWarnings("unchecked") @Override public
focal_class.parameters: ()
focal_class.return: BackendResponse
focal_class.signature: BackendResponse execute()
focal_class.class_method_signature: ShardingCTLHintBackendHandler.next()
focal_class.full_signature: @Override public boolean next()
focal_class.identifier: next
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean next()
focal_class.class_method_signature: ShardingCTLHintBackendHandler.getQueryData()
focal_class.full_signature: @Override public QueryData getQueryData()
focal_class.identifier: getQueryData
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: QueryData
focal_class.signature: QueryData getQueryData()
focal_method.body: @SuppressWarnings("unchecked")
      @Override
      public BackendResponse execute() {
          if (!ProxyContext.getInstance().getSchemaContexts().getProps().<Boolean>getValue(ConfigurationPropertyKey.PROXY_HINT_ENABLED)) {
              throw new UnsupportedOperationException(String.format("%s should be true, please check your config", ConfigurationPropertyKey.PROXY_HINT_ENABLED.getKey()));
          }
          Optional<ShardingCTLHintStatement> shardingTCLStatement = new ShardingCTLHintParser(sql).doParse();
          if (!shardingTCLStatement.isPresent()) {
              throw new InvalidShardingCTLFormatException(sql);
          }
          HintCommand hintCommand = shardingTCLStatement.get().getHintCommand();
          hintCommandExecutor = HintCommandExecutorFactory.newInstance(hintCommand, backendConnection, sql);
          return hintCommandExecutor.execute(hintCommand);
      }
focal_method.class_method_signature: ShardingCTLHintBackendHandler.execute()
focal_method.full_signature: @SuppressWarnings("unchecked") @Override public BackendResponse execute()
focal_method.identifier: execute
focal_method.invocations: getValue getProps getSchemaContexts getInstance format getKey doParse isPresent getHintCommand get newInstance execute
focal_method.modifiers: @SuppressWarnings("unchecked") @Override public
focal_method.parameters: ()
focal_method.return: BackendResponse
focal_method.signature: BackendResponse execute()