Skip to content

Commit 97ac752

Browse files
committed
add global_config support and refactor model classes
Signed-off-by: Leo Ma <[email protected]>
1 parent f72e2fa commit 97ac752

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+141
-82
lines changed

src/e2e-test/java/com/cisco/trex/stateless/TRexClientBPFTest.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,14 @@
22

33
import static java.lang.Thread.sleep;
44

5+
import com.cisco.trex.model.Port;
6+
import com.cisco.trex.model.TRexClientResult;
7+
import com.cisco.trex.model.capture.CaptureInfo;
8+
import com.cisco.trex.model.capture.CaptureMonitor;
9+
import com.cisco.trex.model.capture.CapturedPackets;
10+
import com.cisco.trex.model.capture.CapturedPkt;
511
import com.cisco.trex.stateless.exception.TRexConnectionException;
612
import com.cisco.trex.stateless.exception.TRexTimeoutException;
7-
import com.cisco.trex.stateless.model.*;
8-
import com.cisco.trex.stateless.model.capture.*;
913
import java.util.*;
1014
import java.util.stream.Collectors;
1115
import org.junit.*;

src/e2e-test/java/com/cisco/trex/stateless/TRexClientTest.java

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,29 @@
22

33
import static java.lang.Thread.sleep;
44

5+
import com.cisco.trex.model.Ipv6Node;
6+
import com.cisco.trex.model.PortStatus;
7+
import com.cisco.trex.model.RPCResponse;
8+
import com.cisco.trex.stateless.model.Stream;
9+
import com.cisco.trex.stateless.model.StreamMode;
10+
import com.cisco.trex.stateless.model.StreamModeRate;
11+
import com.cisco.trex.stateless.model.StreamVM;
12+
import com.cisco.trex.model.StubResult;
13+
import com.cisco.trex.model.TRexClientResult;
14+
import com.cisco.trex.stateless.model.stats.ActivePGIds;
15+
import com.cisco.trex.model.stats.ExtendedPortStatistics;
16+
import com.cisco.trex.stateless.model.stats.FlowStat;
17+
import com.cisco.trex.stateless.model.stats.PGIdStatsRPCResult;
18+
import com.cisco.trex.model.stats.PortStatistics;
519
import com.cisco.trex.stateless.exception.ServiceModeRequiredException;
620
import com.cisco.trex.stateless.exception.TRexConnectionException;
721
import com.cisco.trex.stateless.exception.TRexTimeoutException;
8-
import com.cisco.trex.stateless.model.*;
9-
import com.cisco.trex.stateless.model.Port;
10-
import com.cisco.trex.stateless.model.capture.CaptureInfo;
11-
import com.cisco.trex.stateless.model.capture.CaptureMonitor;
12-
import com.cisco.trex.stateless.model.capture.CaptureMonitorStop;
13-
import com.cisco.trex.stateless.model.capture.CapturedPackets;
14-
import com.cisco.trex.stateless.model.port.PortVlan;
15-
import com.cisco.trex.stateless.model.stats.*;
22+
import com.cisco.trex.model.Port;
23+
import com.cisco.trex.model.capture.CaptureInfo;
24+
import com.cisco.trex.model.capture.CaptureMonitor;
25+
import com.cisco.trex.model.capture.CaptureMonitorStop;
26+
import com.cisco.trex.model.capture.CapturedPackets;
27+
import com.cisco.trex.model.port.PortVlan;
1628
import com.cisco.trex.stateless.model.vm.VMInstruction;
1729
import java.net.Inet4Address;
1830
import java.net.InetAddress;

src/main/java/com/cisco/trex/ClientBase.java

Lines changed: 39 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,24 @@
11
package com.cisco.trex;
22

