public Map<String, String> variables(String uri) {
		Map<String, String> variables = new HashMap<String, String>();
		Matcher matcher = pattern.matcher(uri);
		
		if (matcher.matches()) {
			for (int i = 0; i < matcher.groupCount(); i++) {
				variables.put(this.variables.get(i), matcher.group(i + 1));
			}
		}
		
		return variables;
	}
public Map<String, String> variables(String uri) {
		Map<String, String> variables = new HashMap<String, String>();
		Matcher matcher = pattern.matcher(uri);
		
		if (matcher.matches()) {
			for (int i = 0; i < matcher.groupCount(); i++) {
				variables.put(this.variables.get(i), matcher.group(i + 1));
			}
		}
		
		return variables;
	}
public Map < String , String > variables ( String uri ) { Map < String , String > variables = new HashMap < String , String > ( ) ; Matcher matcher = pattern . matcher ( uri ) ; if ( matcher . matches ( ) ) { for ( int i = 0 ; i < matcher . groupCount ( ) ; i ++ ) { variables . put ( this . variables . get ( i ) , matcher . group ( i + 1 ) ) ; } } return variables ; }
Returns template variable name and value pairs extracted from the
specified actual URI.

@param uri The actual URI to be parsed.
@return The template variable name and value pairs extracted from the
specified actual URI.
Returns template variable name and value pairs extracted from the specified actual URI .