From b09400c5186033c041b84ae3cd32d3a08e22e366 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Oct 2020 17:40:25 +0000 Subject: [PATCH 1/7] Bump junit from 4.12 to 4.13.1 Bumps [junit](https://github.com/junit-team/junit4) from 4.12 to 4.13.1. - [Release notes](https://github.com/junit-team/junit4/releases) - [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.12.md) - [Commits](https://github.com/junit-team/junit4/compare/r4.12...r4.13.1) Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9a9d85c..4784ad0 100644 --- a/pom.xml +++ b/pom.xml @@ -140,7 +140,7 @@ junit junit - 4.12 + 4.13.1 test From 33c68eaa97a7a24ab68fef68a40864f254e0284c Mon Sep 17 00:00:00 2001 From: Daan van den Heuvel Date: Wed, 14 Oct 2020 08:40:34 +0200 Subject: [PATCH 2/7] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 8ef8e4d..3ebd93f 100644 --- a/README.md +++ b/README.md @@ -37,8 +37,8 @@ A DataFlowGraph represents a single class. Now if we want to gather all input nodes to this class that can influence the output of the method "getA", we can do that as given below. First get the given method. Now we need to walk back until we reach a node that is an input parameter of a method, for this we can use the method DataFlowNode::isInputParameter. -For this example we don't want to go outside this class so we add dfg::owns as scope to the method walkBackUntil. -The scope determines when to stop walking over the nodes, this can become important multiple data flow graphs are connected to each other. +For this example we don't want to go outside of this class so we add dfg::owns as scope to the method walkBackUntil. +The scope determines when to stop walking over the nodes, this can become important if multiple data flow graphs are connected to each other. However, this is currently not supported yet. DataFlowMethod getA = dfg.getMethods().stream().filter(m -> m.getName().equals("getA")).findFirst().get(); @@ -76,4 +76,4 @@ Add the dependency below to the pom of your project. ## License -JavaDataFlow is available under the terms of the Apache License. http://www.apache.org/licenses/LICENSE-2.0 \ No newline at end of file +JavaDataFlow is available under the terms of the Apache License. http://www.apache.org/licenses/LICENSE-2.0 From 37862e5276ab241031f4755a188aa1af666fc247 Mon Sep 17 00:00:00 2001 From: Daan van den Heuvel Date: Thu, 10 Feb 2022 17:22:29 +0100 Subject: [PATCH 3/7] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 3ebd93f..5e0640a 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +[![Join the chat at https://gitter.im/JavaDataFlow/community](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/JavaDataFlow/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) + # JavaDataFlow Creating Data Flow Graphs from java input classes From aee27aca58382737c8792e39e19cc420c604a8d8 Mon Sep 17 00:00:00 2001 From: Daan van den Heuvel Date: Thu, 10 Mar 2022 17:04:51 +0100 Subject: [PATCH 4/7] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5e0640a..57ca51f 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ However, this is currently not supported yet. List inputNodes = getA.getReturnNode().get().walkBackUntil(DataFlowNode::isInputParameter, dfg::owns); System.out.println(inputNodes.get(0).getName()); -The above code will output the name "inputA". +The above code will output the name "inputA". All code above is also given in an [example project](https://github.com/daanvdh/JavaDataFlowExample). ## Setup Add the dependency below to the pom of your project. @@ -55,7 +55,7 @@ Add the dependency below to the pom of your project. com.github.daanvdh.javadataflow JavaDataFlow - 0.0.2 + 0.0.3 ## Definitions From 47b5a1ce7595628e4ff289a5a97dc065b175a5a5 Mon Sep 17 00:00:00 2001 From: Daan van den Heuvel Date: Thu, 10 Mar 2022 17:30:05 +0100 Subject: [PATCH 5/7] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c34815f..ce596e4 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ [![Join the chat at https://gitter.im/JavaDataFlow/community](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/JavaDataFlow/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +[![Maven Central](https://img.shields.io/maven-central/v/com.github.javaparser/javaparser-core.svg)](https://search.maven.org/search?q=g:com.github.daanvdh.javadataflow) # JavaDataFlow Creating Data Flow Graphs from java input classes From 535e0d1a06a8cf66b57a7a3d6316d108b8406f80 Mon Sep 17 00:00:00 2001 From: Daan van den Heuvel Date: Thu, 10 Mar 2022 17:52:31 +0100 Subject: [PATCH 6/7] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ce596e4..20b5192 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ [![Join the chat at https://gitter.im/JavaDataFlow/community](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/JavaDataFlow/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) -[![Maven Central](https://img.shields.io/maven-central/v/com.github.javaparser/javaparser-core.svg)](https://search.maven.org/search?q=g:com.github.daanvdh.javadataflow) +[![maven-central](https://img.shields.io/maven-central/v/com.github.daanvdh.javadataflow/JavaDataFlow.svg)](https://search.maven.org/search?q=g:com.github.daanvdh.javadataflow) # JavaDataFlow Creating Data Flow Graphs from java input classes From 8961addb4d28b5b0884f1cc5874422ef7ff01bed Mon Sep 17 00:00:00 2001 From: "daan.vandenheuvel" Date: Tue, 22 Mar 2022 14:22:38 +0100 Subject: [PATCH 7/7] fix class cast exception in mvn --- src/main/java/factory/MethodNodeHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/factory/MethodNodeHandler.java b/src/main/java/factory/MethodNodeHandler.java index 444c0a9..c6127a4 100644 --- a/src/main/java/factory/MethodNodeHandler.java +++ b/src/main/java/factory/MethodNodeHandler.java @@ -274,7 +274,7 @@ private Optional getDataFlowNode(DataFlowGraph graph, DataFlowMeth if (optionalResolvedNode.isPresent()) { Node resolvedNode = optionalResolvedNode.get(); flowNode = getLastFlowNode(graph, method, overwriddenValues, resolvedNode); - flowNode = (flowNode != null && !(resolvedNode instanceof VariableDeclarationExpr)) ? flowNode + flowNode = (flowNode != null || !(resolvedNode instanceof VariableDeclarationExpr)) ? flowNode : ((VariableDeclarationExpr) resolvedNode).getVariables().stream().map(child -> getLastFlowNode(graph, method, overwriddenValues, child)) .filter(n -> n != null).findFirst().orElse(null); }