test_class.declarator: nodeStore = new MemoryNodeStore()
test_class.modifier: private
test_class.original_string: private NodeStore nodeStore = new MemoryNodeStore();
test_class.type: NodeStore
test_class.var_name: nodeStore
test_class.declarator: indexPathService = new IndexPathServiceImpl(nodeStore)
test_class.modifier: private
test_class.original_string: private IndexPathService indexPathService = new IndexPathServiceImpl(nodeStore);
test_class.type: IndexPathService
test_class.var_name: indexPathService
test_class.file: oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/IndexPathServiceImplTest.java
test_class.identifier: IndexPathServiceImplTest
test_class.superclass: extends AbstractQueryTest
test_case.body: @Test
      public void noErrorIfQueryDefinitionsNotIndexed() throws Exception{
          Set<String> paths = Sets.newHashSet(indexPathService.getIndexPaths());
          assertThat(paths, hasItem("/oak:index/uuid"));
      }
test_case.class_method_signature: IndexPathServiceImplTest.noErrorIfQueryDefinitionsNotIndexed()
test_case.full_signature: @Test public void noErrorIfQueryDefinitionsNotIndexed()
test_case.identifier: noErrorIfQueryDefinitionsNotIndexed
test_case.invocations: newHashSet getIndexPaths assertThat hasItem
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void noErrorIfQueryDefinitionsNotIndexed()
focal_class.declarator: log = LoggerFactory.getLogger(getClass())
focal_class.modifier: private final
focal_class.original_string: private final Logger log = LoggerFactory.getLogger(getClass());
focal_class.type: Logger
focal_class.var_name: log
focal_class.declarator: settings = new QueryEngineSettings()
focal_class.modifier: private final
focal_class.original_string: private final QueryEngineSettings settings = new QueryEngineSettings();
focal_class.type: QueryEngineSettings
focal_class.var_name: settings
focal_class.declarator: nodeStore
focal_class.modifier: @Reference
      private
focal_class.original_string: @Reference
      private NodeStore nodeStore;
focal_class.type: NodeStore
focal_class.var_name: nodeStore
focal_class.declarator: mountInfoProvider
focal_class.modifier: @Reference
      private
focal_class.original_string: @Reference
      private MountInfoProvider mountInfoProvider;
focal_class.type: MountInfoProvider
focal_class.var_name: mountInfoProvider
focal_class.file: oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexPathServiceImpl.java
focal_class.identifier: IndexPathServiceImpl
focal_class.interfaces: implements IndexPathService
focal_class.class_method_signature: IndexPathServiceImpl.IndexPathServiceImpl()
focal_class.full_signature: public  IndexPathServiceImpl()
focal_class.identifier: IndexPathServiceImpl
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  IndexPathServiceImpl()
focal_class.class_method_signature: IndexPathServiceImpl.IndexPathServiceImpl(NodeStore nodeStore)
focal_class.full_signature: public  IndexPathServiceImpl(NodeStore nodeStore)
focal_class.identifier: IndexPathServiceImpl
focal_class.modifiers: public
focal_class.parameters: (NodeStore nodeStore)
focal_class.signature:  IndexPathServiceImpl(NodeStore nodeStore)
focal_class.class_method_signature: IndexPathServiceImpl.IndexPathServiceImpl(NodeStore nodeStore, MountInfoProvider mountInfoProvider)
focal_class.full_signature: public  IndexPathServiceImpl(NodeStore nodeStore, MountInfoProvider mountInfoProvider)
focal_class.identifier: IndexPathServiceImpl
focal_class.modifiers: public
focal_class.parameters: (NodeStore nodeStore, MountInfoProvider mountInfoProvider)
focal_class.signature:  IndexPathServiceImpl(NodeStore nodeStore, MountInfoProvider mountInfoProvider)
focal_class.class_method_signature: IndexPathServiceImpl.getIndexPaths()
focal_class.full_signature: @Override public Iterable<String> getIndexPaths()
focal_class.identifier: getIndexPaths
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Iterable<String>
focal_class.signature: Iterable<String> getIndexPaths()
focal_class.class_method_signature: IndexPathServiceImpl.createFilter(String nodeTypeName)
focal_class.full_signature: private FilterImpl createFilter(String nodeTypeName)
focal_class.identifier: createFilter
focal_class.modifiers: private
focal_class.parameters: (String nodeTypeName)
focal_class.return: FilterImpl
focal_class.signature: FilterImpl createFilter(String nodeTypeName)
focal_class.class_method_signature: IndexPathServiceImpl.getIndex()
focal_class.full_signature: private QueryIndex getIndex()
focal_class.identifier: getIndex
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: QueryIndex
focal_class.signature: QueryIndex getIndex()
focal_method.body: @Override
      public Iterable<String> getIndexPaths() {
          NodeState nodeType = NodeStateUtils.getNode(nodeStore.getRoot(), "/oak:index/nodetype");
  
          checkState("property".equals(nodeType.getString("type")), "nodetype index at " +
                  "/oak:index/nodetype is found to be disabled. Cannot determine the paths of all indexes");
  
          //Check if oak:QueryIndexDefinition is indexed as part of nodetype index
          boolean indxDefnTypeIndexed = Iterables.contains(nodeType.getNames(DECLARING_NODE_TYPES), INDEX_DEFINITIONS_NODE_TYPE);
  
          if (!indxDefnTypeIndexed) {
              log.warn("{} is not found to be indexed as part of nodetype index. Non root indexes would " +
                      "not be listed", INDEX_DEFINITIONS_NODE_TYPE);
              NodeState oakIndex = nodeStore.getRoot().getChildNode("oak:index");
              return transform(filter(oakIndex.getChildNodeEntries(),
                      cne -> INDEX_DEFINITIONS_NODE_TYPE.equals(cne.getNodeState().getName(JCR_PRIMARYTYPE))),
                      cne -> PathUtils.concat("/oak:index", cne.getName()));
          }
  
          return () -> {
              Iterator<IndexRow> itr = getIndex().query(createFilter(INDEX_DEFINITIONS_NODE_TYPE), nodeStore.getRoot());
              return transform(itr, input -> input.getPath());
          };
      }
focal_method.class_method_signature: IndexPathServiceImpl.getIndexPaths()
focal_method.full_signature: @Override public Iterable<String> getIndexPaths()
focal_method.identifier: getIndexPaths
focal_method.invocations: getNode getRoot checkState equals getString contains getNames warn getChildNode getRoot transform filter getChildNodeEntries equals getName getNodeState concat getName query getIndex createFilter getRoot transform getPath
focal_method.modifiers: @Override public
focal_method.parameters: ()
focal_method.return: Iterable<String>
focal_method.signature: Iterable<String> getIndexPaths()