Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 2

package io.wybis.salesmonster.

util;

import org.joda.time.DateTime;

import javax.servlet.http.HttpServletRequest;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Date;

public class Helper {

private static String domainPrefix = null;

public static String getStackTraceAsString(Throwable t) {


StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
t.printStackTrace(pw);
return sw.toString();
}

public static String getDomainPrefix(HttpServletRequest request, String


profileId) {
if (domainPrefix != null) {
return domainPrefix;
}

domainPrefix = "http://" + request.getLocalAddr() + ":" +


request.getLocalPort();

return domainPrefix;
}

public static DateTime createStartOfTheDay() {


DateTime dt = new DateTime();
dt = new DateTime(dt.getYear(), dt.getMonthOfYear(),
dt.getDayOfMonth(), 0, 0, 0);
return dt;
}

public static DateTime createEndOfTheDay() {


DateTime dt = new DateTime();
dt = new DateTime(dt.getYear(), dt.getMonthOfYear(),
dt.getDayOfMonth(), 23, 59, 59);
return dt;
}

public static DateTime createStartOfTheDay(Date date) {


DateTime dt = new DateTime(date);
dt = new DateTime(dt.getYear(), dt.getMonthOfYear(),
dt.getDayOfMonth(), 0, 0, 0);
return dt;
}

public static DateTime createEndOfTheDay(Date date) {


DateTime dt = new DateTime(date);
dt = new DateTime(dt.getYear(), dt.getMonthOfYear(),
dt.getDayOfMonth(), 23, 59, 59);
return dt;
}

public static DateTime createWithTimeOffFromNow() {


DateTime dt = new DateTime();
dt = new DateTime(dt.getYear(), dt.getMonthOfYear(),
dt.getDayOfMonth(), 0, 0, 0);
return dt;
}

public static DateTime createWithTimeOffFromDate(Date date) {


DateTime dt = new DateTime(date);
dt = new DateTime(dt.getYear(), dt.getMonthOfYear(),
dt.getDayOfMonth(), 0, 0, 0);
return dt;
}

public static String sha256(String input) throws NoSuchAlgorithmException {


MessageDigest mDigest = MessageDigest.getInstance("SHA256");
byte[] result = mDigest.digest(input.getBytes());
StringBuffer sb = new StringBuffer();
for (int i = 0; i < result.length; i++) {
sb.append(Integer.toString((result[i] & 0xff) + 0x100,
16).substring(1));
}
return sb.toString();
}

public static String generateDigest(String data) {


String value = "";

try {
//messageDigest = MessageDigest.getInstance("SHA-512");
MessageDigest messageDigest = MessageDigest.getInstance("SHA-512");
messageDigest.update(data.getBytes());
byte[] messageDigestMD5 = messageDigest.digest();
StringBuilder sb = new StringBuilder();
for (byte bytes : messageDigestMD5) {
sb.append(String.format("%02x", bytes & 0xff));
}
value = sb.toString();
} catch (NoSuchAlgorithmException exception) {
exception.printStackTrace();
}

return value;
}
}

You might also like