package org.openstack.atlas.adapter.zxtm; import org.openstack.atlas.service.domain.entities.LoadBalancerAlgorithm; import org.openstack.atlas.service.domain.entities.LoadBalancerProtocol; import com.zxtm.service.client.PoolLoadBalancingAlgorithm; import com.zxtm.service.client.VirtualServerProtocol; import java.io.Serializable; import java.util.HashMap; public class ZxtmConversionUtils { public static VirtualServerProtocol mapProtocol(LoadBalancerProtocol Protocol) { final HashMap<Enum<LoadBalancerProtocol>, Serializable> mapper = new HashMap<Enum<LoadBalancerProtocol>, Serializable>(); mapper.put(LoadBalancerProtocol.HTTP, VirtualServerProtocol.http); mapper.put(LoadBalancerProtocol.HTTPS, VirtualServerProtocol.https); mapper.put(LoadBalancerProtocol.FTP, VirtualServerProtocol.ftp); mapper.put(LoadBalancerProtocol.IMAPv4, VirtualServerProtocol.imapv4); mapper.put(LoadBalancerProtocol.TCP, VirtualServerProtocol.server_first); mapper.put(LoadBalancerProtocol.TCP_CLIENT_FIRST, VirtualServerProtocol.client_first); mapper.put(LoadBalancerProtocol.TCP_STREAM, VirtualServerProtocol.stream); mapper.put(LoadBalancerProtocol.IMAPv2, VirtualServerProtocol.imapv2); mapper.put(LoadBalancerProtocol.IMAPv3, VirtualServerProtocol.imapv3); mapper.put(LoadBalancerProtocol.IMAPS, VirtualServerProtocol.imaps); mapper.put(LoadBalancerProtocol.LDAP, VirtualServerProtocol.ldap); mapper.put(LoadBalancerProtocol.LDAPS, VirtualServerProtocol.ldaps); mapper.put(LoadBalancerProtocol.POP3, VirtualServerProtocol.pop3); mapper.put(LoadBalancerProtocol.POP3S, VirtualServerProtocol.pop3s); mapper.put(LoadBalancerProtocol.SMTP, VirtualServerProtocol.smtp); mapper.put(LoadBalancerProtocol.DNS_TCP, VirtualServerProtocol.dns_tcp); mapper.put(LoadBalancerProtocol.DNS_UDP, VirtualServerProtocol.dns); mapper.put(LoadBalancerProtocol.UDP, VirtualServerProtocol.udp); mapper.put(LoadBalancerProtocol.UDP_STREAM, VirtualServerProtocol.udpstreaming); mapper.put(LoadBalancerProtocol.MYSQL, VirtualServerProtocol.server_first); mapper.put(LoadBalancerProtocol.SFTP, VirtualServerProtocol.server_first); return (VirtualServerProtocol) mapper.get(Protocol); } public static PoolLoadBalancingAlgorithm mapAlgorithm(LoadBalancerAlgorithm algorithm) { final HashMap<Enum<LoadBalancerAlgorithm>, Serializable> mapper = new HashMap<Enum<LoadBalancerAlgorithm>, Serializable>(); mapper.put(LoadBalancerAlgorithm.LEAST_CONNECTIONS, PoolLoadBalancingAlgorithm.connections); mapper.put(LoadBalancerAlgorithm.RANDOM, PoolLoadBalancingAlgorithm.random); mapper.put(LoadBalancerAlgorithm.ROUND_ROBIN, PoolLoadBalancingAlgorithm.roundrobin); mapper.put(LoadBalancerAlgorithm.WEIGHTED_LEAST_CONNECTIONS, PoolLoadBalancingAlgorithm.wconnections); mapper.put(LoadBalancerAlgorithm.WEIGHTED_ROUND_ROBIN, PoolLoadBalancingAlgorithm.wroundrobin); return (PoolLoadBalancingAlgorithm) mapper.get(algorithm); } }