From 2fa0e53176010dc6179181a29c4ef3eac7079d1f Mon Sep 17 00:00:00 2001 From: pengzhile Date: Fri, 21 Jan 2022 18:19:48 +0800 Subject: [PATCH] 1. update the version of ja-netfilter 2. add example of global transformer Signed-off-by: pengzhile --- pom.xml | 2 +- .../my/sample/plugin/GlobalTransformer.java | 35 +++++++++++++++++++ .../java/my/sample/plugin/MyPluginEntry.java | 1 + 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 src/main/java/my/sample/plugin/GlobalTransformer.java diff --git a/pom.xml b/pom.xml index 940ab22..065ed7b 100644 --- a/pom.xml +++ b/pom.xml @@ -68,7 +68,7 @@ com.ja-netfilter ja-netfilter - 2.2.0 + 2.2.1 provided diff --git a/src/main/java/my/sample/plugin/GlobalTransformer.java b/src/main/java/my/sample/plugin/GlobalTransformer.java new file mode 100644 index 0000000..dd53d74 --- /dev/null +++ b/src/main/java/my/sample/plugin/GlobalTransformer.java @@ -0,0 +1,35 @@ +package my.sample.plugin; + +import com.janetfilter.core.commons.DebugInfo; +import com.janetfilter.core.plugin.MyTransformer; + +public class GlobalTransformer implements MyTransformer { + @Override + public String getHookClassName() { + return null; + } + + @Override + public void before(String className, byte[] classBytes) throws Exception { + DebugInfo.debug("before transform: " + className); + } + + @Override + public byte[] preTransform(String className, byte[] classBytes, int order) throws Exception { + DebugInfo.debug("pre transform: " + className + ", order: " + order); + + return classBytes; + } + + @Override + public byte[] postTransform(String className, byte[] classBytes, int order) throws Exception { + DebugInfo.debug("post transform: " + className + ", order: " + order); + + return classBytes; + } + + @Override + public void after(String className, byte[] classBytes) throws Exception { + DebugInfo.debug("pre transform: " + className); + } +} diff --git a/src/main/java/my/sample/plugin/MyPluginEntry.java b/src/main/java/my/sample/plugin/MyPluginEntry.java index 6e8529c..918e083 100644 --- a/src/main/java/my/sample/plugin/MyPluginEntry.java +++ b/src/main/java/my/sample/plugin/MyPluginEntry.java @@ -11,6 +11,7 @@ public class MyPluginEntry implements PluginEntry { public MyPluginEntry() { transformers.add(new TestTransformer()); + transformers.add(new GlobalTransformer()); } @Override