ClientUtils.java
1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
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);
}
}