docs: public static Descriptor fromString(String value) throws ConfigException {
  		if (value == null || value.length() == 0)
  			return null;
  
  		String[] tokens = value.split(":");
  		if (tokens.length != 5) {
  			throw (ConfigException) new ConfigException(null, "BAD_DESCRIPTOR",
  					"Descriptor " + value + " is in wrong format").withDetails("descriptor", value);
  		}
  
  		return new Descriptor(tokens[0].trim(), tokens[1].trim(), tokens[2].trim(), tokens[3].trim(), tokens[4].trim());
  	}