test_class.declarator: rnd = new Random()
test_class.modifier: private
test_class.original_string: private Random rnd = new Random();
test_class.type: Random
test_class.var_name: rnd
test_class.declarator: root = EmptyNodeState.EMPTY_NODE
test_class.modifier: private
test_class.original_string: private NodeState root = EmptyNodeState.EMPTY_NODE;
test_class.type: NodeState
test_class.var_name: root
test_class.declarator: builder = root.builder()
test_class.modifier: private
test_class.original_string: private NodeBuilder builder = root.builder();
test_class.type: NodeBuilder
test_class.var_name: builder
test_class.file: oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/BufferedOakDirectoryTest.java
test_class.identifier: BufferedOakDirectoryTest
test_case.body: @Test
      public void createOutput() throws Exception {
          Directory buffered = createDir(builder, true);
          byte[] data = writeFile(buffered, "file");
  
          // must not be visible yet in base
          Directory base = createDir(builder, false);
          assertFalse(base.fileExists("file"));
          base.close();
  
          buffered.close();
  
          // now it must exist
          base = createDir(builder, false);
          assertFile(base, "file", data);
          base.close();
      }
test_case.class_method_signature: BufferedOakDirectoryTest.createOutput()
test_case.full_signature: @Test public void createOutput()
test_case.identifier: createOutput
test_case.invocations: createDir writeFile createDir assertFalse fileExists close close createDir assertFile close
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void createOutput()
focal_class.declarator: ENABLE_WRITING_SINGLE_BLOB_INDEX_FILE_PARAM = "oak.lucene.enableSingleBlobIndexFiles"
focal_class.modifier: public static final
focal_class.original_string: public static final String ENABLE_WRITING_SINGLE_BLOB_INDEX_FILE_PARAM = "oak.lucene.enableSingleBlobIndexFiles";
focal_class.type: String
focal_class.var_name: ENABLE_WRITING_SINGLE_BLOB_INDEX_FILE_PARAM
focal_class.declarator: enableWritingSingleBlobIndexFile = Boolean.parseBoolean(
              System.getProperty(ENABLE_WRITING_SINGLE_BLOB_INDEX_FILE_PARAM, "true"))
focal_class.modifier: private static
focal_class.original_string: private static boolean enableWritingSingleBlobIndexFile = Boolean.parseBoolean(
              System.getProperty(ENABLE_WRITING_SINGLE_BLOB_INDEX_FILE_PARAM, "true"));
