1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.log4j.core.helpers;
18
19 import java.security.MessageDigest;
20
21
22
23
24 public final class NameUtil {
25
26 private static final int MASK = 0xff;
27
28 private NameUtil() {
29 }
30
31 public static String getSubName(final String name) {
32 if (name.isEmpty()) {
33 return null;
34 }
35 final int i = name.lastIndexOf('.');
36 return i > 0 ? name.substring(0, i) : "";
37 }
38
39 public static String md5(final String string) {
40 try {
41 final MessageDigest digest = MessageDigest.getInstance("MD5");
42 digest.update(string.getBytes());
43 final byte[] bytes = digest.digest();
44 final StringBuilder md5 = new StringBuilder();
45 for (final byte b : bytes) {
46 final String hex = Integer.toHexString(MASK & b);
47 if (hex.length() == 1) {
48 md5.append('0');
49 }
50 md5.append(hex);
51 }
52 return md5.toString();
53 } catch (final Exception ex) {
54 return string;
55 }
56 }
57 }