/// <summary> /// Diff weak fingerprints. /// </summary> public JObject DiffWeakFingerprint(PipRecordingSession otherSession) => AugmentWithSessionInfo( JsonFingerprintDiff.DiffWeakFingerprints( WeakFingerprint, GetWeakFingerprintTree(), otherSession.WeakFingerprint, otherSession.GetWeakFingerprintTree()));
/// <summary> /// Diff strong fingerprints. /// </summary> public JObject DiffStrongFingerprint(PipRecordingSession otherSession) => JsonFingerprintDiff.DiffStrongFingerprints( StrongFingerprint, GetPathSetTree(), GetStrongFingerpintInputTree(), otherSession.StrongFingerprint, otherSession.GetPathSetTree(), otherSession.GetStrongFingerpintInputTree(), directoryMembershipHash => GetDirectoryMembership(m_store, directoryMembershipHash), otherDirectoryMembershipHash => GetDirectoryMembership(otherSession.m_store, otherDirectoryMembershipHash));
/// <summary> /// Diff pathsets. /// </summary> public JObject DiffPathSet(PipRecordingSession otherSession) => AugmentWithSessionInfo( JsonFingerprintDiff.DiffPathSets( PathSetHash, GetPathSetTree(), GetStrongFingerpintInputTree(), otherSession.PathSetHash, otherSession.GetPathSetTree(), otherSession.GetStrongFingerpintInputTree(), directoryMembershipHash => GetDirectoryMembership(m_store, directoryMembershipHash), otherDirectoryMembershipHash => GetDirectoryMembership(otherSession.m_store, otherDirectoryMembershipHash)));
private static string PrintTreeDiff(JsonNode oldNode, JsonNode newNode, PipRecordingSession oldPipSession) { return(JsonTree.PrintTreeDiff(oldNode, newNode) + oldPipSession.GetOldProvenance().ToString()); }