3+
import com.cisco.trex.model.GlobalConfig;
34
import com.cisco.trex.stateless.TRexCommand;
45
import com.cisco.trex.stateless.TRexTransport;
56
import com.cisco.trex.stateless.exception.TRexConnectionException;
6-
import com.cisco.trex.stateless.model.L2Configuration;
7-
import com.cisco.trex.stateless.model.Port;
8-
import com.cisco.trex.stateless.model.PortStatus;
9-
import com.cisco.trex.stateless.model.RPCResponse;
10-
import com.cisco.trex.stateless.model.StubResult;
11-
import com.cisco.trex.stateless.model.SystemInfo;
12-
import com.cisco.trex.stateless.model.TRexClientResult;
13-
import com.cisco.trex.stateless.model.capture.CaptureInfo;
14-
import com.cisco.trex.stateless.model.capture.CaptureMonitor;
15-
import com.cisco.trex.stateless.model.capture.CaptureMonitorStop;
16-
import com.cisco.trex.stateless.model.capture.CapturedPackets;
17-
import com.cisco.trex.stateless.model.stats.ExtendedPortStatistics;
18-
import com.cisco.trex.stateless.model.stats.GlobalStatistics;
19-
import com.cisco.trex.stateless.model.stats.PortStatistics;
20-
import com.cisco.trex.stateless.model.stats.XstatsNames;
7+
import com.cisco.trex.model.L2Configuration;
8+
import com.cisco.trex.model.Port;
9+
import com.cisco.trex.model.PortStatus;
10+
import com.cisco.trex.model.RPCResponse;
11+
import com.cisco.trex.model.StubResult;
12+
import com.cisco.trex.model.SystemInfo;
13+
import com.cisco.trex.model.TRexClientResult;
14+
import com.cisco.trex.model.capture.CaptureInfo;
15+
import com.cisco.trex.model.capture.CaptureMonitor;
16+
import com.cisco.trex.model.capture.CaptureMonitorStop;
17+
import com.cisco.trex.model.capture.CapturedPackets;
18+
import com.cisco.trex.model.stats.ExtendedPortStatistics;
19+
import com.cisco.trex.model.stats.GlobalStatistics;
20+
import com.cisco.trex.model.stats.PortStatistics;
21+
import com.cisco.trex.model.stats.XstatsNames;
2122
import com.cisco.trex.stateless.util.DoubleAsIntDeserializer;
2223
import com.cisco.trex.util.Constants;
2324
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -548,6 +549,29 @@ public SystemInfo getSystemInfo() {
548549
return GSON.fromJson(getResultFromResponse(json), SystemInfo.class);
549550
}
550551

552+
/**
553+
* Get global configuration parameters
554+
*
555+
* @return GlobalConfig
556+
*/
557+
public TRexClientResult<GlobalConfig> getGlobalConfig(int portIdx) {
558+
Map<String, Object> payload = new HashMap<>();
559+
return callMethod("get_global_cfg", null, GlobalConfig.class);
560+
}
561+
562+
/**
563+
* Change global configuration parameter
564+
*
565+
* @param name parameter name
566+
* @param value parameter value in data types of dboule, boolean depending on the parameter type
567+
* @return StubResult
568+
*/
569+
public TRexClientResult<StubResult> setGlobalConfig(String name, Object value) {
570+
Map<String, Object> payload = new HashMap<>();
571+
payload.put(name, value);
572+
return callMethod("set_global_cfg", payload, StubResult.class);
573+
}
574+
551575
protected Map<String, Object> createPayload(int portIndex) {
552576
Map<String, Object> payload = new HashMap<>();
553577
payload.put(PORT_ID, portIndex);

src/main/java/com/cisco/trex/stateless/model/ApiVersionHandler.java renamed to src/main/java/com/cisco/trex/model/ApiVersionHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.cisco.trex.stateless.model;
1+
package com.cisco.trex.model;
22

33
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
44
import com.fasterxml.jackson.annotation.JsonProperty;
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package com.cisco.trex.model;
2+
3+
import com.fasterxml.jackson.annotation.JsonProperty;
4+
import java.util.HashMap;
5+
import java.util.Map;
6+
7+
/** Global configuration parameters */
8+
public class GlobalConfig extends HashMap<String, Object> {
9+
10+
public boolean getProcessAtCp() {
11+
return (boolean) get("process_at_cp");
12+
}
13+
14+
public double getSchedMaxStretch() {
15+
return (double) get("sched_max_stretch");
16+
}
17+
}

src/main/java/com/cisco/trex/stateless/model/Ipv6Node.java renamed to src/main/java/com/cisco/trex/model/Ipv6Node.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.cisco.trex.stateless.model;
1+
package com.cisco.trex.model;
22

33
public class Ipv6Node {
44
private String mac;

src/main/java/com/cisco/trex/stateless/model/L2Configuration.java renamed to src/main/java/com/cisco/trex/model/L2Configuration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.cisco.trex.stateless.model;
1+
package com.cisco.trex.model;
22

33
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
44
import com.fasterxml.jackson.annotation.JsonProperty;

src/main/java/com/cisco/trex/stateless/model/L3Configuration.java renamed to src/main/java/com/cisco/trex/model/L3Configuration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.cisco.trex.stateless.model;
1+
package com.cisco.trex.model;
22

33
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
44
import com.fasterxml.jackson.annotation.JsonProperty;

src/main/java/com/cisco/trex/stateless/model/LayerConfigurationMode.java renamed to src/main/java/com/cisco/trex/model/LayerConfigurationMode.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.cisco.trex.stateless.model;
1+
package com.cisco.trex.model;
22

33
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
44
import com.fasterxml.jackson.annotation.JsonProperty;

src/main/java/com/cisco/trex/stateless/model/Port.java renamed to src/main/java/com/cisco/trex/model/Port.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.cisco.trex.stateless.model;
1+
package com.cisco.trex.model;
22

33
import java.util.List;
44

0 commit comments

Comments
 (0)