Commit 1e38057c8e7d1e9ffe59e8d0e7b77c65e6a7045d
1 parent
d34c9d80
Exists in
develop
clientUtils
Showing
1 changed file
with
40 additions
and
0 deletions
Show diff stats
@@ -0,0 +1,40 @@ | @@ -0,0 +1,40 @@ | ||
1 | +package com.example.mina.client; | ||
2 | + | ||
3 | +import com.example.mina.client.base.ClientManager; | ||
4 | +import com.example.mina.client.base.Experiment; | ||
5 | +import com.example.mina.client.base.ExperimentManager; | ||
6 | +import com.example.mina.client.base.ExperimentOptions; | ||
7 | +import com.example.mina.client.base.MatrixClient; | ||
8 | +import com.example.mina.client.base.MatrixConnectConfig; | ||
9 | +import javax.annotation.PostConstruct; | ||
10 | +import lombok.AllArgsConstructor; | ||
11 | +import org.springframework.stereotype.Component; | ||
12 | + | ||
13 | +/** | ||
14 | + * @author BenJin Yin | ||
15 | + * @date 2021/4/6 | ||
16 | + */ | ||
17 | +@Component | ||
18 | +@AllArgsConstructor | ||
19 | +public class ClientUtils { | ||
20 | + private static ClientUtils SELF = null; | ||
21 | + private final ClientManager clientManager; | ||
22 | + private final ExperimentManager experimentManager; | ||
23 | + | ||
24 | + @PostConstruct | ||
25 | + void init() { | ||
26 | + SELF = this; | ||
27 | + } | ||
28 | + | ||
29 | + public static void start(MatrixConnectConfig connectConfig, ExperimentOptions options) { | ||
30 | + MatrixClient client = SELF.clientManager.getOrCreateClient(connectConfig); | ||
31 | + Experiment experiment = SELF.experimentManager.getOrCreateExperiment(client, options); | ||
32 | + experiment.start(); | ||
33 | + } | ||
34 | + | ||
35 | + public static void stop(String experimentId) { | ||
36 | + SELF.experimentManager.stopExperiment(experimentId); | ||
37 | + } | ||
38 | + | ||
39 | + | ||
40 | +} |