MCPcopy Create free account

hub / github.com/LianjiaTech/json-diff / functions

Functions148 in github.com/LianjiaTech/json-diff

↓ 53 callersMethodgetLeft
()
src/main/java/com/ke/diff/model/Result.java:48
↓ 53 callersMethodgetRight
()
src/main/java/com/ke/diff/model/Result.java:56
↓ 36 callersMethoddiff
对两个JsonNull进行比较时,需要实现此方法。 @param a 要比较的第一个JsonNull @param b 要比较的第二个JsonNull @param pathModule 路径模型 @return 返回不同的比较结果
src/main/java/com/ke/diff/algorithm/nulls/NullComparator.java:22
↓ 30 callersMethodwithNoisePahList
设置噪音路径 @param noisePahList 噪音路径列表 @return 对象本身
src/main/java/com/ke/diff/Diff.java:153
↓ 25 callersMethodwithAlgorithmEnum
选择算法模型 @param algorithmEnum 算法模型枚举类 @return 对象本身
src/main/java/com/ke/diff/Diff.java:133
↓ 15 callersMethoddiffElement
对象内部包含其他非数组类型,对这些类型比较需要使用JsonElement比较方法 @param a 要比较的第一个JsonElement @param b 要比较的第一个JsonElement @param pathModule 路径模型 @return 返回不相等的结果
src/main/java/com/ke/diff/algorithm/array/ArrayComparator.java:33
↓ 15 callersMethodgetDiffResultModels
()
src/main/java/com/ke/diff/model/DiffContext.java:41
↓ 15 callersMethodwithSpecialPath
设置自定义路径 @param specialPath 自定义路径列表 @return 对象本身
src/main/java/com/ke/diff/Diff.java:143
↓ 12 callersMethodgetDiffType
()
src/main/java/com/ke/diff/model/Result.java:64
↓ 10 callersMethodgetLeftPath
()
src/main/java/com/ke/diff/model/PathModule.java:65
↓ 8 callersMethodaddAllpath
同时在A和B路径列表最后加上一个Path路径
src/main/java/com/ke/diff/model/PathModule.java:84
↓ 8 callersMethodgetArrayAlgorithm
()
src/main/java/com/ke/diff/algorithm/AlgorithmModule.java:62
↓ 8 callersMethodremoveAllLastPath
同时移除A和B路径列表中最后的一个路径
src/main/java/com/ke/diff/model/PathModule.java:101
↓ 7 callersMethodgetLeftPath
()
src/main/java/com/ke/diff/model/Result.java:32
↓ 7 callersMethodsetDiffResultModels
(List<SingleNodeDifference> singleNodeDifferences)
src/main/java/com/ke/diff/model/DiffContext.java:45
↓ 7 callersMethodsetSame
(boolean same)
src/main/java/com/ke/diff/model/DiffContext.java:37
↓ 6 callersMethodconstructArrayPath
数组索引号加一个中括号表示数组路径 @param i 数组元素的索引号 @return 索引号增加中括号
src/main/java/com/ke/diff/algorithm/array/AbstractArray.java:16
↓ 6 callersMethodconstructResult
将diff上下文转换成diff最终结果 @param diffContext diff比较的直接结果 @return diff展示的结果
src/main/java/com/ke/diff/model/ResultConvertUtil.java:23
↓ 5 callersMethodgetRightPath
()
src/main/java/com/ke/diff/model/Result.java:36
↓ 4 callersMethodisSame
()
src/main/java/com/ke/diff/model/DiffContext.java:33
↓ 4 callersMethodjsonElement2Str
将比较的元素转换成String类型方便结果展示 @param element 元素 @return 元素转换成的字符串
src/main/java/com/ke/diff/algorithm/AbstractPrimitiveAndOther.java:16
↓ 4 callersMethodparentContextAddChildContext
如果下层diff结果不同,会把下层diff结果加入到上层diff结果中去。 @param parentResult 上层结果 @param childResult 下层结果
src/main/java/com/ke/diff/algorithm/AbstractObjectAndArray.java:41
↓ 4 callersMethodsetDiffType
(String diffType)
src/main/java/com/ke/diff/model/Result.java:68
↓ 4 callersMethodsetLeftPath
(String leftPath)
src/main/java/com/ke/diff/model/Result.java:40
↓ 4 callersMethodsetRightPath
(String rightPath)
src/main/java/com/ke/diff/model/Result.java:44
↓ 3 callersMethodgetAlgorithmModule
()
src/main/java/com/ke/diff/AlgorithmEnum.java:51
↓ 3 callersMethodwithArrayComparator
自定义数组比较器 @param arrayComparator 数组比较器 @return 对象本身
src/main/java/com/ke/diff/Diff.java:173
↓ 3 callersMethodwithObjectComparator
自定义对象比较器 @param objectComparator 对象比较器 @return 对象本身
src/main/java/com/ke/diff/Diff.java:163
↓ 2 callersMethodaddLeftPath
(String lastPath)
src/main/java/com/ke/diff/model/PathModule.java:89
↓ 2 callersMethodaddRightPath
(String lastPath)
src/main/java/com/ke/diff/model/PathModule.java:93
↓ 2 callersMethodconstructAlgorithmModule
构造算法模型,数组中元素比较需要使用到其他非数组算法 @param algorithmModule 算法模型:包含对象、数组、基本类型、空类型、其他类型算法
src/main/java/com/ke/diff/algorithm/array/ArrayComparator.java:39
↓ 2 callersMethoddiff
数组比较核心算法,支持数组a长度小于b长度时使用
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:105
↓ 2 callersMethoddiffValueByKey
对两个对象进行比较:遍历keySet中的所有key, 在a和b对象中找对应的value值进行比较 @param a 要比较的第一个对象 @param b 要比较的第二个对象 @param keySet key的集合 @param pathModule 路径模型 @return 不同的比较结果
src/main/java/com/ke/diff/algorithm/object/AbstractObject.java:30
↓ 2 callersMethodexchangeLeftAndRightPath
将路径模型中a和b的路径交换 @param pathModule 路径模型
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:95
↓ 2 callersMethodlistJoin
将path路径列表改为字符串 @param path 当前路径 @return 当前路径字符串
src/main/java/com/ke/diff/algorithm/object/AbstractObject.java:118
↓ 2 callersMethodsetLeft
(Object left)
src/main/java/com/ke/diff/model/Result.java:52
↓ 2 callersMethodsetRight
(Object right)
src/main/java/com/ke/diff/model/Result.java:60
↓ 2 callersMethodwithNullComparator
自定义空类型比较器 @param nullComparator 空类型比较器 @return 对象本身
src/main/java/com/ke/diff/Diff.java:194
↓ 2 callersMethodwithOtheComparator
自定义其他类型比较器 @param otherComparator 其他类型比较器 @return 对象本身
src/main/java/com/ke/diff/Diff.java:204
↓ 2 callersMethodwithPrimitiveAlgorithm
自定义基本类型比较器 @param primitiveComparator 基本类型比较器 @return 对象本身
src/main/java/com/ke/diff/Diff.java:184
↓ 1 callersMethodconstrcutDefaultComparator
没有初始的比较器替换成默认的
src/main/java/com/ke/diff/Diff.java:89
↓ 1 callersMethodconstructAddContext
此时a数组没有该元素,b数组有元素,结果为新增 @param b 数组 @param index 索引号 @param pathModule 路径模型 @return 生成的不同结果
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:196
↓ 1 callersMethodconstructModifyContext
返回两个数组对应索引号元素比较结果 @param a 数组a @param b 数组b @param i 数组a中元素的索引号 @param bestLineIndex 数组b中元素的索引号,即找到的和a中元素接接近的元素索引号。 @param pathModule 路径模型 @return 返回不
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:212
↓ 1 callersMethodconstructSimilarMatrix
用数组a的一个元素与数组b中所有元素分别比较,会得到n次比较结果,结果为不相等的结果对数,在矩阵中更新n次结果。
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:223
↓ 1 callersMethodconvert
数据模型转换,增加类型字段。 @param resultModel 比较结果 @return 展示模型
src/main/java/com/ke/diff/model/ResultConvertUtil.java:58
↓ 1 callersMethoddefaultAlgorithmModule
()
src/main/java/com/ke/diff/AlgorithmEnum.java:55
↓ 1 callersMethoddefaultArrayComparator
()
src/main/java/com/ke/diff/Diff.java:112
↓ 1 callersMethoddefaultNullComparator
()
src/main/java/com/ke/diff/Diff.java:120
↓ 1 callersMethoddefaultObjectComparator
()
src/main/java/com/ke/diff/Diff.java:108
↓ 1 callersMethoddefaultOtherComparator
()
src/main/java/com/ke/diff/Diff.java:124
↓ 1 callersMethoddefaultPrimitiveComparator
()
src/main/java/com/ke/diff/Diff.java:116
↓ 1 callersMethoddiffArray
对两个JsonArray进行比较的方法 @param a 要比较的第一个JsonArray @param b 要比较的第二个JsonArray @param pathModule 路径模型 @return 返回不相等的结果
src/main/java/com/ke/diff/algorithm/array/ArrayComparator.java:24
↓ 1 callersMethoddiffElement
@param a 要比较的第一个JsonElement @param b 要比较的第二个JsonElement @return 用来展示的diff结果
src/main/java/com/ke/diff/Diff.java:56
↓ 1 callersMethoddiffElement
对象内部包含其他非JsonObject类型,对这些类型比较需要使用JsonElement比较方法 @param a 元素a @param b 元素b @param pathModule 路径模型 @return 返回不同的比较结果
src/main/java/com/ke/diff/algorithm/object/ObjectComparator.java:33
↓ 1 callersMethodexchangePathAndResult
交换返回结果中的路径和结果 @param singleNodeDifference 返回结果
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:81
↓ 1 callersMethodexchangeResult
交换返回结果中每一个路径和结果 @param diffContext 返回结果
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:70
↓ 1 callersMethodexistPath
校验路径是否存在,即路径是否为空 @param specialPath 特殊路径 @return 特殊路径是否为空
src/main/java/com/ke/diff/algorithm/object/AbstractObject.java:76
↓ 1 callersMethodexistSpecialPath
判断比较结果是否有特殊路径
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:249
↓ 1 callersMethodgenerateDiffResult
生成比较结果,分以下3种情况考虑 i < a.size() && i < b.size() a.size() <= i b.size() <= i @param a 数组a @param b 数组b @param i 数组a和b中正在比较的元素索引号 @param pathModule 路径模
src/main/java/com/ke/diff/algorithm/array/SimpleArrayComparator.java:45
↓ 1 callersMethodgetCaseList
()
src/test/java/cases/ShowCase.java:44
↓ 1 callersMethodgetNoisePahList
()
src/main/java/com/ke/diff/model/PathModule.java:49
↓ 1 callersMethodgetSpecialPath
判断当前路径是否在特殊路径集合中,如果在,则返回特殊路径。 @param pathModule 路径模型 @return 返回的特殊路径字符串
src/main/java/com/ke/diff/algorithm/object/AbstractObject.java:85
↓ 1 callersMethodgetSpecialPathResult
()
src/main/java/com/ke/diff/model/DiffContext.java:54
↓ 1 callersMethodneedDiff
判断当前字段是否需要diff,如果在噪音字段集合中,则不需要diff,返回false。 @param noisePahList 噪音路径列表 @param pathList 当前路径 @return 当前路径是否在噪音路径中
src/main/java/com/ke/diff/algorithm/object/AbstractObject.java:102
↓ 1 callersMethodobtainAddDiffResult
得到新增的结果。由于b数组长度大于a,会有几个元素多余。在选出a和b最接近的几对元素后,剩下的几个元素被认为是新增的。
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:140
↓ 1 callersMethodobtainDiffResult
通过相似度矩阵,获取比较结果。 第一步在矩阵找到最小的数字,即找到最接近的几对结果。 第二步找剩余未使用的列数,即多余的元素
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:126
↓ 1 callersMethodobtainModifyDiffResult
从m n的矩阵中选出最接近的几组结果,矩阵中的数字越小,说明2个元素比较时结果相差越少
src/main/java/com/ke/diff/algorithm/array/SimilarArrayComparator.java:153
↓ 1 callersMethodremoveLastLeftPath
移除A路径列表中最后的一个路径
src/main/java/com/ke/diff/model/PathModule.java:109
↓ 1 callersMethodremoveLastRightPath
移除B路径列表中最后的一个路径
src/main/java/com/ke/diff/model/PathModule.java:116
↓ 1 callersMethodsetLeftPath
(LinkedList<String> leftPath)
src/main/java/com/ke/diff/model/PathModule.java:69
↓ 1 callersMethodsetNoisePahList
(List<String> noisePahList)
src/main/java/com/ke/diff/model/PathModule.java:53
↓ 1 callersMethodsetSpecialPath
(LinkedList<String> specialPath)
src/main/java/com/ke/diff/model/PathModule.java:61
↓ 1 callersMethodsetSpecialPathResult
(LinkedList<String> specialPathResult)
src/main/java/com/ke/diff/model/DiffContext.java:58
↓ 1 callersMethodsimilarAndLeftJoinAlgorithmModule
()
src/main/java/com/ke/diff/AlgorithmEnum.java:72
↓ 1 callersMethodsimilarAndSimpleAlgorithmModule
()
src/main/java/com/ke/diff/AlgorithmEnum.java:77
↓ 1 callersMethodsimpleAndLeftJoinAlgorithmModule
()
src/main/java/com/ke/diff/AlgorithmEnum.java:67
↓ 1 callersMethodsimpleAndSimpleAlgorithmModule
()
src/main/java/com/ke/diff/AlgorithmEnum.java:61
↓ 1 callersMethodspecialPathHandle
如果比较的路径为特殊路径并且比较相等,特殊路径会被标识,添加到返回结果中。 @param isSame 比较结果是否相等 @param specialPathResult 返回的特殊路径结果 @param pathModule 路径模型
src/main/java/com/ke/diff/algorithm/object/AbstractObject.java:59
MethodAlgorithmEnum
(AlgorithmModule algorithmModule)
src/main/java/com/ke/diff/AlgorithmEnum.java:46
MethodAlgorithmModule
(ObjectComparator objectAlgorithm, ArrayComparator arrayAlgorithm, PrimitiveCompara
src/main/java/com/ke/diff/algorithm/AlgorithmModule.java:30
MethodDiff
()
src/main/java/com/ke/diff/Diff.java:83
MethodDiffContext
(boolean isSame)
src/main/java/com/ke/diff/model/DiffContext.java:28
MethodPathModule
()
src/main/java/com/ke/diff/model/PathModule.java:31
MethodSingleNodeDifference
比较结果
src/main/java/com/ke/diff/model/SingleNodeDifference.java:31
MethodconstructAlgorithmModule
构造算法模型,比如使用对象和数组类型算法比较时,内部会用到其他类型的算法。 @param algorithmModule 算法模型
src/main/java/com/ke/diff/algorithm/AbstractObjectAndArray.java:32
MethodconstructAlgorithmModule
构造算法模型,对象比较时,内部元素比较需要使用到其他非数组算法 @param algorithmModule 算法模型:包含对象、数组、基本类型、空类型、其他类型算法
src/main/java/com/ke/diff/algorithm/object/ObjectComparator.java:39
Methoddiff
测试withA withB diff方法
src/test/java/com/ke/diff/diff/DiffTest.java:30
Methoddiff
测试"a"和1比较结果。
src/test/java/com/ke/diff/algorithm/primitive/DefaultPrimitiveComparatorTest.java:20
Methoddiff
测试JsonNull和JsonNull比较结果。
src/test/java/com/ke/diff/algorithm/nulls/DefaultNullComparatorTest.java:20
Methoddiff
@param strA 要比较的第一个字符串 @param strB 要比较的第二个字符串 @return 用来展示的diff结果
src/main/java/com/ke/diff/Diff.java:79
Methoddiff
@param a 要比较的第一个JsonPrimitive @param b 要比较的第二个JsonPrimitive @param pathModule 路径模型 @return 不同的比较结果
src/main/java/com/ke/diff/algorithm/primitive/DefaultPrimitiveComparator.java:26
Methoddiff
对两个基本类型进行比较时,需要实现此方法。 @param a 要比较的第一个JsonPrimitive @param b 要比较的第二个JsonPrimitive @param pathModule 路径模型 @return 不同的比较结果
src/main/java/com/ke/diff/algorithm/primitive/PrimitiveComparator.java:21
Methoddiff
对两个JsonElement进行比较并且两个JsonElement的类型不相等时,需要实现此方法。 @param a 要比较的第一个JsonElement @param b 要比较的第二个JsonElement @return 不同的比较结果
src/main/java/com/ke/diff/algorithm/other/OtherComparator.java:22
Methoddiff
@param a 要比较的第一个JsonElement @param b 要比较的第二个JsonElement @param pathModule 路径模型 @return 不同的比较结果
src/main/java/com/ke/diff/algorithm/other/DefaultOtherComparator.java:27
Methoddiff
当要比较的两个JsonElement是空类型时,默认比较方法 @param a 第一个空类型 @param b 第二个空类型 @param pathModule 路径模型 @return 返回结果
src/main/java/com/ke/diff/algorithm/nulls/DefaultNullComparator.java:21
Methoddiff
@param a 要比较的第一个JsonObject @param b 要比较的第二个JsonObject @param pathModule 路径模型 @return 不同的比较结果
src/main/java/com/ke/diff/algorithm/object/SimpleObjectComparator.java:25
Methoddiff
@param a 要比较的第一个JsonObject @param b 要比较的第二个JsonObject @param pathModule 路径模型 @return 不同的比较结果
src/main/java/com/ke/diff/algorithm/object/LeftJoinObjectComparator.java:24
Methoddiff
对两个JsonObject进行比较时,需要实现此方法。 @param a 要比较的第一个JsonObject @param b 要比较的第二个JsonObject @param pathModule 路径模型 @return 返回不同的比较结果
src/main/java/com/ke/diff/algorithm/object/ObjectComparator.java:24
Methoddiff1
测试withNoisePahList方法
src/test/java/com/ke/diff/diff/DiffTest.java:41
Methoddiff1
测试"a"和JsonNull比较结果。
src/test/java/com/ke/diff/algorithm/other/DefaultOtherComparatorTest.java:22
next →1–100 of 148, ranked by callers