UserToken XPATH Examples
public static String getUserTokenId(String userTokenXml) {
if (userTokenXml == null) {
logger.debug("userTokenXml was empty, so returning empty userTokenId.");
return "";
}
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new InputSource(new StringReader(userTokenXml)));
XPath xPath = XPathFactory.newInstance().newXPath();
String expression = "/usertoken/@id";
XPathExpression xPathExpression = xPath.compile(expression);
return (xPathExpression.evaluate(doc));
} catch (Exception e) {
logger.error("getUserTokenId parsing error", e);
}
return "";
}
public static String getAppTokenIdFromAppToken(String appTokenXML) {
//logger.trace("appTokenXML: {}", appTokenXML);
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new InputSource(new StringReader(appTokenXML)));
XPath xPath = XPathFactory.newInstance().newXPath();
String expression = "/applicationtoken/params/applicationtokenID[1]";
XPathExpression xPathExpression = xPath.compile(expression);
String appId = xPathExpression.evaluate(doc);
logger.debug("getAppTokenIdFromAppToken: applicationTokenId={}, appTokenXML={}", appId, appTokenXML);
return appId;
} catch (Exception e) {
logger.error("getAppTokenIdFromAppToken - appTokenXML - Could not get applicationID from XML: " + appTokenXML, e);
}
return "";
}
public static String getRealName(String userTokenXml){
if (userTokenXml==null){
logger.debug("userTokenXml was empty, so returning empty realName.");
return "";
}
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new InputSource(new StringReader(userTokenXml)));
XPath xPath = XPathFactory.newInstance().newXPath();
String expression = "/usertoken/firstname";
XPathExpression xPathExpression = xPath.compile(expression);
String expression2 = "/usertoken/lastname";
XPathExpression xPathExpression2 = xPath.compile(expression2);
logger.debug("getRealName - usertoken" + userTokenXml + "\nvalue:" + xPathExpression.evaluate(doc) + " " + xPathExpression2.evaluate(doc));
return (xPathExpression.evaluate(doc)+" "+xPathExpression2.evaluate(doc));
} catch (Exception e) {
logger.error("getRealName - userTokenXml - getTimestamp parsing error", e);
}
return "";
}
public static Integer getLifespan(String userTokenXml) {
if (userTokenXml == null){
logger.debug("userTokenXml was empty, so returning empty lifespan.");
return null;
}
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new InputSource(new StringReader(userTokenXml)));
XPath xPath = XPathFactory.newInstance().newXPath();
String expression = "/usertoken/lifespan";
XPathExpression xPathExpression = xPath.compile(expression);
return Integer.parseInt(xPathExpression.evaluate(doc));
} catch (Exception e) {
logger.error("getLifespan - userTokenXml lifespan parsing error", e);
}
return null;
}
public static Long getTimestamp(String userTokenXml) {
if (userTokenXml==null){
logger.debug("userTokenXml was empty, so returning empty timestamp.");
return null;
}
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new InputSource(new StringReader(userTokenXml)));
XPath xPath = XPathFactory.newInstance().newXPath();
String expression = "/usertoken/timestamp";
XPathExpression xPathExpression = xPath.compile(expression);
logger.debug("token" + userTokenXml + "\nvalue:" + xPathExpression.evaluate(doc));
return Long.parseLong(xPathExpression.evaluate(doc));
} catch (Exception e) {
logger.error("getTimestamp - userTokenXml timestamp parsing error", e);
}
return null;
}