diff --git a/src/main/java/com/example/mina/client/ClientUtils.java b/src/main/java/com/example/mina/client/ClientUtils.java new file mode 100644 index 0000000..1354528 --- /dev/null +++ b/src/main/java/com/example/mina/client/ClientUtils.java @@ -0,0 +1,40 @@ +package com.example.mina.client; + +import com.example.mina.client.base.ClientManager; +import com.example.mina.client.base.Experiment; +import com.example.mina.client.base.ExperimentManager; +import com.example.mina.client.base.ExperimentOptions; +import com.example.mina.client.base.MatrixClient; +import com.example.mina.client.base.MatrixConnectConfig; +import javax.annotation.PostConstruct; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; + +/** + * @author BenJin Yin + * @date 2021/4/6 + */ +@Component +@AllArgsConstructor +public class ClientUtils { + private static ClientUtils SELF = null; + private final ClientManager clientManager; + private final ExperimentManager experimentManager; + + @PostConstruct + void init() { + SELF = this; + } + + public static void start(MatrixConnectConfig connectConfig, ExperimentOptions options) { + MatrixClient client = SELF.clientManager.getOrCreateClient(connectConfig); + Experiment experiment = SELF.experimentManager.getOrCreateExperiment(client, options); + experiment.start(); + } + + public static void stop(String experimentId) { + SELF.experimentManager.stopExperiment(experimentId); + } + + +} -- libgit2 0.21.2