Repository: cloudstack Updated Branches: refs/heads/4.4-forward 64ccf4b48 -> 4c304324a
cidr field removed Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/0c0a0c25 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/0c0a0c25 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/0c0a0c25 Branch: refs/heads/4.4-forward Commit: 0c0a0c25622301816c93c0eaf0edb4a50728c79f Parents: 64ccf4b Author: Daan Hoogland <d...@onecht.net> Authored: Tue May 6 17:44:54 2014 +0200 Committer: Daan Hoogland <d...@onecht.net> Committed: Tue May 6 22:29:13 2014 +0200 ---------------------------------------------------------------------- .../com/cloud/network/vpc/NetworkACLItemVO.java | 42 ++++++++------------ 1 file changed, 16 insertions(+), 26 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/0c0a0c25/engine/schema/src/com/cloud/network/vpc/NetworkACLItemVO.java ---------------------------------------------------------------------- diff --git a/engine/schema/src/com/cloud/network/vpc/NetworkACLItemVO.java b/engine/schema/src/com/cloud/network/vpc/NetworkACLItemVO.java index 0d2897d..6eb9cb0 100644 --- a/engine/schema/src/com/cloud/network/vpc/NetworkACLItemVO.java +++ b/engine/schema/src/com/cloud/network/vpc/NetworkACLItemVO.java @@ -16,9 +16,10 @@ // under the License. package com.cloud.network.vpc; -import java.util.ArrayList; import java.util.Date; +import java.util.LinkedList; import java.util.List; +import java.util.StringTokenizer; import java.util.UUID; import javax.persistence.Column; @@ -29,6 +30,7 @@ import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; +import javax.persistence.Transient; import com.cloud.utils.db.GenericDao; import com.cloud.utils.net.NetUtils; @@ -76,8 +78,11 @@ public class NetworkACLItemVO implements NetworkACLItem { @Enumerated(value = EnumType.STRING) TrafficType trafficType; - @Column(name = "cidr", length = 2048) - String sourceCidrs; + // This is a delayed load value. If the value is null, + // then this field has not been loaded yet. + // Call the NetworkACLItem dao to load it. + @Transient + List<String> sourceCidrs; @Column(name = "uuid") String uuid; @@ -113,32 +118,12 @@ public class NetworkACLItemVO implements NetworkACLItem { } public void setSourceCidrList(List<String> sourceCidrs) { - if (sourceCidrs == null) { - this.sourceCidrs = null; - } else { - StringBuilder sb = new StringBuilder(); - for (String cidr : sourceCidrs) { - if (sb.length() != 0) { - sb.append(","); - } - sb.append(cidr); - } - this.sourceCidrs = sb.toString(); - } + this.sourceCidrs = sourceCidrs; } @Override public List<String> getSourceCidrList() { - if (sourceCidrs == null || sourceCidrs.isEmpty()) { - return null; - } else { - List<String> cidrList = new ArrayList<String>(); - String[] cidrs = sourceCidrs.split(","); - for (String cidr : cidrs) { - cidrList.add(cidr); - } - return cidrList; - } + return sourceCidrs; } @Override @@ -239,7 +224,12 @@ public class NetworkACLItemVO implements NetworkACLItem { } public void setSourceCidrs(String sourceCidrs) { - this.sourceCidrs = sourceCidrs; + List<String> srcCidrs = new LinkedList<String>(); + StringTokenizer st = new StringTokenizer(sourceCidrs,",;"); + while(st.hasMoreTokens()) { + srcCidrs.add(st.nextToken()); + } + this.sourceCidrs = srcCidrs; } public void setNumber(int number) {