package com.example.mina; import com.example.mina.client.ClientUtils; 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.ExperimentType; import com.example.mina.client.base.MatrixClient; import com.example.mina.client.base.MatrixConnectConfig; import com.example.mina.client.base.MatrixConstants; import com.example.mina.client.base.Mimo; import com.example.mina.client.base.StationPair; import com.example.mina.client.experiment.HandOverExperimentOptions; import java.time.ZoneId; import java.time.ZonedDateTime; import java.util.ArrayList; import java.util.List; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.ConfigurableApplicationContext; /** * @author 杜云山 * @date 2021/03/05 */ @SpringBootApplication public class Application { public static void main(String[] args) { // SpringApplication.run(Application.class, args); /*ConfigurableApplicationContext run = SpringApplication.run(Application.class, args); ClientManager clientManager = run.getBean(ClientManager.class); MatrixConnectConfig connectConfig = MatrixConnectConfig.builder() .deviceId("15") .deviceType("AEROFLEX") .host("127.0.0.1") .port(9100) .build(); MatrixClient client = clientManager.getOrCreateClient(connectConfig); client.setAttenuation(1,2,3, MatrixCommand.Type.AERO_ATTN_ALL_MAX); LockSupport.parkNanos(1000_000_000); client.setAttenuation(1,2,3, MatrixCommand.Type.AERO_SET_ATTN); LockSupport.parkNanos(1000_000_000); client.setAttenuation(1,2,3, MatrixCommand.Type.AERO_GET_ATTN); MatrixConnectConfig REC3000 = MatrixConnectConfig.builder() .deviceId("158") .deviceType(MatrixConstants.MATRIX_TYPE_REC3000) .host("127.0.0.1") .port(9099) .build(); MatrixClient REC3000Client = clientManager.getOrCreateClient(REC3000); REC3000Client.setAttenuation(1, 2, 3, null);*/ // //------------------------------Qrb测试 start-------------------------- // ConfigurableApplicationContext run = SpringApplication.run(Application.class, args); // // ClientManager clientManager = run.getBean(ClientManager.class); // // MatrixConnectConfig connectConfig = MatrixConnectConfig.builder() // .deviceId("15") // .deviceType(MatrixConstants.MATRIX_TYPE_QRB) // .host("127.0.0.1") // .port(9103) // .build(); // // MatrixClient client = clientManager.getOrCreateClient(connectConfig); // // // client.setAttenuation(1,2,3); //// LockSupport.parkNanos(1000_000_000); // //// client.setOffset(1, 2); //// client.getOffset(2); // LockSupport.parkNanos(1000_000_000); // //// client.setOffset(1,2); //// LockSupport.parkNanos(1000_000_000); // // //// client.setAttenuation(1,2,3, MatrixCommand.Type.AERO_GET_ATTN); // //------------------------------Qrb测试 end-------------------------- // MatrixConnectConfig REC3000 = MatrixConnectConfig.builder() // .deviceId("158") // .deviceType(MatrixConstants.MATRIX_TYPE_QRB) // .host("127.0.0.1") // .port(9099) // .build(); // // MatrixClient REC3000Client = clientManager.getOrCreateClient(REC3000); // // REC3000Client.setAttenuation(1, 2, 3, null); //------------------------------Qrb测试 start-------------------------- /*ConfigurableApplicationContext run = SpringApplication.run(Application.class, args); ClientManager clientManager = run.getBean(ClientManager.class); MatrixConnectConfig connectConfig = MatrixConnectConfig.builder() .deviceId("15") .deviceType(MatrixConstants.MATRIX_TYPE_RBM3000) .host("127.0.0.1") .port(9101) .build(); MatrixClient client = clientManager.getOrCreateClient(connectConfig); client.setAttenuation(1,2,3); LockSupport.parkNanos(1000_000_000);*/ // client.getAttenuation(3,null); // LockSupport.parkNanos(1000_000_000); //------------------------------Qrb测试 end-------------------------- ConfigurableApplicationContext run = SpringApplication.run(Application.class, args); ClientManager bean = run.getBean(ClientManager.class); ExperimentManager bean1 = run.getBean(ExperimentManager.class); MatrixConnectConfig connectConfig = MatrixConnectConfig.builder() .deviceId("15") .deviceType(MatrixConstants.MATRIX_TYPE_RBM3000) .host("127.0.0.1") .port(9101) .build(); HandOverExperimentOptions options = new HandOverExperimentOptions(); options.setMimo(Mimo.NO); List inList = new ArrayList<>(); inList.add(1); inList.add(2); StationPair pair1 = StationPair.builder().out(1).inList(inList).build(); List pairs = new ArrayList<>(); pairs.add(pair1); options.setPairs(pairs); options.setEndAttn(40); options.setStartAttn(0); options.setExperimentId(String.valueOf(1)); options.setExperimentType(ExperimentType.HAND_OVER); options.setFinishAt(ZonedDateTime.of(2021, 4, 8, 0, 0, 0, 0, ZoneId.systemDefault())); options.setIterations(1); options.setPause(1); options.setPeriod(10); options.setStep(5); MatrixClient orCreateClient = bean.getOrCreateClient(connectConfig); Experiment orCreateExperiment = bean1.getOrCreateExperiment(orCreateClient, options); bean1.startExperiment(orCreateExperiment.getExperimentId()); } }