package org.zstack.network.service.virtualrouter;
import org.zstack.network.service.vip.VipInventory;
import org.zstack.network.service.virtualrouter.eip.EipTO;
import org.zstack.network.service.virtualrouter.portforwarding.PortForwardingRuleTO;
import org.zstack.utils.gson.JSONObjectUtil;
import java.util.ArrayList;
import java.util.List;
public class VirtualRouterCommands {
public static class AgentCommand {
}
public static class AgentResponse {
private boolean success = true;
private String error;
public boolean isSuccess() {
return success;
}
public void setSuccess(boolean success) {
this.success = success;
}
public String getError() {
return error;
}
public void setError(String error) {
this.error = error;
}
}
public static class InitCommand extends AgentCommand {
private String uuid;
private int restartDnsmasqAfterNumberOfSIGUSER1;
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
public int getRestartDnsmasqAfterNumberOfSIGUSER1() {
return restartDnsmasqAfterNumberOfSIGUSER1;
}
public void setRestartDnsmasqAfterNumberOfSIGUSER1(int restartDnsmasqAfterNumberOfSIGUSER1) {
this.restartDnsmasqAfterNumberOfSIGUSER1 = restartDnsmasqAfterNumberOfSIGUSER1;
}
}
public static class InitRsp extends AgentResponse {
}
public static class NicInfo {
private String ip;
private String mac;
private String gateway;
private String netmask;
private boolean isDefaultRoute;
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public String getMac() {
return mac;
}
public void setMac(String mac) {
this.mac = mac;
}
public String getGateway() {
return gateway;
}
public void setGateway(String gateway) {
this.gateway = gateway;
}
public String getNetmask() {
return netmask;
}
public void setNetmask(String netmask) {
this.netmask = netmask;
}
public boolean isDefaultRoute() {
return isDefaultRoute;
}
public void setDefaultRoute(boolean isDefaultRoute) {
this.isDefaultRoute = isDefaultRoute;
}
}
public static class ConfigureNicCmd extends AgentCommand {
private List<NicInfo> nics;
public List<NicInfo> getNics() {
return nics;
}
public void setNics(List<NicInfo> nics) {
this.nics = nics;
}
}
public static class ConfigureNicRsp extends AgentResponse {
}
public static class DhcpInfo {
private String ip;
private String mac;
private String netmask;
private String gateway;
private List<String> dns;
private String hostname;
private String vrNicMac;
private String dnsDomain;
private boolean isDefaultL3Network;
public String getDnsDomain() {
return dnsDomain;
}
public void setDnsDomain(String domain) {
this.dnsDomain = domain;
}
public boolean isDefaultL3Network() {
return isDefaultL3Network;
}
public void setDefaultL3Network(boolean isDefaultL3Network) {
this.isDefaultL3Network = isDefaultL3Network;
}
public String getVrNicMac() {
return vrNicMac;
}
public void setVrNicMac(String vrNicMac) {
this.vrNicMac = vrNicMac;
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public String getMac() {
return mac;
}
public void setMac(String mac) {
this.mac = mac;
}
public String getNetmask() {
return netmask;
}
public void setNetmask(String netmask) {
this.netmask = netmask;
}
public String getGateway() {
return gateway;
}
public void setGateway(String gateway) {
this.gateway = gateway;
}
public List<String> getDns() {
return dns;
}
public void setDns(List<String> dns) {
this.dns = dns;
}
public String getHostname() {
return hostname;
}
public void setHostname(String hostname) {
this.hostname = hostname;
}
}
public static class RemoveDhcpEntryCmd extends AgentCommand {
private List<DhcpInfo> dhcpEntries;
public List<DhcpInfo> getDhcpEntries() {
return dhcpEntries;
}
public void setDhcpEntries(List<DhcpInfo> dhcpEntries) {
this.dhcpEntries = dhcpEntries;
}
}
public static class RemoveDhcpEntryRsp extends AgentResponse {
}
public static class AddDhcpEntryCmd extends AgentCommand {
private List<DhcpInfo> dhcpEntries;
private boolean rebuild;
public List<DhcpInfo> getDhcpEntries() {
if (dhcpEntries == null) {
dhcpEntries = new ArrayList<DhcpInfo>();
}
return dhcpEntries;
}
public void setDhcpEntries(List<DhcpInfo> dhcpEntries) {
this.dhcpEntries = dhcpEntries;
}
public boolean isRebuild() {
return rebuild;
}
public void setRebuild(boolean rebuild) {
this.rebuild = rebuild;
}
}
public static class AddDhcpEntryRsp extends AgentResponse {
}
public static class SNATInfo {
private String publicNicMac;
private String publicIp;
private String privateNicMac;
private String privateNicIp;
private String snatNetmask;
public String getPrivateNicMac() {
return privateNicMac;
}
public void setPrivateNicMac(String nicMac) {
this.privateNicMac = nicMac;
}
public String getPrivateNicIp() {
return privateNicIp;
}
public void setPrivateNicIp(String nicIp) {
this.privateNicIp = nicIp;
}
public String getSnatNetmask() {
return snatNetmask;
}
public void setSnatNetmask(String snatNetmask) {
this.snatNetmask = snatNetmask;
}
public String getPublicNicMac() {
return publicNicMac;
}
public void setPublicNicMac(String publicNicMac) {
this.publicNicMac = publicNicMac;
}
public String getPublicIp() {
return publicIp;
}
public void setPublicIp(String publicIp) {
this.publicIp = publicIp;
}
}
public static class SyncSNATCmd extends AgentCommand {
private List<SNATInfo> snats;
public List<SNATInfo> getSnats() {
return snats;
}
public void setSnats(List<SNATInfo> snats) {
this.snats = snats;
}
}
public static class SyncSNATRsp extends AgentResponse {
}
public static class SetSNATCmd extends AgentCommand {
private SNATInfo snat;
public SNATInfo getSnat() {
return snat;
}
public void setSnat(SNATInfo snat) {
this.snat = snat;
}
}
public static class SetSNATRsp extends AgentResponse {
}
public static class RemoveSNATCmd extends AgentCommand {
private List<SNATInfo> natInfo;
public List<SNATInfo> getNatInfo() {
return natInfo;
}
public void setNatInfo(List<SNATInfo> natInfo) {
this.natInfo = natInfo;
}
}
public static class RemoveSNATRsp extends AgentResponse {
}
public static class SyncPortForwardingRuleCmd extends AgentCommand {
private List<PortForwardingRuleTO> rules;
public List<PortForwardingRuleTO> getRules() {
return rules;
}
public void setRules(List<PortForwardingRuleTO> rules) {
this.rules = rules;
}
}
public static class SyncPortForwardingRuleRsp extends AgentResponse {
}
public static class CreatePortForwardingRuleCmd extends AgentCommand {
private List<PortForwardingRuleTO> rules;
public List<PortForwardingRuleTO> getRules() {
return rules;
}
public void setRules(List<PortForwardingRuleTO> rules) {
this.rules = rules;
}
}
public static class CreatePortForwardingRuleRsp extends AgentResponse {
}
public static class RevokePortForwardingRuleCmd extends AgentCommand {
private List<PortForwardingRuleTO> rules;
public List<PortForwardingRuleTO> getRules() {
return rules;
}
public void setRules(List<PortForwardingRuleTO> rules) {
this.rules = rules;
}
}
public static class RevokePortForwardingRuleRsp extends AgentResponse {
}
public static class DnsInfo {
private String dnsAddress;
private String nicMac;
public String getNicMac() {
return nicMac;
}
public void setNicMac(String nicMac) {
this.nicMac = nicMac;
}
public String getDnsAddress() {
return dnsAddress;
}
public void setDnsAddress(String dnsAddress) {
this.dnsAddress = dnsAddress;
}
}
public static class SetDnsCmd extends AgentCommand {
private List<DnsInfo> dns;
public List<DnsInfo> getDns() {
return dns;
}
public void setDns(List<DnsInfo> dns) {
this.dns = dns;
}
}
public static class SetDnsRsp extends AgentResponse {
}
public static class RemoveDnsCmd extends AgentCommand {
private List<DnsInfo> dns;
public List<DnsInfo> getDns() {
return dns;
}
public void setDns(List<DnsInfo> dns) {
this.dns = dns;
}
}
public static class RemoveDnsRsp extends AgentResponse {
}
public static class CreateVipRsp extends AgentResponse {
}
public static class VipTO {
private String ip;
private String netmask;
private String gateway;
private String ownerEthernetMac;
public static VipTO valueOf(VipInventory inv, String ownerMac) {
VipTO to = new VipTO();
to.setIp(inv.getIp());
to.setNetmask(inv.getNetmask());
to.setGateway(inv.getGateway());
to.setOwnerEthernetMac(ownerMac);
return to;
}
@Override
public String toString() {
return JSONObjectUtil.toJsonString(this);
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public String getNetmask() {
return netmask;
}
public void setNetmask(String netmask) {
this.netmask = netmask;
}
public String getGateway() {
return gateway;
}
public void setGateway(String gateway) {
this.gateway = gateway;
}
public String getOwnerEthernetMac() {
return ownerEthernetMac;
}
public void setOwnerEthernetMac(String ownerEthernetMac) {
this.ownerEthernetMac = ownerEthernetMac;
}
}
public static class CreateVipCmd extends AgentCommand {
private List<VipTO> vips;
public List<VipTO> getVips() {
return vips;
}
public void setVips(List<VipTO> vips) {
this.vips = vips;
}
}
public static class RemoveVipCmd extends AgentCommand {
private List<VipTO> vips;
public List<VipTO> getVips() {
return vips;
}
public void setVips(List<VipTO> vips) {
this.vips = vips;
}
}
public static class RemoveVipRsp extends AgentResponse {
}
public static class CreateEipCmd extends AgentCommand {
private EipTO eip;
public EipTO getEip() {
return eip;
}
public void setEip(EipTO eip) {
this.eip = eip;
}
}
public static class CreateEipRsp extends AgentResponse {
}
public static class RemoveEipCmd extends AgentCommand {
private EipTO eip;
public EipTO getEip() {
return eip;
}
public void setEip(EipTO eip) {
this.eip = eip;
}
}
public static class RemoveEipRsp extends AgentResponse {
}
public static class SyncEipCmd extends AgentCommand {
private List<EipTO> eips;
public List<EipTO> getEips() {
return eips;
}
public void setEips(List<EipTO> eips) {
this.eips = eips;
}
}
public static class SyncEipRsp extends AgentResponse {
}
public static class PingCmd extends AgentCommand {
private String uuid;
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
}
public static class PingRsp extends AgentResponse {
private String uuid;
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
}
}