All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.cisco.trex.stateful.api.lowlevel.ASTFGlobalInfo Maven / Gradle / Ivy

package com.cisco.trex.stateful.api.lowlevel;

import com.google.gson.JsonObject;

/** Java implementation for TRex python sdk ASTFGlobalInfo class */
public class ASTFGlobalInfo implements ASTFGlobalInfoBase {
  private JsonObject scheduler = new JsonObject();
  private JsonObject ipv6 = new JsonObject();
  private JsonObject tcp = new JsonObject();
  private JsonObject ip = new JsonObject();

  @Override
  public ASTFGlobalInfo scheduler(SchedulerParam schedulerParam, int value) {
    scheduler.addProperty(schedulerParam.getType(), value);
    return this;
  }

  @Override
  public ASTFGlobalInfo ipv6(Ipv6Param ipv6Param, int value) {
    ipv6.addProperty(ipv6Param.getType(), value);
    return this;
  }

  @Override
  public ASTFGlobalInfo tcp(TcpParam tcpParam, int value) {
    tcp.addProperty(tcpParam.getType(), value);
    return this;
  }

  @Override
  public ASTFGlobalInfo ip(IpParam ipParam, int value) {
    ip.addProperty(ipParam.getType(), value);
    return this;
  }

  @Override
  public JsonObject toJson() {
    JsonObject json = new JsonObject();
    if (scheduler.size() != 0) {
      json.add("scheduler", this.scheduler);
    }
    if (ipv6.size() != 0) {
      json.add("ipv6", this.ipv6);
    }
    if (tcp.size() != 0) {
      json.add("tcp", this.tcp);
    }
    if (ip.size() != 0) {
      json.add("ip", this.ip);
    }
    return json;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy