diff --git a/pom.xml b/pom.xml
index 63f4b5a..5e610a7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,25 +6,12 @@
com.imyeyu.inject
timi-inject
- 0.0.1
+ 0.0.1-legacy
- 21
- 21
+ 8
+ 8
UTF-8
true
-
-
-
- com.imyeyu.io
- timi-io
- 0.0.1
-
-
- ch.qos.logback
- logback-classic
- 1.5.13
-
-
diff --git a/src/main/java/com/imyeyu/inject/CallbackArg.java b/src/main/java/com/imyeyu/inject/CallbackArg.java
new file mode 100644
index 0000000..bed3c3a
--- /dev/null
+++ b/src/main/java/com/imyeyu/inject/CallbackArg.java
@@ -0,0 +1,10 @@
+package com.imyeyu.inject;
+
+/**
+ * @author 夜雨
+ * @since 2025-07-23 22:50
+ */
+public interface CallbackArg {
+
+ void handler(T t);
+}
diff --git a/src/main/java/com/imyeyu/inject/InjectApp.java b/src/main/java/com/imyeyu/inject/InjectApp.java
index 0619d45..65bf275 100644
--- a/src/main/java/com/imyeyu/inject/InjectApp.java
+++ b/src/main/java/com/imyeyu/inject/InjectApp.java
@@ -1,7 +1,5 @@
package com.imyeyu.inject;
-import com.imyeyu.java.bean.CallbackArg;
-
import java.util.ArrayList;
import java.util.List;
@@ -17,8 +15,6 @@ public final class InjectApp {
TimiInject injector;
- boolean enableBanner = true;
-
/** 全局注入后监听,包括静态注入 */
final List> afterInjectCallbackList = new ArrayList<>();
@@ -31,11 +27,6 @@ public final class InjectApp {
this.clazz = clazz;
}
- public InjectApp disableBanner() {
- enableBanner = false;
- return this;
- }
-
public TimiInject injector() {
return injector;
}
@@ -57,12 +48,4 @@ public final class InjectApp {
public synchronized void removeAfterInjectListener(CallbackArg listener) {
afterInjectCallbackList.remove(listener);
}
-
- public boolean isEnableBanner() {
- return enableBanner;
- }
-
- public void setEnableBanner(boolean enableBanner) {
- this.enableBanner = enableBanner;
- }
}
diff --git a/src/main/java/com/imyeyu/inject/TimiInject.java b/src/main/java/com/imyeyu/inject/TimiInject.java
index bcd0cb8..f5b2da5 100644
--- a/src/main/java/com/imyeyu/inject/TimiInject.java
+++ b/src/main/java/com/imyeyu/inject/TimiInject.java
@@ -15,12 +15,6 @@ import com.imyeyu.inject.annotation.SuperIOC;
import com.imyeyu.inject.annotation.SuperInject;
import com.imyeyu.inject.annotation.TimiInjectApplication;
import com.imyeyu.inject.annotation.Util;
-import com.imyeyu.io.IO;
-import com.imyeyu.java.TimiJava;
-import com.imyeyu.java.bean.CallbackArg;
-import com.imyeyu.utils.Time;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.IOException;
@@ -31,6 +25,7 @@ import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.net.URI;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collection;
import java.util.Comparator;
import java.util.Enumeration;
@@ -49,9 +44,6 @@ import java.util.jar.JarFile;
*/
public class TimiInject implements InjectFactory {
- /** 日志 */
- private static final Logger log = LoggerFactory.getLogger(TimiInject.class);
-
/** 类路径 */
private final List paths;
@@ -79,21 +71,13 @@ public class TimiInject implements InjectFactory {
private final Object iocAsyncLock = new Object();
private TimiInject(InjectApp app) {
- if (TimiJava.isEmpty(app)) {
- throw new NullPointerException("empty inject app");
+ if (app == null) {
+ throw new NullPointerException("not found inject app");
}
app.injector = this;
// 初始化
- long initAt = Time.now();
- // Logo
- if (app.enableBanner) {
- if (IO.resourceExist(getClass(), "banner.txt")) {
- log.info(IO.resourceToString(getClass(), "banner.txt"));
- } else {
- log.info(IO.resourceToString(getClass(), "defBanner.txt"));
- }
- }
- log.info("Starting TimiInject {} ..", app.clazz);
+ long initAt = System.currentTimeMillis();
+ System.out.printf("Starting TimiInject %s ..%n", app.clazz);
List scanPathList = new ArrayList<>();
objects = new HashMap<>();
iocListeners = new HashMap<>();
@@ -104,18 +88,18 @@ public class TimiInject implements InjectFactory {
classes = new ArrayList<>();
try {
// 扫描
- long scanAt = Time.now();
+ long scanAt = System.currentTimeMillis();
{
// 扫描包
- log.info("Scanning..");
+ System.out.println("Scanning..");
TimiInjectApplication appAnnotation = app.clazz.getAnnotation(TimiInjectApplication.class);
if (appAnnotation == null) {
throw new NullPointerException("TimiInjectApplication can not be null, used annotation for scanner class");
}
- if (TimiJava.isEmpty(appAnnotation.value())) {
- scanPathList.add(app.clazz.getPackageName());
+ if (appAnnotation.value() == null || appAnnotation.value().length == 0) {
+ scanPathList.add(app.clazz.getPackage().getName());
} else {
- scanPathList.addAll(List.of(appAnnotation.value()));
+ scanPathList.addAll(Arrays.asList(appAnnotation.value()));
}
// 扫描类
URI baseURI = app.clazz.getProtectionDomain().getCodeSource().getLocation().toURI();
@@ -125,8 +109,8 @@ public class TimiInject implements InjectFactory {
}
}
// 控制反转
- log.info("Running IOC..");
- long iocAt = Time.now();
+ System.out.println("Running IOC..");
+ long iocAt = System.currentTimeMillis();
{
// Application IOC
if (app.obj != null) {
@@ -173,7 +157,7 @@ public class TimiInject implements InjectFactory {
newInstance(iocClass);
}
} catch (Exception e) {
- throw new RuntimeException("IOC fail id: %s, class: %s".formatted(iocClass.id, iocClass.clazz), e);
+ throw new RuntimeException(String.format("IOC fail id: %s, class: %s", iocClass.id, iocClass.clazz), e);
}
}
if (hasAsyncIOC && iocAsyncRunning != 0) {
@@ -184,8 +168,8 @@ public class TimiInject implements InjectFactory {
}
}
// 依赖注入
- log.info("Running inject..");
- long injectAt = Time.now();
+ System.out.println("Running inject..");
+ long injectAt = System.currentTimeMillis();
{
Collection