public ConnectionParm decodeConnectionParm(String parm) { String[] tokens = equalsPattern.split(parm, 0); String name = tokens[0].trim(); String value = tokens[1].trim(); if (name.equalsIgnoreCase("JI")) { return new RegularConnectionParm(RegularConnectionParm.JITTER, Integer.parseInt(value)); } else if (name.equalsIgnoreCase("LA")) { return new RegularConnectionParm(RegularConnectionParm.LATENCY, Integer.parseInt(value)); } else if (name.equalsIgnoreCase("OR")) { return new RegularConnectionParm(RegularConnectionParm.OCTETS_RECEIVED, Integer.parseInt(value)); } else if (name.equalsIgnoreCase("OS")) { return new RegularConnectionParm(RegularConnectionParm.OCTETS_SENT, Integer.parseInt(value)); } else if (name.equalsIgnoreCase("PL")) { return new RegularConnectionParm(RegularConnectionParm.PACKETS_LOST, Integer.parseInt(value)); } else if (name.equalsIgnoreCase("PR")) { return new RegularConnectionParm(RegularConnectionParm.PACKETS_RECEIVED, Integer.parseInt(value)); } else if (name.equalsIgnoreCase("PS")) { return new RegularConnectionParm(RegularConnectionParm.PACKETS_SENT, Integer.parseInt(value)); } else { return new ExtendedConnectionParm(name, Integer.parseInt(value)); } }
case StringFunctions.HIGH_L_BYTE: if(value[startIndex+1]==StringFunctions.LOW_A_BYTE || value[startIndex+1]==StringFunctions.HIGH_A_BYTE) return new RegularConnectionParm(RegularConnectionParm.LATENCY, numericValue); case StringFunctions.LOW_J_BYTE: case StringFunctions.HIGH_J_BYTE: if(value[startIndex+1]==StringFunctions.LOW_I_BYTE || value[startIndex+1]==StringFunctions.HIGH_I_BYTE) return new RegularConnectionParm(RegularConnectionParm.JITTER, numericValue); case StringFunctions.LOW_O_BYTE: case StringFunctions.HIGH_O_BYTE: return new RegularConnectionParm(RegularConnectionParm.OCTETS_RECEIVED, numericValue); case StringFunctions.LOW_S_BYTE: case StringFunctions.HIGH_S_BYTE: return new RegularConnectionParm(RegularConnectionParm.OCTETS_SENT, numericValue); return new RegularConnectionParm(RegularConnectionParm.PACKETS_LOST, numericValue); case StringFunctions.LOW_R_BYTE: case StringFunctions.HIGH_R_BYTE: return new RegularConnectionParm(RegularConnectionParm.PACKETS_RECEIVED, numericValue); case StringFunctions.LOW_S_BYTE: case StringFunctions.HIGH_S_BYTE: return new RegularConnectionParm(RegularConnectionParm.PACKETS_SENT, numericValue);
case StringFunctions.HIGH_L_BYTE: if(value[startIndex+1]==StringFunctions.LOW_A_BYTE || value[startIndex+1]==StringFunctions.HIGH_A_BYTE) return new RegularConnectionParm(RegularConnectionParm.LATENCY, numericValue); case StringFunctions.LOW_J_BYTE: case StringFunctions.HIGH_J_BYTE: if(value[startIndex+1]==StringFunctions.LOW_I_BYTE || value[startIndex+1]==StringFunctions.HIGH_I_BYTE) return new RegularConnectionParm(RegularConnectionParm.JITTER, numericValue); case StringFunctions.LOW_O_BYTE: case StringFunctions.HIGH_O_BYTE: return new RegularConnectionParm(RegularConnectionParm.OCTETS_RECEIVED, numericValue); case StringFunctions.LOW_S_BYTE: case StringFunctions.HIGH_S_BYTE: return new RegularConnectionParm(RegularConnectionParm.OCTETS_SENT, numericValue); return new RegularConnectionParm(RegularConnectionParm.PACKETS_LOST, numericValue); case StringFunctions.LOW_R_BYTE: case StringFunctions.HIGH_R_BYTE: return new RegularConnectionParm(RegularConnectionParm.PACKETS_RECEIVED, numericValue); case StringFunctions.LOW_S_BYTE: case StringFunctions.HIGH_S_BYTE: return new RegularConnectionParm(RegularConnectionParm.PACKETS_SENT, numericValue);