public void setAuthority(String authority) {
		this.authority = authority;
		String[] authority_parts = parseAuthority(authority);
		this.userInfo = authority_parts[0];
		this.host = authority_parts[1];
		try {
			String port_string = authority_parts[2];
			if (port_string != null && port_string.length() > 0) {
				this.port = Integer.parseInt(port_string);
			} else {
				this.port = -1;
			}
		} catch (NumberFormatException nfe) {
			this.port = -1;
			nfe.printStackTrace();
		}
	}