forked from I2P_Developers/i2p.i2p
Version 3.7.0.2 (May 20, 2015) From: https://github.com/ndt-project/ndt/releases Unmodified, as baseline for future merges. Will not compile, changes adapted from BiglyBT to follow. Copyright 2003 University of Chicago. 3-clause license with requirement that: Modified copies and works based on the Software must carry prominent notices stating that you changed specified portions of the Software. See LICENSE.txt and licenses/LICENSE-NDT.txt
151 lines
3.9 KiB
Java
151 lines
3.9 KiB
Java
package edu.internet2.ndt;
|
|
|
|
import java.io.UnsupportedEncodingException;
|
|
import java.net.URLEncoder;
|
|
import java.util.ResourceBundle;
|
|
|
|
/**
|
|
* Class that defines utility methods used by the NDT code
|
|
*/
|
|
public class NDTUtils {
|
|
|
|
/**
|
|
* Utility method to print double value up to the hundredth place.
|
|
*
|
|
* @param paramDblToFormat
|
|
* Double numbers to format
|
|
* @return String value of double number
|
|
*/
|
|
public static String prtdbl(double paramDblToFormat) {
|
|
String str = null;
|
|
int i;
|
|
|
|
if (paramDblToFormat == 0) {
|
|
return ("0");
|
|
}
|
|
str = Double.toString(paramDblToFormat);
|
|
i = str.indexOf(".");
|
|
i = i + 3;
|
|
if (i > str.length()) {
|
|
i = i - 1;
|
|
}
|
|
if (i > str.length()) {
|
|
i = i - 1;
|
|
}
|
|
return (str.substring(0, i));
|
|
} // prtdbl() method ends
|
|
|
|
|
|
/**
|
|
* Utility method to print Text values for data speed related keys.
|
|
*
|
|
* @param paramIntVal
|
|
* integer parameter for which we find text value
|
|
* @return String Textual name for input parameter
|
|
*/
|
|
public static String prttxt(int paramIntVal, ResourceBundle paramResBundObj) {
|
|
String strNameTxt = null;
|
|
|
|
switch (paramIntVal) {
|
|
case (NDTConstants.DATA_RATE_SYSTEM_FAULT):
|
|
strNameTxt = paramResBundObj
|
|
.getString(NDTConstants.SYSTEM_FAULT_STR);
|
|
break;
|
|
case NDTConstants.DATA_RATE_RTT:
|
|
strNameTxt = paramResBundObj.getString(NDTConstants.RTT_STR);
|
|
break;
|
|
case NDTConstants.DATA_RATE_DIAL_UP:
|
|
strNameTxt = paramResBundObj.getString(NDTConstants.DIALUP_STR);
|
|
break;
|
|
case NDTConstants.DATA_RATE_T1:
|
|
strNameTxt = NDTConstants.T1_STR;
|
|
break;
|
|
case NDTConstants.DATA_RATE_ETHERNET:
|
|
strNameTxt = NDTConstants.ETHERNET_STR;
|
|
break;
|
|
case NDTConstants.DATA_RATE_T3:
|
|
strNameTxt = NDTConstants.T3_STR;
|
|
break;
|
|
case NDTConstants.DATA_RATE_FAST_ETHERNET:
|
|
strNameTxt = NDTConstants.FAST_ETHERNET;
|
|
break;
|
|
case NDTConstants.DATA_RATE_OC_12:
|
|
strNameTxt = NDTConstants.OC_12_STR;
|
|
break;
|
|
case NDTConstants.DATA_RATE_GIGABIT_ETHERNET:
|
|
strNameTxt = NDTConstants.GIGABIT_ETHERNET_STR;
|
|
break;
|
|
case NDTConstants.DATA_RATE_OC_48:
|
|
strNameTxt = NDTConstants.OC_48_STR;
|
|
break;
|
|
case NDTConstants.DATA_RATE_10G_ETHERNET:
|
|
strNameTxt = NDTConstants.TENGIGABIT_ETHERNET_STR;
|
|
break;
|
|
} // end switch
|
|
return (strNameTxt);
|
|
} // prttxt() method ends
|
|
|
|
/**
|
|
* Utility method to check if the given string is empty ("") or null.
|
|
*
|
|
* @param str
|
|
* String to check
|
|
* @return true is the given string is empty; otherwise false
|
|
*/
|
|
public static boolean isEmpty(String str) {
|
|
return str == null || str.length() == 0;
|
|
} // isEmpty() method ends
|
|
|
|
/**
|
|
* Utility method to check if the given string is not empty ("") or null.
|
|
*
|
|
* @param str
|
|
* String to check
|
|
* @return true is the given string is not empty; otherwise false
|
|
*/
|
|
public static boolean isNotEmpty(String str) {
|
|
return !isEmpty(str);
|
|
} // isNotEmpty() method ends
|
|
|
|
|
|
/**
|
|
* Utility method to create mailTo link
|
|
*
|
|
* @param name
|
|
* user identifier
|
|
* @param host
|
|
* fully qualified domain name
|
|
* @param subject
|
|
* email subject
|
|
* @param body
|
|
* email body
|
|
* @return created mailTo link with the encoded parameters
|
|
*/
|
|
public static String mailTo(final String name, final String host,
|
|
final String subject, final String body) {
|
|
return String.format(
|
|
"mailto:%s@%s?subject=%s&body=%s",
|
|
new Object[]{
|
|
urlEncode(name), urlEncode(host),
|
|
urlEncode(subject), urlEncode(body)
|
|
}
|
|
);
|
|
} // mailTo() method ends
|
|
|
|
/**
|
|
* Utility method to encode the given string using UTF-8 encoding
|
|
*
|
|
* @param str
|
|
* String to encode
|
|
* @return encoded string with replacing '+' to '%20'
|
|
*/
|
|
public static String urlEncode(String str) {
|
|
try {
|
|
return URLEncoder.encode(str, "utf-8").replace("+", "%20");
|
|
} catch (UnsupportedEncodingException e) {
|
|
throw new IllegalArgumentException(e);
|
|
}
|
|
} // urlEncode() method ends
|
|
|
|
}
|