test_class.file: dubbo-common/src/test/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPoolTest.java
test_class.identifier: CachedThreadPoolTest
test_case.body: @Test
      public void getExecutor2() throws Exception {
          URL url = URL.valueOf("dubbo://10.20.130.230:20880/context/path?" + QUEUES_KEY + "=1");
          ThreadPool threadPool = new CachedThreadPool();
          ThreadPoolExecutor executor = (ThreadPoolExecutor) threadPool.getExecutor(url);
          assertThat(executor.getQueue(), Matchers.<BlockingQueue<Runnable>>instanceOf(LinkedBlockingQueue.class));
      }
test_case.class_method_signature: CachedThreadPoolTest.getExecutor2()
test_case.full_signature: @Test public void getExecutor2()
test_case.identifier: getExecutor2
test_case.invocations: valueOf getExecutor assertThat getQueue instanceOf
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void getExecutor2()
focal_class.file: dubbo-common/src/main/java/org/apache/dubbo/common/threadpool/support/cached/CachedThreadPool.java
focal_class.identifier: CachedThreadPool
focal_class.interfaces: implements ThreadPool
focal_class.class_method_signature: CachedThreadPool.getExecutor(URL url)
focal_class.full_signature: @Override public Executor getExecutor(URL url)
focal_class.identifier: getExecutor
focal_class.modifiers: @Override public
focal_class.parameters: (URL url)
focal_class.return: Executor
focal_class.signature: Executor getExecutor(URL url)
focal_method.body: @Override
      public Executor getExecutor(URL url) {
          String name = url.getParameter(THREAD_NAME_KEY, DEFAULT_THREAD_NAME);
          int cores = url.getParameter(CORE_THREADS_KEY, DEFAULT_CORE_THREADS);
          int threads = url.getParameter(THREADS_KEY, Integer.MAX_VALUE);
          int queues = url.getParameter(QUEUES_KEY, DEFAULT_QUEUES);
          int alive = url.getParameter(ALIVE_KEY, DEFAULT_ALIVE);
          return new ThreadPoolExecutor(cores, threads, alive, TimeUnit.MILLISECONDS,
                  queues == 0 ? new SynchronousQueue<Runnable>() :
                          (queues < 0 ? new LinkedBlockingQueue<Runnable>()
                                  : new LinkedBlockingQueue<Runnable>(queues)),
                  new NamedInternalThreadFactory(name, true), new AbortPolicyWithReport(name, url));
      }
focal_method.class_method_signature: CachedThreadPool.getExecutor(URL url)
focal_method.full_signature: @Override public Executor getExecutor(URL url)
focal_method.identifier: getExecutor
focal_method.invocations: getParameter getParameter getParameter getParameter getParameter
focal_method.modifiers: @Override public
focal_method.parameters: (URL url)
focal_method.return: Executor
focal_method.signature: Executor getExecutor(URL url)