package org.openstack.atlas.docs.loadbalancers.api.v1; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public final class ProtocolPortBindings { private static final Map <String,Integer> protocolPortMap; private static final List<String> keys; private static final Protocols protocols; private static final String[] keysAsArray; static { int i; protocolPortMap = new HashMap<String,Integer>(); protocolPortMap.put("HTTP",80); protocolPortMap.put("HTTPS",443); protocolPortMap.put("FTP",21); protocolPortMap.put("IMAPv4",143); protocolPortMap.put("IMAPv2",143); protocolPortMap.put("IMAPv3",220); protocolPortMap.put("IMAPS",993); protocolPortMap.put("POP3",110); protocolPortMap.put("POP3S",995); protocolPortMap.put("SMTP",25); protocolPortMap.put("LDAP",389); protocolPortMap.put("HTTP",80); protocolPortMap.put("TCP",0); protocolPortMap.put("TCP_CLIENT_FIRST",0); protocolPortMap.put("TCP_STREAM",0); protocolPortMap.put("LDAPS",636); protocolPortMap.put("DNS_TCP",53); protocolPortMap.put("DNS_UDP",53); protocolPortMap.put("UDP",0); protocolPortMap.put("UDP_STREAM",0); protocolPortMap.put("MYSQL",3306); protocolPortMap.put("SFTP",22); keys = new ArrayList<String>(); protocols = new Protocols(); for(Map.Entry<String,Integer> entry: protocolPortMap.entrySet()) { Protocol protocol = new Protocol(); String key = entry.getKey(); Integer port = entry.getValue(); keys.add(entry.getKey()); protocol.setName(key); protocol.setPort(port); protocols.getProtocols().add(protocol); } keysAsArray = new String[keys.size()]; for(i=0;i<keys.size();i++) { keysAsArray[i] = keys.get(i); } } public static Protocols getDefaultPortBindings() { return protocols; } public static List<String> getKeys() { return keys; } public static String[] getKeysAsArray() { return keysAsArray; } public static int getPortByKey(String key) { for(Map.Entry<String,Integer> entry: protocolPortMap.entrySet()) { if (entry.getKey().equals(key)) { return entry.getValue(); } } //Cant find protocol.... return 0; } }