test_class.declarator: thrown
test_class.modifier: private
test_class.original_string: private Throwable thrown;
test_class.type: Throwable
test_class.var_name: thrown
test_class.file: rococoa/rococoa-core/src/test/java/org/rococoa/internal/AutoreleaseBatcherTest.java
test_class.identifier: AutoreleaseBatcherTest
test_case.body: @Test public void threadLocal() {
          AutoreleaseBatcher.forThread(1);
          ID idNSObject = Foundation.cfRetain(autoreleasedObject());
          assertRetainCount(2, idNSObject);
          
          AutoreleaseBatcher.forThread(1).operate();
          assertRetainCount(1, idNSObject);
      }
test_case.class_method_signature: AutoreleaseBatcherTest.threadLocal()
test_case.full_signature: @Test public void threadLocal()
test_case.identifier: threadLocal
test_case.invocations: forThread cfRetain autoreleasedObject assertRetainCount operate forThread assertRetainCount
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void threadLocal()
focal_class.declarator: logging = Logger.getLogger("org.rococoa")
focal_class.modifier: private static
focal_class.original_string: private static Logger logging = Logger.getLogger("org.rococoa");
focal_class.type: Logger
focal_class.var_name: logging
focal_class.declarator: threadLocal = new ThreadLocal<AutoreleaseBatcher>()
focal_class.modifier: private static final
focal_class.original_string: private static final ThreadLocal<AutoreleaseBatcher> threadLocal = new ThreadLocal<AutoreleaseBatcher>();
focal_class.type: ThreadLocal<AutoreleaseBatcher>
focal_class.var_name: threadLocal
focal_class.declarator: pool
focal_class.modifier: private
focal_class.original_string: private NSAutoreleasePool pool;
focal_class.type: NSAutoreleasePool
focal_class.var_name: pool
focal_class.file: rococoa/rococoa-core/src/main/java/org/rococoa/internal/AutoreleaseBatcher.java
focal_class.identifier: AutoreleaseBatcher
focal_class.class_method_signature: AutoreleaseBatcher.forThread(int batchSize)
focal_class.full_signature: public static AutoreleaseBatcher forThread(int batchSize)
focal_class.identifier: forThread
focal_class.modifiers: public static
focal_class.parameters: (int batchSize)
focal_class.return: AutoreleaseBatcher
focal_class.signature: AutoreleaseBatcher forThread(int batchSize)
focal_class.class_method_signature: AutoreleaseBatcher.AutoreleaseBatcher(int batchSize)
focal_class.full_signature: public  AutoreleaseBatcher(int batchSize)
focal_class.identifier: AutoreleaseBatcher
focal_class.modifiers: public
focal_class.parameters: (int batchSize)
focal_class.signature:  AutoreleaseBatcher(int batchSize)
focal_class.class_method_signature: AutoreleaseBatcher.operation()
focal_class.full_signature: @Override protected void operation()
focal_class.identifier: operation
focal_class.modifiers: @Override protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void operation()
focal_class.class_method_signature: AutoreleaseBatcher.reset()
focal_class.full_signature: @Override protected void reset()
focal_class.identifier: reset
focal_class.modifiers: @Override protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void reset()
focal_class.superclass: extends OperationBatcher
focal_method.body: public static AutoreleaseBatcher forThread(int batchSize) {
          if (threadLocal.get() == null) {
              threadLocal.set(new AutoreleaseBatcher(batchSize));
          }
          return threadLocal.get();
      }
focal_method.class_method_signature: AutoreleaseBatcher.forThread(int batchSize)
focal_method.full_signature: public static AutoreleaseBatcher forThread(int batchSize)
focal_method.identifier: forThread
focal_method.invocations: get set get
focal_method.modifiers: public static
focal_method.parameters: (int batchSize)
focal_method.return: AutoreleaseBatcher
focal_method.signature: AutoreleaseBatcher forThread(int batchSize)