//
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
//
package com.cloud.agent.api.routing;
import com.cloud.agent.api.to.LoadBalancerTO;
import com.cloud.agent.api.to.NicTO;
/**
* LoadBalancerConfigCommand sends the load balancer configuration
*/
public class LoadBalancerConfigCommand extends NetworkElementCommand {
LoadBalancerTO[] loadBalancers;
public String lbStatsVisibility = "guest-network";
public String lbStatsPublicIP; /* load balancer listen on this ips for stats */
public String lbStatsPrivateIP; /* load balancer listen on this ips for stats */
public String lbStatsGuestIP; /* load balancer listen on this ips for stats */
public String lbStatsPort = "8081"; /*load balancer listen on this port for stats */
public String lbStatsSrcCidrs = "0/0"; /* TODO : currently there is no filtering based on the source ip */
public String lbStatsAuth = "admin1:AdMiN123";
public String lbStatsUri = "/admin?stats";
public String maxconn = "";
public String lbProtocol;
public boolean keepAliveEnabled = false;
NicTO nic;
Long vpcId;
protected LoadBalancerConfigCommand() {
}
public LoadBalancerConfigCommand(LoadBalancerTO[] loadBalancers, Long vpcId) {
this.loadBalancers = loadBalancers;
this.vpcId = vpcId;
}
public LoadBalancerConfigCommand(LoadBalancerTO[] loadBalancers, String publicIp, String guestIp, String privateIp, NicTO nic, Long vpcId, String maxconn,
boolean keepAliveEnabled) {
this.loadBalancers = loadBalancers;
this.lbStatsPublicIP = publicIp;
this.lbStatsPrivateIP = privateIp;
this.lbStatsGuestIP = guestIp;
this.nic = nic;
this.vpcId = vpcId;
this.maxconn = maxconn;
this.keepAliveEnabled = keepAliveEnabled;
}
public NicTO getNic() {
return nic;
}
public LoadBalancerTO[] getLoadBalancers() {
return loadBalancers;
}
public Long getVpcId() {
return vpcId;
}
}