Skip to content

Commit 608368c

Browse files
committed
healthcheck udp and refactory applyvip
1 parent 186e5c2 commit 608368c

8 files changed

Lines changed: 586 additions & 128 deletions

File tree

plugins/network-elements/globonetwork/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
<dependency>
3232
<groupId>com.globo.globonetwork</groupId>
3333
<artifactId>globonetwork-client</artifactId>
34-
<version>0.0.40</version>
34+
<version>0.0.41-SNAPSHOT</version>
3535
</dependency>
3636
<dependency>
3737
<groupId>org.slf4j</groupId>

plugins/network-elements/globonetwork/src/com/globo/globonetwork/cloudstack/commands/AddVipInGloboNetworkCommand.java renamed to plugins/network-elements/globonetwork/src/com/globo/globonetwork/cloudstack/commands/ApplyVipInGloboNetworkCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
import com.cloud.network.rules.FirewallRule;
2424
import com.globo.globonetwork.cloudstack.response.GloboNetworkVipResponse;
2525

26-
public class AddVipInGloboNetworkCommand extends Command {
26+
public class ApplyVipInGloboNetworkCommand extends Command {
2727

2828
private FirewallRule.State ruleState;
2929

plugins/network-elements/globonetwork/src/com/globo/globonetwork/cloudstack/manager/GloboNetworkManager.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import com.globo.globonetwork.cloudstack.api.ListGloboNetworkExpectedHealthchecksCmd;
2626
import com.globo.globonetwork.cloudstack.api.ListGloboNetworkPoolsCmd;
2727
import com.globo.globonetwork.cloudstack.api.UpdateGloboNetworkPoolCmd;
28+
import com.globo.globonetwork.cloudstack.commands.ApplyVipInGloboNetworkCommand;
2829
import com.globo.globonetwork.cloudstack.commands.GetPoolLBByIdCommand;
2930
import com.globo.globonetwork.cloudstack.commands.ListExpectedHealthchecksCommand;
3031
import com.globo.globonetwork.cloudstack.commands.ListPoolLBCommand;
@@ -193,7 +194,7 @@
193194
import com.globo.globonetwork.cloudstack.commands.AcquireNewIpForLbCommand;
194195
import com.globo.globonetwork.cloudstack.commands.ActivateNetworkCommand;
195196
import com.globo.globonetwork.cloudstack.commands.AddAndEnableRealInGloboNetworkCommand;
196-
import com.globo.globonetwork.cloudstack.commands.AddVipInGloboNetworkCommand;
197+
197198
import com.globo.globonetwork.cloudstack.commands.CreateNewVlanInGloboNetworkCommand;
198199
import com.globo.globonetwork.cloudstack.commands.DeallocateVlanFromGloboNetworkCommand;
199200
import com.globo.globonetwork.cloudstack.commands.DisableAndRemoveRealInGloboNetworkCommand;
@@ -646,7 +647,7 @@ protected String generateNetworkDomain(DataCenter zone, GloboNetworkVlanResponse
646647

647648
/**
648649
* Replace variables in a string template: #{obj.property}.
649-
* @see http://docs.spring.io/spring/docs/current/spring-framework-reference/html/expressions.html
650+
* @see {@linktourl http://docs.spring.io/spring/docs/current/spring-framework-reference/html/expressions.html}
650651
* @param template
651652
* @param context
652653
* @return
@@ -802,7 +803,7 @@ private Long getGloboNetworkVlanId(Long networkId) {
802803
/**
803804
* Get the number of vlan associate with {@code network}.
804805
*
805-
* @param network
806+
* @param broadcastUri
806807
* @return
807808
*/
808809
private Integer getVlanNum(URI broadcastUri) {
@@ -2047,7 +2048,7 @@ public boolean applyLbRuleInGloboNetwork(final Network network, final LoadBalanc
20472048
gnIpDetail.setGloboNetworkVipId(null);
20482049
_globoNetworkIpDetailDao.persist(gnIpDetail);
20492050
}else{
2050-
final AddVipInGloboNetworkCommand cmd = new AddVipInGloboNetworkCommand();
2051+
final ApplyVipInGloboNetworkCommand cmd = new ApplyVipInGloboNetworkCommand();
20512052

20522053
buildHealthcheck(cmd, rule);
20532054

@@ -2098,7 +2099,7 @@ public boolean applyLbRuleInGloboNetwork(final Network network, final LoadBalanc
20982099
return true;
20992100
}
21002101

2101-
private void buildHealthcheck(AddVipInGloboNetworkCommand cmd, LoadBalancingRule rule) {
2102+
private void buildHealthcheck(ApplyVipInGloboNetworkCommand cmd, LoadBalancingRule rule) {
21022103
LbHealthCheckPolicy lbHealthCheckPolicy = rule.getHealthCheckPolicies() == null || rule.getHealthCheckPolicies().isEmpty() ? null : rule.getHealthCheckPolicies().get(0);
21032104
String healthcheck = lbHealthCheckPolicy != null ? lbHealthCheckPolicy.getpingpath() : null;
21042105

@@ -2716,6 +2717,6 @@ public List<GloboNetworkExpectHealthcheckResponse.ExpectedHealthcheck> listAllEx
27162717
}
27172718

27182719
public enum HealthCheckType {
2719-
HTTP, TCP, HTTPS
2720+
HTTP, TCP, HTTPS, UDP
27202721
}
27212722
}

plugins/network-elements/globonetwork/src/com/globo/globonetwork/cloudstack/manager/HealthCheckHelper.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ protected HealthCheckHelper build(String healthcheckType, String healthcheck, St
4646
if ( healthcheckType != null ){
4747
this.healthCheckType = GloboNetworkManager.HealthCheckType.valueOf(healthcheckType).name();
4848

49-
if (healthCheckType.equals(GloboNetworkManager.HealthCheckType.TCP.name())) {
49+
if (healthCheckType.equals(GloboNetworkManager.HealthCheckType.TCP.name()) || healthCheckType.equals(GloboNetworkManager.HealthCheckType.UDP.name())) {
5050
this.expectedHealthCheck = null;
5151
this.healthCheck = null;
5252
} else {
@@ -75,13 +75,13 @@ protected String buildHealthCheckString(String path, String host) {
7575
public void validate(String host, String healthehckType, String healthcheck, String expectedHealthcheck){
7676

7777

78-
if ( healthehckType != null && healthehckType.equals(GloboNetworkManager.HealthCheckType.TCP.name())){
78+
if ( healthehckType != null && (healthehckType.equals(GloboNetworkManager.HealthCheckType.TCP.name()) || healthehckType.equals(GloboNetworkManager.HealthCheckType.UDP.name()))){
7979
if (expectedHealthcheck != null && !expectedHealthcheck.isEmpty()) {
80-
throw new IllegalArgumentException("When healthCheckType is TCP expectedHealthCheck should be empty! expectedHealthCheck: " + expectedHealthcheck);
80+
throw new IllegalArgumentException("When healthCheckType is TCP/UDP expectedHealthCheck should be empty! type: " + healthehckType + ", expectedHealthCheck: " + expectedHealthcheck);
8181
}
8282

8383
if (healthcheck != null && !healthcheck.isEmpty()) {
84-
throw new IllegalArgumentException("When healthCheckType is TCP healthCheck should be empty! healthCheck: " + healthcheck);
84+
throw new IllegalArgumentException("When healthCheckType is TCP healthCheck should be empty! type: " + healthehckType + ",healthCheck: " + healthcheck);
8585
};
8686
}
8787

0 commit comments

Comments
 (0)