public static String hashRequest(String url,
			Map<String, String> query_arguments, ArrayList<String> indices) {
		StringBuilder completeQuery = new StringBuilder(url);
		completeQuery.append("?");
		if (!indices.isEmpty() || (indices == null && query_arguments != null)) {
			ArrayList<String> actualIndices;
			if (indices == null) {
				actualIndices = new ArrayList<String>(query_arguments.keySet());
			} else {
				actualIndices = indices;
			}
			for (String key : actualIndices) {
				completeQuery
						.append(key + "=" + query_arguments.get(key) + "&");
			}
			// Remove any trailing &
			if (!indices.isEmpty()) {
				completeQuery.deleteCharAt(completeQuery.length() - 1);
			}
		}
		return completeQuery.toString();
	}