focal_class.type: boolean
focal_class.var_name: enableWritingSingleBlobIndexFile
focal_class.declarator: DELETE_THRESHOLD_UNTIL_REOPEN = 100
focal_class.modifier: static final
focal_class.original_string: static final int DELETE_THRESHOLD_UNTIL_REOPEN = 100;
focal_class.type: int
focal_class.var_name: DELETE_THRESHOLD_UNTIL_REOPEN
focal_class.declarator: LOG = LoggerFactory.getLogger(BufferedOakDirectory.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOG = LoggerFactory.getLogger(BufferedOakDirectory.class);
focal_class.type: Logger
focal_class.var_name: LOG
focal_class.declarator: blobFactory
focal_class.modifier: private final
focal_class.original_string: private final BlobFactory blobFactory;
focal_class.type: BlobFactory
focal_class.var_name: blobFactory
focal_class.declarator: blobDeletionCallback
focal_class.modifier: private final
focal_class.original_string: private final BlobDeletionCallback blobDeletionCallback;
focal_class.type: BlobDeletionCallback
focal_class.var_name: blobDeletionCallback
focal_class.declarator: dataNodeName
focal_class.modifier: private final
focal_class.original_string: private final String dataNodeName;
focal_class.type: String
focal_class.var_name: dataNodeName
focal_class.declarator: definition
focal_class.modifier: private final
focal_class.original_string: private final LuceneIndexDefinition definition;
focal_class.type: LuceneIndexDefinition
focal_class.var_name: definition
focal_class.declarator: base
focal_class.modifier: private final
focal_class.original_string: private final OakDirectory base;
focal_class.type: OakDirectory
focal_class.var_name: base
focal_class.declarator: bufferedForDelete = Sets.newConcurrentHashSet()
focal_class.modifier: private final
focal_class.original_string: private final Set<String> bufferedForDelete = Sets.newConcurrentHashSet();
focal_class.type: Set<String>
focal_class.var_name: bufferedForDelete
focal_class.declarator: bufferedBuilder = EMPTY_NODE.builder()
focal_class.modifier: private
focal_class.original_string: private NodeBuilder bufferedBuilder = EMPTY_NODE.builder();
focal_class.type: NodeBuilder
focal_class.var_name: bufferedBuilder
focal_class.declarator: buffered
focal_class.modifier: private
focal_class.original_string: private OakDirectory buffered;
focal_class.type: OakDirectory
focal_class.var_name: buffered
focal_class.declarator: deleteCount
focal_class.modifier: private
focal_class.original_string: private int deleteCount;
focal_class.type: int
focal_class.var_name: deleteCount
focal_class.file: oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/BufferedOakDirectory.java
focal_class.identifier: BufferedOakDirectory
focal_class.class_method_signature: BufferedOakDirectory.setEnableWritingSingleBlobIndexFile(boolean val)
focal_class.full_signature: public static void setEnableWritingSingleBlobIndexFile(boolean val)
focal_class.identifier: setEnableWritingSingleBlobIndexFile
focal_class.modifiers: public static
focal_class.parameters: (boolean val)
focal_class.return: void
focal_class.signature: void setEnableWritingSingleBlobIndexFile(boolean val)
focal_class.class_method_signature: BufferedOakDirectory.isEnableWritingSingleBlobIndexFile()
focal_class.full_signature: public static boolean isEnableWritingSingleBlobIndexFile()
focal_class.identifier: isEnableWritingSingleBlobIndexFile
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isEnableWritingSingleBlobIndexFile()
focal_class.class_method_signature: BufferedOakDirectory.reReadCommandLineParam()
focal_class.full_signature: static void reReadCommandLineParam()
focal_class.identifier: reReadCommandLineParam
focal_class.modifiers: static
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void reReadCommandLineParam()
focal_class.class_method_signature: BufferedOakDirectory.BufferedOakDirectory(@NotNull NodeBuilder builder,
                                  @NotNull String dataNodeName,
                                  @NotNull LuceneIndexDefinition definition,
                                  @Nullable BlobStore blobStore)
focal_class.full_signature: public  BufferedOakDirectory(@NotNull NodeBuilder builder,
                                  @NotNull String dataNodeName,
                                  @NotNull LuceneIndexDefinition definition,
                                  @Nullable BlobStore blobStore)
focal_class.identifier: BufferedOakDirectory
focal_class.modifiers: public
focal_class.parameters: (@NotNull NodeBuilder builder,
                                  @NotNull String dataNodeName,
                                  @NotNull LuceneIndexDefinition definition,
                                  @Nullable BlobStore blobStore)
focal_class.signature:  BufferedOakDirectory(@NotNull NodeBuilder builder,
                                  @NotNull String dataNodeName,
                                  @NotNull LuceneIndexDefinition definition,
                                  @Nullable BlobStore blobStore)
focal_class.class_method_signature: BufferedOakDirectory.BufferedOakDirectory(@NotNull NodeBuilder builder,
                                  @NotNull String dataNodeName,
                                  @NotNull LuceneIndexDefinition definition,
                                  @Nullable BlobStore blobStore,
                                  @NotNull ActiveDeletedBlobCollectorFactory.BlobDeletionCallback blobDeletionCallback)
focal_class.full_signature: public  BufferedOakDirectory(@NotNull NodeBuilder builder,
                                  @NotNull String dataNodeName,
                                  @NotNull LuceneIndexDefinition definition,
                                  @Nullable BlobStore blobStore,
                                  @NotNull ActiveDeletedBlobCollectorFactory.BlobDeletionCallback blobDeletionCallback)
focal_class.identifier: BufferedOakDirectory
focal_class.modifiers: public
focal_class.parameters: (@NotNull NodeBuilder builder,
                                  @NotNull String dataNodeName,
                                  @NotNull LuceneIndexDefinition definition,
                                  @Nullable BlobStore blobStore,
                                  @NotNull ActiveDeletedBlobCollectorFactory.BlobDeletionCallback blobDeletionCallback)
focal_class.signature:  BufferedOakDirectory(@NotNull NodeBuilder builder,
                                  @NotNull String dataNodeName,
                                  @NotNull LuceneIndexDefinition definition,
                                  @Nullable BlobStore blobStore,
                                  @NotNull ActiveDeletedBlobCollectorFactory.BlobDeletionCallback blobDeletionCallback)
focal_class.class_method_signature: BufferedOakDirectory.listAll()
focal_class.full_signature: @Override public String[] listAll()
focal_class.identifier: listAll
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String[]
focal_class.signature: String[] listAll()
focal_class.class_method_signature: BufferedOakDirectory.fileExists(String name)
focal_class.full_signature: @Override public boolean fileExists(String name)
focal_class.identifier: fileExists
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: boolean
focal_class.signature: boolean fileExists(String name)
focal_class.class_method_signature: BufferedOakDirectory.deleteFile(String name)
focal_class.full_signature: @Override public void deleteFile(String name)
focal_class.identifier: deleteFile
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: void
focal_class.signature: void deleteFile(String name)
focal_class.class_method_signature: BufferedOakDirectory.fileLength(String name)
focal_class.full_signature: @Override public long fileLength(String name)
focal_class.identifier: fileLength
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: long
focal_class.signature: long fileLength(String name)
focal_class.class_method_signature: BufferedOakDirectory.createOutput(String name, IOContext context)
focal_class.full_signature: @Override public IndexOutput createOutput(String name, IOContext context)
focal_class.identifier: createOutput
focal_class.modifiers: @Override public
focal_class.parameters: (String name, IOContext context)
focal_class.return: IndexOutput
focal_class.signature: IndexOutput createOutput(String name, IOContext context)
focal_class.class_method_signature: BufferedOakDirectory.sync(Collection<String> names)
focal_class.full_signature: @Override public void sync(Collection<String> names)
focal_class.identifier: sync
focal_class.modifiers: @Override public
focal_class.parameters: (Collection<String> names)
focal_class.return: void
focal_class.signature: void sync(Collection<String> names)
focal_class.class_method_signature: BufferedOakDirectory.openInput(String name, IOContext context)
focal_class.full_signature: @Override public IndexInput openInput(String name, IOContext context)
focal_class.identifier: openInput
focal_class.modifiers: @Override public
focal_class.parameters: (String name, IOContext context)
focal_class.return: IndexInput
focal_class.signature: IndexInput openInput(String name, IOContext context)
focal_class.class_method_signature: BufferedOakDirectory.makeLock(String name)
focal_class.full_signature: @Override public Lock makeLock(String name)
focal_class.identifier: makeLock
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: Lock
focal_class.signature: Lock makeLock(String name)
focal_class.class_method_signature: BufferedOakDirectory.clearLock(String name)
focal_class.full_signature: @Override public void clearLock(String name)
focal_class.identifier: clearLock
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: void
focal_class.signature: void clearLock(String name)
focal_class.class_method_signature: BufferedOakDirectory.close()
focal_class.full_signature: @Override public void close()
focal_class.identifier: close
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void close()
focal_class.class_method_signature: BufferedOakDirectory.setLockFactory(LockFactory lockFactory)
focal_class.full_signature: @Override public void setLockFactory(LockFactory lockFactory)
focal_class.identifier: setLockFactory
focal_class.modifiers: @Override public
focal_class.parameters: (LockFactory lockFactory)
focal_class.return: void
focal_class.signature: void setLockFactory(LockFactory lockFactory)
focal_class.class_method_signature: BufferedOakDirectory.getLockFactory()
focal_class.full_signature: @Override public LockFactory getLockFactory()
focal_class.identifier: getLockFactory
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: LockFactory
focal_class.signature: LockFactory getLockFactory()
focal_class.class_method_signature: BufferedOakDirectory.fileDeleted()
focal_class.full_signature: private void fileDeleted()
focal_class.identifier: fileDeleted
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void fileDeleted()
focal_class.class_method_signature: BufferedOakDirectory.reopenBuffered()
focal_class.full_signature: private void reopenBuffered()
focal_class.identifier: reopenBuffered
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void reopenBuffered()
focal_class.superclass: extends Directory
focal_method.body: @Override
      public IndexOutput createOutput(String name, IOContext context)
              throws IOException {
          LOG.debug("[{}]createOutput({})", definition.getIndexPath(), name);
          bufferedForDelete.remove(name);
          return buffered.createOutput(name, context);
      }
focal_method.class_method_signature: BufferedOakDirectory.createOutput(String name, IOContext context)
focal_method.full_signature: @Override public IndexOutput createOutput(String name, IOContext context)
focal_method.identifier: createOutput
focal_method.invocations: debug getIndexPath remove createOutput
focal_method.modifiers: @Override public
focal_method.parameters: (String name, IOContext context)
focal_method.return: IndexOutput
focal_method.signature: IndexOutput createOutput(String name, IOContext context)