/* * Copyright 2014-2016 CyberVision, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.kaaproject.kaa.server.admin.shared.util; import com.google.gwt.http.client.URL; import java.util.Map; public class UrlParams { public static final String RESET_PASSWORD = "resetPassword"; public static final int PASSWORD_RESET_HASH_LENGTH = 128; public static final String PARAMS_SEPARATOR = "&"; private UrlParams() { } /** * Transform params map of request to URL link. * * @param paramsMap the params map * @return URL string */ public static String generateParamsUrl(Map<String, String> paramsMap) { String paramsUrl = ""; for (String key : paramsMap.keySet()) { String val = paramsMap.get(key); if (paramsUrl.length() > 0) { paramsUrl += PARAMS_SEPARATOR; } paramsUrl += key + "=" + URL.encodeQueryString(val); } return paramsUrl; } /** * Get request params from URL string and put them in map. * * @param paramsMap the params map */ public static void updateParamsFromUrl(Map<String, String> paramsMap, String paramsUrl) { if (paramsUrl != null && paramsUrl.trim().length() > 0) { String[] params = paramsUrl.split(PARAMS_SEPARATOR); for (String param : params) { String[] keyVal = param.split("="); if (keyVal != null && keyVal.length == 2) { paramsMap.put(keyVal[0], URL.decodeQueryString(keyVal[1])); } } } } }