/* * NamedValue.java * * Created on 19 December 2004, 08:58 */ package org.owasp.webscarab.model; import java.util.logging.Logger; import java.util.logging.Level; /** * * @author rogan */ public class NamedValue { private String _name; private String _value; private static Logger _logger = Logger.getLogger("org.owasp.webscarab.model.NamedValue"); { _logger.setLevel(Level.INFO); } /** Creates a new instance of NamedValue */ public NamedValue(String name, String value) { _name = name; _value = value; } public String getName() { return _name; } public String getValue() { return _value; } public String toString() { return _name + "='" + _value + "'"; } public static NamedValue[] splitNamedValues(String source, String pairSeparator, String nvSeparator) { try { if (source == null || "".equals(source)) return new NamedValue[0]; String[] pairs = source.split(pairSeparator); _logger.fine("Split \""+ source + "\" into " + pairs.length); NamedValue[] values = new NamedValue[pairs.length]; for (int i=0; i<pairs.length; i++) { String[] nv = pairs[i].split(nvSeparator,2); if (nv.length == 2) { values[i] = new NamedValue(nv[0], nv[1]); } else if (nv.length == 1) { values[i] = new NamedValue(nv[0], ""); } else { values[i] = null; } } return values; } catch (ArrayIndexOutOfBoundsException aioob) { _logger.warning("Error splitting \"" + source + "\" using '" + pairSeparator + "' and '" + nvSeparator + "'"); } return new NamedValue[0]; } }