org.springframework
spring-test
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/ApplicationContextHandler.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ApplicationContextHandler.java
similarity index 97%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/ApplicationContextHandler.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ApplicationContextHandler.java
index d1b21802a3b3..f0476d58480f 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/ApplicationContextHandler.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ApplicationContextHandler.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2019 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Injector;
import com.google.inject.Key;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/DummyInstrumentation.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/DummyInstrumentation.java
similarity index 94%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/DummyInstrumentation.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/DummyInstrumentation.java
index f34d85163883..d27be0821f6d 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/DummyInstrumentation.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/DummyInstrumentation.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2014 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import java.lang.instrument.ClassDefinition;
import java.lang.instrument.ClassFileTransformer;
@@ -63,7 +63,7 @@ public void redefineClasses(ClassDefinition... definitions) throws ClassNotFound
@Override
public boolean isModifiableClass(Class> theClass) {
- return false;
+ return true;
}
@Override
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/EmptyListener.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/EmptyListener.java
similarity index 86%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/EmptyListener.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/EmptyListener.java
index 54cc8b14ed04..82dc11f2868d 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/EmptyListener.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/EmptyListener.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
/**
* @author Woonduk Kang(emeroad)
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/InterceptorRegistryModule.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/InterceptorRegistryModule.java
similarity index 91%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/InterceptorRegistryModule.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/InterceptorRegistryModule.java
index 038379e4eb18..23c9d9e1a4d6 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/InterceptorRegistryModule.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/InterceptorRegistryModule.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.AbstractModule;
import com.google.inject.Module;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/Item.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/Item.java
similarity index 97%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/Item.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/Item.java
index 5ac2fe381e8a..d969ededbf5f 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/Item.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/Item.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.profiler.context.AsyncSpanChunk;
import com.navercorp.pinpoint.profiler.context.LocalAsyncId;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/ListenableDataSender.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ListenableDataSender.java
similarity index 91%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/ListenableDataSender.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ListenableDataSender.java
index 2b2f0876e341..b62cbcef680d 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/ListenableDataSender.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ListenableDataSender.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.common.profiler.message.DataSender;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MethodDescriptionUtils.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MethodDescriptionUtils.java
similarity index 97%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MethodDescriptionUtils.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MethodDescriptionUtils.java
index 16f9990341ec..64fd5c4167f0 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MethodDescriptionUtils.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MethodDescriptionUtils.java
@@ -1,21 +1,20 @@
/*
- * Copyright 2016 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.common.util.ArrayUtils;
import com.navercorp.pinpoint.common.util.StringUtils;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApiMetaDataService.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApiMetaDataService.java
similarity index 94%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApiMetaDataService.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApiMetaDataService.java
index 08764f552bdf..1136c7586105 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApiMetaDataService.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApiMetaDataService.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2019 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.bootstrap.context.MethodDescriptor;
import com.navercorp.pinpoint.common.profiler.message.EnhancedDataSender;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApiMetaDataServiceProvider.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApiMetaDataServiceProvider.java
similarity index 92%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApiMetaDataServiceProvider.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApiMetaDataServiceProvider.java
index d1cc404e3b5b..5eb61f853f4e 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApiMetaDataServiceProvider.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApiMetaDataServiceProvider.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Inject;
import com.google.inject.Provider;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApplicationContextFactory.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApplicationContextFactory.java
similarity index 86%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApplicationContextFactory.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApplicationContextFactory.java
index a27f1a3785f0..25f835fd00a4 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApplicationContextFactory.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApplicationContextFactory.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2017 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Module;
import com.navercorp.pinpoint.bootstrap.AgentOption;
@@ -25,6 +25,9 @@
import com.navercorp.pinpoint.profiler.context.module.ModuleFactory;
import com.navercorp.pinpoint.profiler.interceptor.registry.InterceptorRegistryBinder;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.io.InputStream;
import java.lang.instrument.Instrumentation;
import java.util.Collections;
@@ -43,13 +46,16 @@ public DefaultApplicationContext build(String configPath) {
}
private ProfilerConfig loadProfilerConfig(String configPath) {
+ File file = new File(configPath);
+
final ClassLoader classLoader = this.getClass().getClassLoader();
- final InputStream resource = classLoader.getResourceAsStream(configPath);
- if (resource == null) {
+ final InputStream resource;
+ try {
+ resource = new FileInputStream(file);
+ return ProfilerConfigLoader.load(resource);
+ } catch (FileNotFoundException e) {
throw new RuntimeException("pinpoint.config not found. configPath:" + configPath);
}
-
- return ProfilerConfigLoader.load(resource);
}
public DefaultApplicationContext build(ProfilerConfig config) {
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApplicationContextModule.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApplicationContextModule.java
similarity index 95%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApplicationContextModule.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApplicationContextModule.java
index c508cc4a94c5..e54c2062aa59 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockApplicationContextModule.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockApplicationContextModule.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2019 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.AbstractModule;
import com.google.inject.Scopes;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginContextLoadResult.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginContextLoadResult.java
similarity index 96%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginContextLoadResult.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginContextLoadResult.java
index d95e15de21d2..3aebbb9dac2e 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginContextLoadResult.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginContextLoadResult.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2017 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.bootstrap.plugin.ProfilerPlugin;
import com.navercorp.pinpoint.bootstrap.plugin.jdbc.JdbcUrlParserV2;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginContextLoadResultProvider.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginContextLoadResultProvider.java
similarity index 92%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginContextLoadResultProvider.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginContextLoadResultProvider.java
index 42e7cd60f21a..89e604ff25b7 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginContextLoadResultProvider.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginContextLoadResultProvider.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2017 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Inject;
import com.google.inject.Provider;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginSetup.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginSetup.java
similarity index 97%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginSetup.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginSetup.java
index b9d7e8964249..039f306857a7 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginSetup.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginSetup.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2017 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Inject;
import com.navercorp.pinpoint.bootstrap.config.ProfilerConfig;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginSetupProvider.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginSetupProvider.java
similarity index 90%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginSetupProvider.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginSetupProvider.java
index 05cb659e7ac9..3511892aaa24 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockPluginSetupProvider.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockPluginSetupProvider.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Inject;
import com.google.inject.Provider;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockProfilerPluginContextLoader.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockProfilerPluginContextLoader.java
similarity index 95%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockProfilerPluginContextLoader.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockProfilerPluginContextLoader.java
index 90bb66fd237a..c8874c0d4757 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockProfilerPluginContextLoader.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockProfilerPluginContextLoader.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.bootstrap.config.ProfilerConfig;
import com.navercorp.pinpoint.bootstrap.plugin.ProfilerPlugin;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockProfilerPluginContextLoaderProvider.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockProfilerPluginContextLoaderProvider.java
similarity index 94%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockProfilerPluginContextLoaderProvider.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockProfilerPluginContextLoaderProvider.java
index afec2c1a962b..9496ad79893d 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockProfilerPluginContextLoaderProvider.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockProfilerPluginContextLoaderProvider.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Inject;
import com.google.inject.Provider;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockTraceContextFactory.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockTraceContextFactory.java
similarity index 96%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/MockTraceContextFactory.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockTraceContextFactory.java
index 0d92b3a5966e..2dd5c740c29e 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/MockTraceContextFactory.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/MockTraceContextFactory.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2019 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.AbstractModule;
import com.google.inject.Module;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/OrderedSpanRecorder.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/OrderedSpanRecorder.java
similarity index 97%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/OrderedSpanRecorder.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/OrderedSpanRecorder.java
index cddbc33267f4..1e92eb4ac48e 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/OrderedSpanRecorder.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/OrderedSpanRecorder.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import java.io.PrintStream;
import java.util.ArrayList;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/OverrideModuleFactory.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/OverrideModuleFactory.java
similarity index 91%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/OverrideModuleFactory.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/OverrideModuleFactory.java
index d9e9b26c598e..d38ffdc02e35 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/OverrideModuleFactory.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/OverrideModuleFactory.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2019 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Module;
import com.google.inject.util.Modules;
@@ -23,7 +23,7 @@
import com.navercorp.pinpoint.bootstrap.config.TransportModule;
import com.navercorp.pinpoint.profiler.context.module.ApplicationContextModuleFactory;
import com.navercorp.pinpoint.profiler.context.module.ModuleFactory;
-import com.navercorp.pinpoint.test.rpc.MockRpcModule;
+import com.navercorp.pinpoint.profiler.test.rpc.MockRpcModule;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginApplicationContextModule.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginApplicationContextModule.java
similarity index 97%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginApplicationContextModule.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginApplicationContextModule.java
index 0fe55f4979b3..cb951e811ffd 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginApplicationContextModule.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginApplicationContextModule.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2019 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.AbstractModule;
import com.google.inject.Key;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginTestAgent.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginTestAgent.java
similarity index 93%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginTestAgent.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginTestAgent.java
index 13feda28b2b5..b65eeae88197 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginTestAgent.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginTestAgent.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2014 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.profiler.context.module.ApplicationContext;
import com.navercorp.pinpoint.profiler.context.module.DefaultApplicationContext;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginVerifierExternalAdaptor.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginVerifierExternalAdaptor.java
similarity index 98%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginVerifierExternalAdaptor.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginVerifierExternalAdaptor.java
index c139aa662566..d4db36cfe4c0 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/PluginVerifierExternalAdaptor.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/PluginVerifierExternalAdaptor.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,13 +14,14 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.bootstrap.context.ServerMetaData;
import com.navercorp.pinpoint.bootstrap.context.ServiceInfo;
import com.navercorp.pinpoint.bootstrap.context.TraceContext;
import com.navercorp.pinpoint.bootstrap.plugin.test.Expectations;
import com.navercorp.pinpoint.bootstrap.plugin.test.ExpectedAnnotation;
+import com.navercorp.pinpoint.bootstrap.plugin.test.ExpectedNotNull;
import com.navercorp.pinpoint.bootstrap.plugin.test.ExpectedSql;
import com.navercorp.pinpoint.bootstrap.plugin.test.ExpectedTrace;
import com.navercorp.pinpoint.bootstrap.plugin.test.ExpectedTraceField;
@@ -46,12 +47,12 @@
import com.navercorp.pinpoint.profiler.context.SpanType;
import com.navercorp.pinpoint.profiler.context.id.TraceRoot;
import com.navercorp.pinpoint.profiler.context.module.DefaultApplicationContext;
+import com.navercorp.pinpoint.profiler.test.util.AnnotationUtils;
+import com.navercorp.pinpoint.profiler.test.util.AssertionErrorBuilder;
+import com.navercorp.pinpoint.profiler.test.util.ThreadUtils;
+import com.navercorp.pinpoint.profiler.test.wrapper.ActualTrace;
+import com.navercorp.pinpoint.profiler.test.wrapper.ActualTraceFactory;
import com.navercorp.pinpoint.profiler.util.JavaAssistUtils;
-import com.navercorp.pinpoint.test.util.AnnotationUtils;
-import com.navercorp.pinpoint.test.util.AssertionErrorBuilder;
-import com.navercorp.pinpoint.test.util.ThreadUtils;
-import com.navercorp.pinpoint.test.wrapper.ActualTrace;
-import com.navercorp.pinpoint.test.wrapper.ActualTraceFactory;
import java.io.PrintStream;
import java.lang.reflect.Constructor;
@@ -446,6 +447,7 @@ private void annotationCompare(int index, ResolvedExpectedTrace expected, Actual
verifySql(index, (ExpectedSql) expect, actualAnnotation);
} else if (expectedAnnotationKey == AnnotationKey.SQL_UID && expect instanceof ExpectedSql) {
verifySqlUid(index, (ExpectedSql) expect, actualAnnotation);
+ } else if(expect instanceof ExpectedNotNull) {
} else if (expect.getValue() instanceof DataType) {
verifyDataType(index, ((DataType) expect.getValue()), actualAnnotation);
} else {
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/ProjectPathResolver.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ProjectPathResolver.java
similarity index 98%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/ProjectPathResolver.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ProjectPathResolver.java
index bc7423719920..0175910ce830 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/ProjectPathResolver.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ProjectPathResolver.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2014 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/Recorder.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/Recorder.java
similarity index 91%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/Recorder.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/Recorder.java
index 6664c1a86887..30d0f69c3862 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/Recorder.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/Recorder.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import java.util.Iterator;
import java.util.Queue;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/RecorderAdaptor.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/RecorderAdaptor.java
similarity index 88%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/RecorderAdaptor.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/RecorderAdaptor.java
index b6e501ff445d..fa321ae366f9 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/RecorderAdaptor.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/RecorderAdaptor.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import java.util.Objects;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/ResolvedExpectedTrace.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ResolvedExpectedTrace.java
similarity index 96%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/ResolvedExpectedTrace.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ResolvedExpectedTrace.java
index 62430435bce4..40753ad9f6ed 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/ResolvedExpectedTrace.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/ResolvedExpectedTrace.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2021 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.bootstrap.plugin.test.ExpectedAnnotation;
import com.navercorp.pinpoint.bootstrap.plugin.test.ExpectedTraceField;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/SpanRecorder.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/SpanRecorder.java
similarity index 65%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/SpanRecorder.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/SpanRecorder.java
index 6d3a7732797c..8a083035d22e 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/SpanRecorder.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/SpanRecorder.java
@@ -1,4 +1,20 @@
-package com.navercorp.pinpoint.test;
+/*
+ * Copyright 2023 NAVER Corp.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.profiler.context.Span;
import com.navercorp.pinpoint.profiler.context.SpanChunk;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestAgentInformation.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestAgentInformation.java
similarity index 93%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/TestAgentInformation.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestAgentInformation.java
index 304b4372270d..978b503c45b4 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestAgentInformation.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestAgentInformation.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2015 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.common.Version;
import com.navercorp.pinpoint.common.trace.ServiceType;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestInterceptorRegistryBinder.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestInterceptorRegistryBinder.java
similarity index 76%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/TestInterceptorRegistryBinder.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestInterceptorRegistryBinder.java
index dd645dbf01a1..cf43858d5b4c 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestInterceptorRegistryBinder.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestInterceptorRegistryBinder.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2014 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.bootstrap.interceptor.registry.DefaultInterceptorRegistryAdaptor;
import com.navercorp.pinpoint.bootstrap.interceptor.registry.InterceptorRegistry;
@@ -27,19 +27,17 @@
* @author emeroad
*/
public class TestInterceptorRegistryBinder implements InterceptorRegistryBinder {
- private static final InterceptorRegistryAdaptor interceptorRegistryAdaptor = new DefaultInterceptorRegistryAdaptor();
-
private static final AtomicInteger LOCK_NUMBER = new AtomicInteger();
- private static final String lock = "TestRegistry-" + LOCK_NUMBER.getAndIncrement();
+ private final InterceptorRegistryAdaptor interceptorRegistryAdaptor = new DefaultInterceptorRegistryAdaptor();
+
+ private final String lock = "TestRegistry-" + LOCK_NUMBER.getAndIncrement();
@Override
public void bind() {
try {
- System.out.println("bind=" + lock);
InterceptorRegistry.bind(interceptorRegistryAdaptor, lock);
} catch (IllegalStateException e) {
- System.out.println("bind fail=" + lock);
e.printStackTrace();
}
}
@@ -47,10 +45,8 @@ public void bind() {
@Override
public void unbind() {
try {
- System.out.println("unbind=" + lock);
InterceptorRegistry.unbind(lock);
} catch (IllegalStateException e) {
- System.out.println("unbind fail=" + lock);
e.printStackTrace();
}
}
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestProfilerPluginClassInjector.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestProfilerPluginClassInjector.java
similarity index 92%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/TestProfilerPluginClassInjector.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestProfilerPluginClassInjector.java
index 64d08ab5dbdc..5661bbe5fe0c 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestProfilerPluginClassInjector.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestProfilerPluginClassInjector.java
@@ -1,10 +1,11 @@
/*
- * Copyright 2014 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
+ *
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -12,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.navercorp.pinpoint.exception.PinpointException;
import com.navercorp.pinpoint.profiler.instrument.classloading.ClassInjector;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestSpanStorageFactory.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestSpanStorageFactory.java
similarity index 92%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/TestSpanStorageFactory.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestSpanStorageFactory.java
index c5245bc47ede..2f3b22a24900 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestSpanStorageFactory.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestSpanStorageFactory.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.inject.Inject;
import com.navercorp.pinpoint.common.profiler.message.DataSender;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestTcpDataSender.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestTcpDataSender.java
similarity index 97%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/TestTcpDataSender.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestTcpDataSender.java
index af2932112be8..afe49af15910 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/TestTcpDataSender.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestTcpDataSender.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.navercorp.pinpoint.test;
+package com.navercorp.pinpoint.profiler.test;
import com.google.common.primitives.UnsignedBytes;
import com.navercorp.pinpoint.common.profiler.message.EnhancedDataSender;
@@ -23,8 +23,8 @@
import com.navercorp.pinpoint.profiler.metadata.SqlMetaData;
import com.navercorp.pinpoint.profiler.metadata.SqlUidMetaData;
import com.navercorp.pinpoint.profiler.metadata.StringMetaData;
-import com.navercorp.pinpoint.test.util.BiHashMap;
-import com.navercorp.pinpoint.test.util.Pair;
+import com.navercorp.pinpoint.profiler.test.util.BiHashMap;
+import com.navercorp.pinpoint.profiler.test.util.Pair;
import java.io.PrintStream;
import java.util.ArrayList;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/DefaultTranslator.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/DefaultTranslator.java
similarity index 96%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/DefaultTranslator.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/DefaultTranslator.java
index 3eef5efeaa96..37db964dadb6 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/DefaultTranslator.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/DefaultTranslator.java
@@ -1,28 +1,27 @@
/*
- * Copyright 2016 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
*/
-package com.navercorp.pinpoint.test.classloader;
+package com.navercorp.pinpoint.profiler.test.classloader;
import com.navercorp.pinpoint.bootstrap.instrument.matcher.ClassNameMatcher;
import com.navercorp.pinpoint.bootstrap.instrument.matcher.Matcher;
import com.navercorp.pinpoint.bootstrap.instrument.matcher.MultiClassNameMatcher;
import com.navercorp.pinpoint.profiler.plugin.MatchableClassFileTransformer;
import com.navercorp.pinpoint.profiler.util.JavaAssistUtils;
-import com.navercorp.pinpoint.test.util.BytecodeUtils;
+import com.navercorp.pinpoint.profiler.test.util.BytecodeUtils;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
@@ -132,6 +131,4 @@ private byte[] customTransformer(String jvmClassName) {
thread.setContextClassLoader(beforeClassLoader);
}
}
-
-
}
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/MockInstrumentor.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/MockInstrumentor.java
new file mode 100644
index 000000000000..52be1c1b2cf9
--- /dev/null
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/MockInstrumentor.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2016 NAVER Corp.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package com.navercorp.pinpoint.profiler.test.classloader;
+
+import com.navercorp.pinpoint.profiler.util.JavaAssistUtils;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+import java.lang.instrument.ClassFileTransformer;
+import java.util.Objects;
+
+/**
+ * @author Woonduk Kang(emeroad)
+ */
+public class MockInstrumentor {
+ private final Logger logger = LogManager.getLogger(this.getClass());
+ private final ClassLoader loader;
+ private final ClassFileTransformer dispatcher;
+
+ public MockInstrumentor(ClassLoader loader, ClassFileTransformer defaultTransformer) {
+ this.loader = loader;
+ this.dispatcher = Objects.requireNonNull(defaultTransformer, "defaultTransformer");
+ }
+
+ public byte[] transform(ClassLoader classLoader, String className, byte[] classfileBuffer) {
+ logger.debug("loading className:{}", className);
+ final String classInternalName = JavaAssistUtils.javaNameToJvmName(className);
+ try {
+ // Find Modifier from agent and try transforming
+ final byte[] transformBytes = dispatcher.transform(classLoader, classInternalName, null, null, classfileBuffer);
+ if (transformBytes != null) {
+ return transformBytes;
+ }
+ return null;
+ } catch (Throwable th) {
+ throw new RuntimeException(className + " transform fail", th);
+ }
+ }
+}
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassList.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassList.java
similarity index 84%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassList.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassList.java
index 132abbc31158..72b1dedf9dd6 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassList.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassList.java
@@ -1,21 +1,20 @@
/*
- * Copyright 2016 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
*/
-package com.navercorp.pinpoint.test.classloader;
+package com.navercorp.pinpoint.profiler.test.classloader;
import java.util.ArrayList;
import java.util.List;
@@ -37,8 +36,8 @@ public TestClassList() {
add("com.navercorp.pinpoint.test.MockApplicationContext");
add("com.navercorp.pinpoint.test.TBaseRecorder");
add("com.navercorp.pinpoint.test.TBaseRecorderAdaptor");
- add("com.navercorp.pinpoint.test.ListenableDataSender");
- add("com.navercorp.pinpoint.test.ListenableDataSender$Listener");
+ add("com.navercorp.pinpoint.profiler.test.ListenableDataSender");
+ add("com.navercorp.pinpoint.profiler.test.ListenableDataSender$Listener");
add("com.navercorp.pinpoint.test.ResettableServerMetaDataHolder");
add("com.navercorp.pinpoint.test.junit4.TestContext");
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassLoader.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassLoader.java
similarity index 84%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassLoader.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassLoader.java
index 56bffb02a893..3380271b11e7 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassLoader.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassLoader.java
@@ -1,21 +1,20 @@
/*
- * Copyright 2016 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
*/
-package com.navercorp.pinpoint.test.classloader;
+package com.navercorp.pinpoint.profiler.test.classloader;
import com.navercorp.pinpoint.bootstrap.config.ProfilerConfig;
import com.navercorp.pinpoint.bootstrap.instrument.InstrumentContext;
@@ -33,6 +32,7 @@
import com.navercorp.pinpoint.profiler.plugin.PluginInstrumentContext;
import com.navercorp.pinpoint.profiler.plugin.TransformCallbackProvider;
+import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -54,7 +54,22 @@ public class TestClassLoader extends TransformClassLoader {
private final ClassFileTransformerLoader classFileTransformerLoader;
private final InstrumentContext instrumentContext;
- public TestClassLoader(DefaultApplicationContext applicationContext) {
+ public TestClassLoader(DefaultApplicationContext applicationContext, URL[] urls) {
+ super(urls);
+ Objects.requireNonNull(applicationContext, "applicationContext");
+
+ this.applicationContext = applicationContext;
+ this.classFileTransformerLoader = new ClassFileTransformerLoader(applicationContext.getProfilerConfig(), applicationContext.getDynamicTransformTrigger());
+
+ ClassInjector classInjector = new DebugTransformerClassInjector();
+ this.instrumentContext = new PluginInstrumentContext(applicationContext.getProfilerConfig(), applicationContext.getInstrumentEngine(),
+ applicationContext.getDynamicTransformTrigger(), classInjector, classFileTransformerLoader);
+
+ this.delegateClass = new ArrayList<>();
+ }
+
+ public TestClassLoader(DefaultApplicationContext applicationContext, URL[] urls, ClassLoader parentClassLoader) {
+ super(urls, parentClassLoader);
Objects.requireNonNull(applicationContext, "applicationContext");
this.applicationContext = applicationContext;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassLoaderFactory.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassLoaderFactory.java
similarity index 72%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassLoaderFactory.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassLoaderFactory.java
index 59f5fe8df8cb..a768826c52b2 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TestClassLoaderFactory.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TestClassLoaderFactory.java
@@ -1,26 +1,27 @@
/*
- * Copyright 2016 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
*/
-package com.navercorp.pinpoint.test.classloader;
+package com.navercorp.pinpoint.profiler.test.classloader;
import com.navercorp.pinpoint.profiler.context.module.DefaultApplicationContext;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import java.net.URL;
+
/**
* @author hyungil.jeong
*/
@@ -28,8 +29,9 @@ public class TestClassLoaderFactory {
private static final Logger LOGGER = LogManager.getLogger(TestClassLoaderFactory.class);
- public static TestClassLoader createTestClassLoader(DefaultApplicationContext applicationContext) {
- final TestClassLoader testClassLoader = new TestClassLoader(applicationContext);
+ public static TestClassLoader createTestClassLoader(DefaultApplicationContext applicationContext, URL[] urls, ClassLoader parentClassLoader) {
+// final TestClassLoader testClassLoader = new TestClassLoader(applicationContext, urls, parentClassLoader);
+ final TestClassLoader testClassLoader = new TestClassLoader(applicationContext, urls);
return testClassLoader;
}
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TransformClassLoader.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TransformClassLoader.java
similarity index 75%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TransformClassLoader.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TransformClassLoader.java
index 2e7077b51c96..0d78bf627030 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/TransformClassLoader.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/TransformClassLoader.java
@@ -1,26 +1,29 @@
/*
- * Copyright 2016 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
*/
-package com.navercorp.pinpoint.test.classloader;
+package com.navercorp.pinpoint.profiler.test.classloader;
import com.navercorp.pinpoint.common.util.IOUtils;
+import com.navercorp.pinpoint.common.util.JvmUtils;
+import com.navercorp.pinpoint.common.util.JvmVersion;
import com.navercorp.pinpoint.profiler.util.JavaAssistUtils;
import java.io.InputStream;
+import java.net.URL;
+import java.net.URLClassLoader;
import java.security.AccessController;
import java.security.PrivilegedAction;
import java.security.ProtectionDomain;
@@ -36,7 +39,7 @@
*
* @author Woonduk Kang(emeroad)
*/
-public class TransformClassLoader extends ClassLoader {
+public class TransformClassLoader extends URLClassLoader {
static {
registerAsParallelCapable();
@@ -56,6 +59,7 @@ public Object run() {
private Translator translator;
private ProtectionDomain domain;
+ private String classLoaderName = getClass().getSimpleName();
/**
* Specifies the algorithm of class loading.
*
@@ -69,34 +73,33 @@ public Object run() {
*/
public boolean doDelegation = true;
- /**
- * Creates a new class loader.
- */
- public TransformClassLoader() {
- }
-
-
/**
* Creates a new class loader
* using the specified parent class loader for delegation.
*
* @param parent the parent class loader.
*/
- public TransformClassLoader(ClassLoader parent) {
- super(parent);
+ public TransformClassLoader(URL[] urls, ClassLoader parent) {
+ super(urls, parent);
+ init();
+ }
+
+ public TransformClassLoader(URL[] urls) {
+ super(urls);
init();
}
+
private void init() {
translator = null;
domain = null;
- delegateLoadingOf("com.navercorp.pinpoint.test.classloader.TransformClassLoader");
+ delegateLoadingOf("com.navercorp.pinpoint.profiler.test.classloader.TransformClassLoader");
}
/**
* Adds a translator, which is called whenever a class is loaded.
*
- * @param t a translator.
+ * @param t a translator.
*/
public void addTranslator(Translator t) {
translator = t;
@@ -114,8 +117,7 @@ public void addTranslator(Translator t) {
public void delegateLoadingOf(String classname) {
if (classname.endsWith(".")) {
notDefinedPackages.add(classname);
- }
- else {
+ } else {
notDefinedClass.add(classname);
}
}
@@ -209,8 +211,7 @@ protected Class> findClass(String name) throws ClassNotFoundException {
this.logger.fine("defineClass:" + name);
}
return defineClass(name, classfile, 0, classfile.length, DEFAULT_DOMAIN);
- }
- else {
+ } else {
if (logger.isLoggable(Level.FINE)) {
this.logger.fine("defineClass:" + name);
}
@@ -240,15 +241,41 @@ protected Class> loadClassByDelegation(String name)
}
private boolean isJdkPackage(String name) {
+ final JvmVersion version = JvmUtils.getVersion();
+ if (version.onOrAfter(JvmVersion.JAVA_9)) {
+ if (name.startsWith("javax.xml.bind")
+ || name.startsWith("javax.annotation")) {
+ return false;
+ }
+ }
+
+ if (name.startsWith("javax.jms")
+ || name.startsWith("javax.ws")) {
+ return false;
+ }
return name.startsWith("java.")
+ || name.startsWith("jdk.")
|| name.startsWith("javax.")
|| name.startsWith("sun.")
|| name.startsWith("com.sun.")
|| name.startsWith("org.w3c.")
- || name.startsWith("org.xml.");
+ || name.startsWith("org.xml.")
+ || name.startsWith("org.apache.logging.")
+ || name.startsWith("org.slf4j");
}
private boolean notDelegated(String name) {
+ if (name.startsWith("com.navercorp.pinpoint.profiler.")
+ || name.startsWith("com.navercorp.pinpoint.bootstrap")
+ || name.startsWith("com.navercorp.pinpoint.plugin")
+ ) {
+ return false;
+ }
+
+ if (name.startsWith("org.junit.jupiter")) {
+ return true;
+ }
+
if (notDefinedClass.contains(name)) {
return true;
}
@@ -270,4 +297,34 @@ protected Class> delegateToParent(String classname)
return findSystemClass(classname);
}
}
+
+ @Override
+ public URL getResource(String name) {
+ if (doDelegation) {
+ final String className = JavaAssistUtils.jvmNameToJavaName(name);
+ if (isJdkPackage(className) || notDelegated(className)) {
+ return super.getResource(name);
+ }
+ }
+
+ final URL url = findResource(name);
+ if (url != null) {
+ return url;
+ }
+ return super.getResource(name);
+ }
+
+// @Override
+// public Enumeration getResources(String name) throws IOException {
+// if (doDelegation) {
+// final String className = JavaAssistUtils.jvmNameToJavaName(name);
+// if (isJdkPackage(className) || notDelegated(className)) {
+// return super.getResources(name);
+// }
+// }
+// Enumeration[] tmp = (Enumeration[]) new Enumeration>[2];
+// tmp[0] = findResources(name);
+// tmp[1] = super.getResources(name);
+// return new CompoundEnumeration<>(tmp);
+// }
}
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/Translator.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/Translator.java
similarity index 85%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/Translator.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/Translator.java
index b235635b2e9e..d61812d85d4f 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/classloader/Translator.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/classloader/Translator.java
@@ -1,21 +1,20 @@
/*
- * Copyright 2016 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
*/
-package com.navercorp.pinpoint.test.classloader;
+package com.navercorp.pinpoint.profiler.test.classloader;
import com.navercorp.pinpoint.profiler.plugin.MatchableClassFileTransformer;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/BasePinpointTest.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/BasePinpointTest.java
similarity index 90%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/BasePinpointTest.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/BasePinpointTest.java
index f8c7e3f6f400..9a2733915625 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/BasePinpointTest.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/BasePinpointTest.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2018 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test.junit5;
+package com.navercorp.pinpoint.profiler.test.junit5;
import com.navercorp.pinpoint.bootstrap.context.ServerMetaData;
import com.navercorp.pinpoint.common.profiler.message.DataSender;
@@ -23,9 +23,9 @@
import com.navercorp.pinpoint.profiler.context.SpanEvent;
import com.navercorp.pinpoint.profiler.context.SpanType;
import com.navercorp.pinpoint.profiler.context.module.DefaultApplicationContext;
-import com.navercorp.pinpoint.test.ListenableDataSender;
-import com.navercorp.pinpoint.test.Recorder;
-import com.navercorp.pinpoint.test.SpanRecorder;
+import com.navercorp.pinpoint.profiler.test.ListenableDataSender;
+import com.navercorp.pinpoint.profiler.test.Recorder;
+import com.navercorp.pinpoint.profiler.test.SpanRecorder;
import java.util.List;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/IsRootSpan.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/IsRootSpan.java
similarity index 86%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/IsRootSpan.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/IsRootSpan.java
index abe6b6e3fbda..1a82eab102a4 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/IsRootSpan.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/IsRootSpan.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2014 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test.junit5;
+package com.navercorp.pinpoint.profiler.test.junit5;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/JunitAgentConfigPath.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/JunitAgentConfigPath.java
similarity index 86%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/JunitAgentConfigPath.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/JunitAgentConfigPath.java
index 7aa7911703bd..68e9dfdffe5d 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/JunitAgentConfigPath.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/JunitAgentConfigPath.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2020 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test.junit5;
+package com.navercorp.pinpoint.profiler.test.junit5;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/TestClassWrapper.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/TestClassWrapper.java
similarity index 89%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/TestClassWrapper.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/TestClassWrapper.java
index 735760968f00..25d8040d06df 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/TestClassWrapper.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/TestClassWrapper.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2020 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test.junit5;
+package com.navercorp.pinpoint.profiler.test.junit5;
/**
* @author Woonduk Kang(emeroad)
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/TestContext.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/TestContext.java
similarity index 87%
rename from profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/TestContext.java
rename to profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/TestContext.java
index 68bb3e49b6e9..3db7bdf5e21e 100644
--- a/profiler-test/src/main/java/com/navercorp/pinpoint/test/junit5/TestContext.java
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/junit5/TestContext.java
@@ -1,11 +1,11 @@
/*
- * Copyright 2014 NAVER Corp.
+ * Copyright 2023 NAVER Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -14,15 +14,15 @@
* limitations under the License.
*/
-package com.navercorp.pinpoint.test.junit5;
+package com.navercorp.pinpoint.profiler.test.junit5;
import com.navercorp.pinpoint.bootstrap.logging.PLoggerBinder;
import com.navercorp.pinpoint.bootstrap.logging.PLoggerFactory;
import com.navercorp.pinpoint.profiler.context.module.DefaultApplicationContext;
import com.navercorp.pinpoint.profiler.logging.Log4j2Binder;
-import com.navercorp.pinpoint.test.MockApplicationContextFactory;
-import com.navercorp.pinpoint.test.classloader.TestClassLoader;
-import com.navercorp.pinpoint.test.classloader.TestClassLoaderFactory;
+import com.navercorp.pinpoint.profiler.test.MockApplicationContextFactory;
+import com.navercorp.pinpoint.profiler.test.classloader.TestClassLoader;
+import com.navercorp.pinpoint.profiler.test.classloader.TestClassLoaderFactory;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -35,7 +35,7 @@
*/
public class TestContext implements Closeable {
- private static final String BASE_TEST_CLASS_NAME = "com.navercorp.pinpoint.test.junit5.BasePinpointTest";
+ private static final String BASE_TEST_CLASS_NAME = "com.navercorp.pinpoint.profiler.test.junit5.BasePinpointTest";
private final Logger logger = LogManager.getLogger(this.getClass());
@@ -50,7 +50,7 @@ public TestContext(TestClassWrapper testClassWrapper) {
this.testClassWrapper = testClassWrapper;
this.mockApplicationContext = createMockApplicationContext(testClassWrapper.getConfigPath());
this.mockApplicationContext.start();
- this.classLoader = TestClassLoaderFactory.createTestClassLoader(mockApplicationContext);
+ this.classLoader = TestClassLoaderFactory.createTestClassLoader(mockApplicationContext, null, null);
this.classLoader.initialize();
try {
this.baseTestClass = classLoader.loadClass(BASE_TEST_CLASS_NAME);
diff --git a/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/rpc/MockMessageConverter.java b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/rpc/MockMessageConverter.java
new file mode 100644
index 000000000000..6721231ebaab
--- /dev/null
+++ b/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/rpc/MockMessageConverter.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright 2023 NAVER Corp.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.navercorp.pinpoint.profiler.test.rpc;
+
+import com.google.inject.Inject;
+import com.navercorp.pinpoint.common.profiler.message.DefaultResultResponse;
+import com.navercorp.pinpoint.common.profiler.message.MessageConverter;
+import com.navercorp.pinpoint.common.profiler.message.ResultResponse;
+
+public class MockMessageConverter implements MessageConverter
+