mirror of
https://github.com/slhaf/Partner.git
synced 2026-05-12 16:53:04 +08:00
refactor(framework): mv interaction in-out flow into AgentInteractionAdapter
This commit is contained in:
@@ -9,9 +9,7 @@ public interface AgentGateway<I extends AgentInputData, O extends AgentOutputDat
|
|||||||
void launch();
|
void launch();
|
||||||
|
|
||||||
default void receive(I inputData) {
|
default void receive(I inputData) {
|
||||||
C finalInputData = adapter().parseInputData(inputData);
|
O outputData = adapter().submit(inputData);
|
||||||
C outputContext = adapter().call(finalInputData);
|
|
||||||
O outputData = adapter().parseOutputData(outputContext);
|
|
||||||
send(outputData);
|
send(outputData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,13 @@ import work.slhaf.partner.api.agent.runtime.interaction.flow.RunningFlowContext
|
|||||||
|
|
||||||
abstract class AgentInteractionAdapter<I : AgentInputData, O : AgentOutputData, C : RunningFlowContext> {
|
abstract class AgentInteractionAdapter<I : AgentInputData, O : AgentOutputData, C : RunningFlowContext> {
|
||||||
|
|
||||||
fun call(runningFlowContext: C): C = runBlocking {
|
fun submit(inputData: I): O {
|
||||||
|
val finalInputData: C = parseInputData(inputData)
|
||||||
|
val outputContext: C = call(finalInputData)
|
||||||
|
return parseOutputData(outputContext)
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun call(runningFlowContext: C): C = runBlocking {
|
||||||
val runningModules =
|
val runningModules =
|
||||||
mutableMapOf<Int, MutableList<ModuleContextData.Running<AbstractAgentModule.Running<RunningFlowContext>>>>()
|
mutableMapOf<Int, MutableList<ModuleContextData.Running<AbstractAgentModule.Running<RunningFlowContext>>>>()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user