test_class.declarator: builderProvider = new DocumentMKBuilderProvider()
test_class.modifier: @Rule
      public
test_class.original_string: @Rule
      public DocumentMKBuilderProvider builderProvider = new DocumentMKBuilderProvider();
test_class.type: DocumentMKBuilderProvider
test_class.var_name: builderProvider
test_class.declarator: store
test_class.modifier: private
test_class.original_string: private DocumentNodeStore store;
test_class.type: DocumentNodeStore
test_class.var_name: store
test_class.declarator: journalDisabledProp
test_class.modifier: private
test_class.original_string: private String journalDisabledProp;
test_class.type: String
test_class.var_name: journalDisabledProp
test_class.declarator: differ
test_class.modifier: private
test_class.original_string: private BundledDocumentDiffer differ;
test_class.type: BundledDocumentDiffer
test_class.var_name: differ
test_class.declarator: secondary = new MemoryNodeStore()
test_class.modifier: private
test_class.original_string: private MemoryNodeStore secondary = new MemoryNodeStore();
test_class.type: MemoryNodeStore
test_class.var_name: secondary
test_class.file: oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/bundlor/BundledDocumentDifferTest.java
test_class.identifier: BundledDocumentDifferTest
test_case.body: @Test
      public void diffWithSecondary() throws Exception{
          configureSecondary();
          NodeBuilder builder = createContentStructure();
          NodeState r1 = merge(store, builder);
          NodeState rs1 = DelegatingDocumentNodeState.wrap(secondary.getRoot(), store);
  
          builder = store.getRoot().builder();
          childBuilder(builder, "/test/book.jpg/jcr:content").setProperty("foo", "bar");
          NodeState r2 = merge(store, builder);
  
          JsopWriter w = new JsopBuilder();
          String path = "/test/book.jpg";
          assertFalse(differ.diff(adns(rs1, path), adns(r2, path), w));
          assertEquals("^\"jcr:content\":{}", w.toString());
      }
test_case.class_method_signature: BundledDocumentDifferTest.diffWithSecondary()
test_case.full_signature: @Test public void diffWithSecondary()
test_case.identifier: diffWithSecondary
test_case.invocations: configureSecondary createContentStructure merge wrap getRoot builder getRoot setProperty childBuilder merge assertFalse diff adns adns assertEquals toString
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void diffWithSecondary()
focal_class.declarator: nodeStore
focal_class.modifier: private final
focal_class.original_string: private final DocumentNodeStore nodeStore;
focal_class.type: DocumentNodeStore
focal_class.var_name: nodeStore
focal_class.file: oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/bundlor/BundledDocumentDiffer.java
focal_class.identifier: BundledDocumentDiffer
focal_class.class_method_signature: BundledDocumentDiffer.BundledDocumentDiffer(DocumentNodeStore nodeStore)
focal_class.full_signature: public  BundledDocumentDiffer(DocumentNodeStore nodeStore)
focal_class.identifier: BundledDocumentDiffer
focal_class.modifiers: public
focal_class.parameters: (DocumentNodeStore nodeStore)
focal_class.signature:  BundledDocumentDiffer(DocumentNodeStore nodeStore)
focal_class.class_method_signature: BundledDocumentDiffer.diff(AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w)
focal_class.full_signature: public boolean diff(AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w)
focal_class.identifier: diff
focal_class.modifiers: public
focal_class.parameters: (AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w)
focal_class.return: boolean
focal_class.signature: boolean diff(AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w)
focal_class.class_method_signature: BundledDocumentDiffer.diffChildren(Collection<String> fromChildren, Collection<String> toChildren, JsopWriter w)
focal_class.full_signature:  void diffChildren(Collection<String> fromChildren, Collection<String> toChildren, JsopWriter w)
focal_class.identifier: diffChildren
focal_class.parameters: (Collection<String> fromChildren, Collection<String> toChildren, JsopWriter w)
focal_class.return: void
focal_class.signature: void diffChildren(Collection<String> fromChildren, Collection<String> toChildren, JsopWriter w)
focal_class.class_method_signature: BundledDocumentDiffer.getDocumentNodeState(AbstractDocumentNodeState state)
focal_class.full_signature: private DocumentNodeState getDocumentNodeState(AbstractDocumentNodeState state)
focal_class.identifier: getDocumentNodeState
focal_class.modifiers: private
focal_class.parameters: (AbstractDocumentNodeState state)
focal_class.return: DocumentNodeState
focal_class.signature: DocumentNodeState getDocumentNodeState(AbstractDocumentNodeState state)
focal_method.body: public boolean diff(AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w){
          boolean fromBundled = BundlorUtils.isBundledNode(from);
          boolean toBundled = BundlorUtils.isBundledNode(to);
  
          //Neither of the nodes bundled
          if (!fromBundled && !toBundled){
              return true;
          }
  
          DocumentNodeState fromDocState = getDocumentNodeState(from);
          DocumentNodeState toDocState = getDocumentNodeState(to);
  
          diffChildren(fromDocState.getBundledChildNodeNames(), toDocState.getBundledChildNodeNames(), w);
  
          //If all child nodes are bundled then diff is complete
          if (fromDocState.hasOnlyBundledChildren()
                  && toDocState.hasOnlyBundledChildren()){
              return false;
          }
  
          return true;
      }
focal_method.class_method_signature: BundledDocumentDiffer.diff(AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w)
focal_method.full_signature: public boolean diff(AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w)
focal_method.identifier: diff
focal_method.invocations: isBundledNode isBundledNode getDocumentNodeState getDocumentNodeState diffChildren getBundledChildNodeNames getBundledChildNodeNames hasOnlyBundledChildren hasOnlyBundledChildren
focal_method.modifiers: public
focal_method.parameters: (AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w)
focal_method.return: boolean
focal_method.signature: boolean diff(AbstractDocumentNodeState from, AbstractDocumentNodeState to, JsopWriter w)