mirror of
https://github.com/slhaf/Partner.git
synced 2026-05-12 08:43:02 +08:00
需继续为上层模块构建注册体系以适应完整的加载逻辑。
- 移除了 BaseCoordinateManager 抽象类,而是添加了 @CoordinateManager 注解 - 移除了 CapabilityHolder 抽象类,换成 @CapabilityHolder 注解 - 新增了适应新注册机制的部分类,仍需进一步推进
This commit is contained in:
@@ -3,7 +3,7 @@ package work.slhaf.partner.common.exception_handler.pojo;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCore;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.core.session.SessionManager;
|
||||
|
||||
@@ -20,7 +20,7 @@ public class GlobalException extends RuntimeException {
|
||||
this.data = new GlobalExceptionData();
|
||||
this.data.setExceptionTime(System.currentTimeMillis());
|
||||
this.data.setSessionManager(SessionManager.getInstance());
|
||||
this.data.setCognationManager(CognationManager.getInstance());
|
||||
this.data.setCognationCore(CognationCore.getInstance());
|
||||
this.data.setContext(InteractionContext.getInstance());
|
||||
} catch (Exception e) {
|
||||
log.error("[GlobalException] 捕获异常, 获取数据失败");
|
||||
|
||||
@@ -3,7 +3,7 @@ package work.slhaf.partner.common.exception_handler.pojo;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import work.slhaf.partner.common.serialize.PersistableObject;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCore;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.core.session.SessionManager;
|
||||
|
||||
@@ -21,6 +21,6 @@ public class GlobalExceptionData extends PersistableObject {
|
||||
|
||||
protected HashMap<String, InteractionContext> context;
|
||||
protected SessionManager sessionManager;
|
||||
protected CognationManager cognationManager;
|
||||
protected CognationCore cognationCore;
|
||||
protected Long exceptionTime;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@ package work.slhaf.partner.core;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.api.capability.CapabilityRegisterFactory;
|
||||
import work.slhaf.partner.common.exception_handler.GlobalExceptionHandler;
|
||||
import work.slhaf.partner.common.exception_handler.pojo.GlobalException;
|
||||
import work.slhaf.partner.core.interaction.agent_interface.TaskCallback;
|
||||
@@ -33,7 +32,6 @@ public class InteractionHub {
|
||||
interactionHub = new InteractionHub();
|
||||
//加载模块
|
||||
interactionHub.setInteractionModules(InteractionModulesLoader.getInstance().registerInteractionModules());
|
||||
CapabilityRegisterFactory.getInstance().registerCapabilities("work.slhaf.partner");
|
||||
log.info("InteractionHub注册完毕...");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
package work.slhaf.partner.core.cognation;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.api.capability.BaseCoordinateManager;
|
||||
import work.slhaf.partner.api.capability.annotation.CoordinateManager;
|
||||
import work.slhaf.partner.api.capability.annotation.Coordinated;
|
||||
import work.slhaf.partner.common.chat.constant.ChatConstant;
|
||||
import work.slhaf.partner.common.exception_handler.GlobalExceptionHandler;
|
||||
@@ -28,15 +27,15 @@ import java.util.concurrent.locks.ReentrantLock;
|
||||
|
||||
import static work.slhaf.partner.common.util.ExtractUtil.extractUserId;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@Slf4j
|
||||
public class CognationManager extends BaseCoordinateManager implements Serializable {
|
||||
@CoordinateManager
|
||||
public class CoordinatedManager implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private static volatile CognationManager cognationManager;
|
||||
private static volatile CoordinatedManager coordinatedManager;
|
||||
private final Lock sliceInsertLock = new ReentrantLock();
|
||||
|
||||
private CognationCore cognationCore;
|
||||
@@ -45,22 +44,22 @@ public class CognationManager extends BaseCoordinateManager implements Serializa
|
||||
private PerceiveCore perceiveCore;
|
||||
private DispatchCore dispatchCore;
|
||||
|
||||
private CognationManager() {
|
||||
private CoordinatedManager() {
|
||||
}
|
||||
|
||||
|
||||
public static CognationManager getInstance() throws IOException, ClassNotFoundException {
|
||||
if (cognationManager == null) {
|
||||
synchronized (CognationManager.class) {
|
||||
if (cognationManager == null) {
|
||||
cognationManager = new CognationManager();
|
||||
cognationManager.setCognationCore(CognationCore.getInstance());
|
||||
cognationManager.setCores();
|
||||
log.info("[CognationManager] MemoryManager注册完毕...");
|
||||
public static CoordinatedManager getInstance() throws IOException, ClassNotFoundException {
|
||||
if (coordinatedManager == null) {
|
||||
synchronized (CoordinatedManager.class) {
|
||||
if (coordinatedManager == null) {
|
||||
coordinatedManager = new CoordinatedManager();
|
||||
coordinatedManager.setCognationCore(CognationCore.getInstance());
|
||||
coordinatedManager.setCores();
|
||||
log.info("[CoordinatedManager] MemoryManager注册完毕...");
|
||||
}
|
||||
}
|
||||
}
|
||||
return cognationManager;
|
||||
return coordinatedManager;
|
||||
}
|
||||
|
||||
private void setCores() {
|
||||
@@ -88,9 +87,9 @@ public class CognationManager extends BaseCoordinateManager implements Serializa
|
||||
//尝试更新缓存
|
||||
cacheCore.updateCache(topicPath, memoryResult);
|
||||
} catch (Exception e) {
|
||||
log.error("[CognationManager] selectMemory error: ", e);
|
||||
log.error("[CognationManager] 路径: {}", topicPathStr);
|
||||
log.error("[CognationManager] 主题树: {}", memoryCore.getTopicTree());
|
||||
log.error("[CoordinatedManager] selectMemory error: ", e);
|
||||
log.error("[CoordinatedManager] 路径: {}", topicPathStr);
|
||||
log.error("[CoordinatedManager] 主题树: {}", memoryCore.getTopicTree());
|
||||
memoryResult = new MemoryResult();
|
||||
memoryResult.setRelatedMemorySliceResult(new ArrayList<>());
|
||||
memoryResult.setMemorySliceResult(new CopyOnWriteArrayList<>());
|
||||
@@ -131,10 +130,10 @@ public class CognationManager extends BaseCoordinateManager implements Serializa
|
||||
cacheCore.updateUserDialogMap(memorySlice);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("[CognationManager] 插入记忆时出错: ", e);
|
||||
log.error("[CoordinatedManager] 插入记忆时出错: ", e);
|
||||
GlobalExceptionHandler.writeExceptionState(new GlobalException("插入记忆时出错: " + e.getLocalizedMessage()));
|
||||
}
|
||||
log.debug("[CognationManager] 插入切片: {}, 路径: {}", memorySlice, topicPath);
|
||||
log.debug("[CoordinatedManager] 插入切片: {}, 路径: {}", memorySlice, topicPath);
|
||||
sliceInsertLock.unlock();
|
||||
}
|
||||
|
||||
@@ -62,6 +62,8 @@ public class CognationCore extends PersistableObject {
|
||||
|
||||
private void connectCores(CognationCore temp) {
|
||||
temp.setCacheCore(CacheCore.getInstance());
|
||||
temp.setMemoryCore(MemoryCore.getInstance());
|
||||
temp.setPerceiveCore(PerceiveCore.getInstance());
|
||||
}
|
||||
|
||||
private void setupHook(CognationCore temp) {
|
||||
@@ -138,7 +140,7 @@ public class CognationCore extends PersistableObject {
|
||||
|
||||
public void updateActivatedSlices(String userId, List<EvaluatedSlice> memorySlices) {
|
||||
activeData.updateActivatedSlices(userId, memorySlices);
|
||||
log.debug("[CognationManager] 已更新激活切片, userId: {}", userId);
|
||||
log.debug("[CoordinatedManager] 已更新激活切片, userId: {}", userId);
|
||||
}
|
||||
|
||||
public String getActivatedSlicesStr(String userId) {
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package work.slhaf.partner.core.cognation.submodule.cache;
|
||||
|
||||
import work.slhaf.partner.api.capability.annotation.Capability;
|
||||
import work.slhaf.partner.api.capability.annotation.CapabilityMethod;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.HashMap;
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package work.slhaf.partner.core.cognation.submodule.memory;
|
||||
|
||||
import work.slhaf.partner.api.capability.annotation.Capability;
|
||||
import work.slhaf.partner.api.capability.annotation.CapabilityMethod;
|
||||
import work.slhaf.partner.api.capability.annotation.ToCoordinated;
|
||||
import work.slhaf.partner.core.cognation.common.pojo.MemoryResult;
|
||||
import work.slhaf.partner.core.cognation.submodule.memory.pojo.MemorySlice;
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package work.slhaf.partner.core.cognation.submodule.perceive;
|
||||
|
||||
import work.slhaf.partner.api.capability.annotation.Capability;
|
||||
import work.slhaf.partner.api.capability.annotation.CapabilityMethod;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.pojo.User;
|
||||
|
||||
@Capability(value = "perceive")
|
||||
|
||||
@@ -14,7 +14,7 @@ import java.util.List;
|
||||
public interface ActivateModel {
|
||||
|
||||
default void modelSettings() {
|
||||
Model model = getModel();
|
||||
Model model = new Model();
|
||||
ModelConfig modelConfig = ModelConfig.load(modelKey());
|
||||
model.setBaseMessages(withAwareness() ? ResourcesUtil.Prompt.loadPromptWithSelfAwareness(modelKey(), promptModule()) : ResourcesUtil.Prompt.loadPrompt(modelKey(), promptModule()));
|
||||
model.setChatClient(new ChatClient(modelConfig.getBaseUrl(), modelConfig.getApikey(), modelConfig.getModel()));
|
||||
|
||||
@@ -2,17 +2,12 @@ package work.slhaf.partner.module.common.model;
|
||||
|
||||
import lombok.Data;
|
||||
import work.slhaf.partner.common.chat.ChatClient;
|
||||
import work.slhaf.partner.common.chat.constant.ChatConstant;
|
||||
import work.slhaf.partner.common.chat.pojo.ChatResponse;
|
||||
import work.slhaf.partner.common.chat.pojo.Message;
|
||||
import work.slhaf.partner.common.config.ModelConfig;
|
||||
import work.slhaf.partner.common.util.ResourcesUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public abstract class Model {
|
||||
public class Model {
|
||||
|
||||
protected ChatClient chatClient;
|
||||
protected List<Message> chatMessages;
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
package work.slhaf.partner.module.common.module;
|
||||
|
||||
import work.slhaf.partner.core.interaction.module.InteractionFlow;
|
||||
|
||||
public abstract class CoreModule extends InteractionModule {
|
||||
|
||||
}
|
||||
|
||||
@@ -2,10 +2,11 @@ package work.slhaf.partner.module.common.module;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import work.slhaf.partner.api.capability.module.CapabilityHolder;
|
||||
import work.slhaf.partner.api.capability.annotation.CapabilityHolder;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
|
||||
public abstract class Module extends CapabilityHolder {
|
||||
@CapabilityHolder
|
||||
public abstract class Module {
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package work.slhaf.partner.module.common.module;
|
||||
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.core.interaction.module.InteractionFlow;
|
||||
import work.slhaf.partner.module.common.entity.AppendPromptData;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
@@ -5,7 +5,6 @@ import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.api.capability.annotation.InjectCapability;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCapability;
|
||||
import work.slhaf.partner.core.cognation.common.pojo.MemoryResult;
|
||||
import work.slhaf.partner.core.cognation.submodule.cache.CacheCapability;
|
||||
|
||||
@@ -10,14 +10,12 @@ import work.slhaf.partner.common.chat.pojo.Message;
|
||||
import work.slhaf.partner.common.chat.pojo.MetaMessage;
|
||||
import work.slhaf.partner.common.exception_handler.GlobalExceptionHandler;
|
||||
import work.slhaf.partner.common.exception_handler.pojo.GlobalException;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.memory.MemoryCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.memory.pojo.EvaluatedSlice;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.core.session.SessionManager;
|
||||
import work.slhaf.partner.module.common.model.ActivateModel;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
import work.slhaf.partner.module.common.model.ModelConstant;
|
||||
import work.slhaf.partner.module.common.module.SubModule;
|
||||
import work.slhaf.partner.module.modules.memory.selector.extractor.data.ExtractorInput;
|
||||
|
||||
@@ -8,14 +8,12 @@ import work.slhaf.partner.api.capability.annotation.InjectCapability;
|
||||
import work.slhaf.partner.common.chat.constant.ChatConstant;
|
||||
import work.slhaf.partner.common.chat.pojo.Message;
|
||||
import work.slhaf.partner.common.thread.InteractionThreadPoolExecutor;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.cache.CacheCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.memory.MemoryCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.memory.pojo.MemorySlice;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.PerceiveCapability;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.core.interaction.module.InteractionFlow;
|
||||
import work.slhaf.partner.core.session.SessionManager;
|
||||
import work.slhaf.partner.module.common.module.PostModule;
|
||||
import work.slhaf.partner.module.modules.memory.selector.extractor.MemorySelectExtractor;
|
||||
|
||||
@@ -7,7 +7,6 @@ import lombok.EqualsAndHashCode;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.common.chat.pojo.ChatResponse;
|
||||
import work.slhaf.partner.module.common.model.ActivateModel;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
import work.slhaf.partner.module.common.model.ModelConstant;
|
||||
import work.slhaf.partner.module.common.module.SubModule;
|
||||
import work.slhaf.partner.module.modules.memory.updater.summarizer.data.SummarizeInput;
|
||||
|
||||
@@ -9,7 +9,6 @@ import work.slhaf.partner.common.chat.pojo.ChatResponse;
|
||||
import work.slhaf.partner.common.chat.pojo.Message;
|
||||
import work.slhaf.partner.common.thread.InteractionThreadPoolExecutor;
|
||||
import work.slhaf.partner.module.common.model.ActivateModel;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
import work.slhaf.partner.module.common.model.ModelConstant;
|
||||
import work.slhaf.partner.module.common.module.SubModule;
|
||||
|
||||
|
||||
@@ -7,7 +7,6 @@ import lombok.EqualsAndHashCode;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.common.chat.pojo.ChatResponse;
|
||||
import work.slhaf.partner.module.common.model.ActivateModel;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
import work.slhaf.partner.module.common.model.ModelConstant;
|
||||
import work.slhaf.partner.module.common.module.SubModule;
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@ package work.slhaf.partner.module.modules.perceive.selector;
|
||||
import lombok.Setter;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.api.capability.annotation.InjectCapability;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.PerceiveCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.pojo.User;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
|
||||
@@ -5,14 +5,10 @@ import lombok.EqualsAndHashCode;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.api.capability.annotation.InjectCapability;
|
||||
import work.slhaf.partner.common.thread.InteractionThreadPoolExecutor;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.PerceiveCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.pojo.User;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.core.interaction.module.InteractionFlow;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
import work.slhaf.partner.module.common.model.ModelConstant;
|
||||
import work.slhaf.partner.module.common.module.PostModule;
|
||||
import work.slhaf.partner.module.modules.perceive.updater.relation_extractor.RelationExtractor;
|
||||
import work.slhaf.partner.module.modules.perceive.updater.relation_extractor.pojo.RelationExtractResult;
|
||||
|
||||
@@ -5,13 +5,11 @@ import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import work.slhaf.partner.common.chat.pojo.ChatResponse;
|
||||
import work.slhaf.partner.common.chat.pojo.Message;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.PerceiveCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.pojo.User;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.module.common.model.ActivateModel;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
import work.slhaf.partner.module.common.model.ModelConstant;
|
||||
import work.slhaf.partner.module.common.module.SubModule;
|
||||
import work.slhaf.partner.module.modules.perceive.updater.relation_extractor.pojo.RelationExtractInput;
|
||||
|
||||
@@ -6,12 +6,10 @@ import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import work.slhaf.partner.api.capability.annotation.InjectCapability;
|
||||
import work.slhaf.partner.common.chat.pojo.ChatResponse;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.PerceiveCapability;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.module.common.model.ActivateModel;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
import work.slhaf.partner.module.common.model.ModelConstant;
|
||||
import work.slhaf.partner.module.common.module.SubModule;
|
||||
import work.slhaf.partner.module.modules.perceive.updater.static_extractor.data.StaticMemoryExtractInput;
|
||||
|
||||
@@ -4,10 +4,8 @@ import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.api.capability.annotation.InjectCapability;
|
||||
import work.slhaf.partner.core.cognation.CognationManager;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCapability;
|
||||
import work.slhaf.partner.core.interaction.data.context.InteractionContext;
|
||||
import work.slhaf.partner.core.interaction.module.InteractionFlow;
|
||||
import work.slhaf.partner.module.common.module.PostModule;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
package work.slhaf.partner.module.modules.process;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import work.slhaf.partner.api.capability.annotation.CapabilityHolder;
|
||||
import work.slhaf.partner.api.capability.annotation.InjectCapability;
|
||||
import work.slhaf.partner.api.capability.module.CapabilityHolder;
|
||||
import work.slhaf.partner.core.cognation.cognation.CognationCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.PerceiveCapability;
|
||||
import work.slhaf.partner.core.cognation.submodule.perceive.pojo.User;
|
||||
@@ -18,10 +17,10 @@ import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.HashMap;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@Slf4j
|
||||
public class PreprocessExecutor extends CapabilityHolder {
|
||||
@CapabilityHolder
|
||||
public class PreprocessExecutor {
|
||||
|
||||
private static volatile PreprocessExecutor preprocessExecutor;
|
||||
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
package work.slhaf.partner.module.modules.task;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import work.slhaf.partner.module.common.model.Model;
|
||||
import work.slhaf.partner.module.common.model.ModelConstant;
|
||||
|
||||
@Data
|
||||
public class TaskEvaluator {
|
||||
|
||||
Reference in New Issue
Block a user