/* * Copyright 2009-2016 Weibo, 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 com.weibo.api.motan.util; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.net.URLEncoder; import java.util.Map; import java.util.TreeMap; import org.apache.commons.lang3.StringUtils; import com.weibo.api.motan.common.MotanConstants; /** * * String utils * * @author fishermen * @version V1.0 created at: 2013-5-28 */ public class StringTools { public static int parseInteger(String intStr) { if (intStr == null) { return MotanConstants.DEFAULT_INT_VALUE; } try { return Integer.parseInt(intStr); } catch (NumberFormatException e) { return MotanConstants.DEFAULT_INT_VALUE; } } public static String urlEncode(String value) { if (StringUtils.isEmpty(value)) { return ""; } try { return URLEncoder.encode(value, MotanConstants.DEFAULT_CHARACTER); } catch (UnsupportedEncodingException e) { throw new RuntimeException(e.getMessage(), e); } } public static String urlDecode(String value) { if (StringUtils.isBlank(value)) { return ""; } try { return URLDecoder.decode(value, MotanConstants.DEFAULT_CHARACTER); } catch (UnsupportedEncodingException e) { throw new RuntimeException(e.getMessage(), e); } } public static String toQueryString(Map<String, String> ps) { StringBuilder buf = new StringBuilder(); if (ps != null && ps.size() > 0) { for (Map.Entry<String, String> entry : new TreeMap<String, String>(ps).entrySet()) { String key = entry.getKey(); String value = entry.getValue(); if (key != null && key.length() > 0 && value != null && value.length() > 0) { if (buf.length() > 0) { buf.append("&"); } buf.append(key); buf.append("="); buf.append(value); } } } return buf.toString(); } }