47 lines
1.2 KiB
Java
47 lines
1.2 KiB
Java
package com.sunyard.util;
|
|
|
|
import java.util.LinkedHashMap;
|
|
import java.util.List;
|
|
|
|
public class DnUtil {
|
|
|
|
|
|
public static LinkedHashMap<String, String> dnToMap(String dn) {
|
|
LinkedHashMap<String, String> map = new LinkedHashMap<String, String>();
|
|
String[] kvs = dn.split(",");
|
|
for (String kv : kvs) {
|
|
String[] ps = kv.split("=");
|
|
map.put(ps[0].trim(), ps[1].trim());
|
|
}
|
|
return map;
|
|
}
|
|
|
|
public static String verifyDn(String dn) {
|
|
if ( "true".equals(System.getProperty("com.sunyard.dnsort", "true"))) {
|
|
if (dn.startsWith("C=") || dn.startsWith("c=")) {
|
|
return dn;
|
|
}
|
|
// 反转顺序
|
|
String[] kvs = dn.split(",");
|
|
StringBuilder sb = new StringBuilder();
|
|
|
|
for (String kv : kvs) {
|
|
|
|
if (sb.length() > 0) {
|
|
sb.insert(0, ",");
|
|
}
|
|
sb.insert(0, kv);
|
|
|
|
// if ( sb.length() > 0 ) {
|
|
// sb.append(",");
|
|
// }
|
|
// sb.append( key + "=" + map.get( key ) );
|
|
}
|
|
|
|
return sb.toString();
|
|
}
|
|
else return dn;
|
|
}
|
|
|
|
}
|