@Override public String map(LiteralNode literal) { return literal.getLiteralDataString(); } }
/** * Returns a parameter value string of this operation. * @param parameterXDIAddress The parameter identifier. * @return The parameter value string. */ public String getParameterString(XDIAddress parameterXDIAddress) { LiteralNode parameterLiteral = this.getParameterLiteralNode(parameterXDIAddress); if (parameterLiteral == null) return null; return parameterLiteral.getLiteralDataString(); }
@Override public String getLiteralDataString() { LiteralNode literalNode = this.getLiteralNode(); if (literalNode == null) return null; return literalNode.getLiteralDataString(); }
/** * Returns a parameter value string of this message (template). * @param parameterXDIAddress The parameter identifier. * @return The parameter value string. */ public String getParameterString(XDIAddress parameterXDIAddress) { LiteralNode parameterLiteralNode = this.getParameterLiteral(parameterXDIAddress); if (parameterLiteralNode == null) return null; return parameterLiteralNode.getLiteralDataString(); }
/** * Get the value */ public byte[] getSignatureValue() { LiteralNode literalNode = this.getXdiAttribute().getLiteralNode(); String literalDataString = literalNode == null ? null : literalNode.getLiteralDataString(); if (literalDataString == null) return null; byte[] signatureValue = Base64.decodeBase64(literalDataString.getBytes(Charset.forName("UTF-8"))); return signatureValue; }
@Override public LiteralNode replaceLiteralNode(LiteralNode literalNode) { String literalDataString = literalNode.getLiteralDataString(); if (literalDataString == null) return literalNode; for (Map.Entry<String, String> replacement : this.replacements.entrySet()) { literalDataString = literalDataString.replaceAll(replacement.getKey(), replacement.getValue()); } return new DummyLiteralNode(literalNode.getContextNode(), literalDataString); } }
/** * Get the value */ public String getValue() { LiteralNode literalNode = this.getXdiAttribute().getLiteralNode(); String value = literalNode == null ? null : literalNode.getLiteralDataString(); return value; }
public String getErrorString() { LiteralNode errorStringLiteral = this.getXdiAttribute().getLiteralNode(); if (errorStringLiteral == null) return null; return errorStringLiteral.getLiteralDataString(); }
if (literalNode == null) throw new GeneralSecurityException("No encryption literal node."); String literalString = literalNode.getLiteralDataString(); if (literalString == null) throw new GeneralSecurityException("No encryption literal string.");
if (literalNode == null) throw new GeneralSecurityException("No encryption literal node."); String literalString = literalNode.getLiteralDataString(); if (literalString == null) throw new GeneralSecurityException("No encryption literal string.");
private void initEndpointUris(XdiContext<?> xdiContext, XDIAddress[] endpointUriTypes) throws Xdi2DiscoveryException { if (endpointUriTypes == null) return; for (XDIAddress endpointUriType : endpointUriTypes) { XDIAddress endpointUriXdiAttributeAddress = XDIAddressUtil.concatXDIAddresses(endpointUriType, XDIClientConstants.XDI_ARC_AS_URI); XdiAttribute endpointUriXdiAttribute = xdiContext.getXdiAttributeSingleton(endpointUriXdiAttributeAddress, false); if (endpointUriXdiAttribute == null) continue; endpointUriXdiAttribute = endpointUriXdiAttribute.dereference(); LiteralNode endpointUriLiteral = endpointUriXdiAttribute.getLiteralNode(); if (endpointUriLiteral == null) continue; String endpointUri = endpointUriLiteral.getLiteralDataString(); if (endpointUri == null) continue; this.endpointUris.put(endpointUriType, URI.create(endpointUri)); } }
/** * Given a context, get a secret token. * @param graph The graph. * @return A secret token. */ public static String getLocalSaltAndDigestSecretToken(XdiContext<?> xdiContext) { // find local salt and digest secret token XdiAttribute localSaltAndDigestSecretTokenXdiAttribute = xdiContext.getXdiAttribute(XDISecurityConstants.XDI_ADD_DIGEST_SECRET_TOKEN, false); localSaltAndDigestSecretTokenXdiAttribute = localSaltAndDigestSecretTokenXdiAttribute == null ? null : localSaltAndDigestSecretTokenXdiAttribute.dereference(); LiteralNode localSaltAndDigestSecretTokenLiteral = localSaltAndDigestSecretTokenXdiAttribute == null ? null : localSaltAndDigestSecretTokenXdiAttribute.getLiteralNode(); String localSaltAndDigestSecretToken = localSaltAndDigestSecretTokenLiteral == null ? null : localSaltAndDigestSecretTokenLiteral.getLiteralDataString(); // done return localSaltAndDigestSecretToken; }
/** * Given a context, get a key. * @param graph The graph. * @return A key. */ public static String getKey(XdiContext<?> xdiContext, XDIAddress keyRelativeAddress) { // find public key XdiAttribute keyXdiAttribute = xdiContext.getXdiAttribute(keyRelativeAddress, false); keyXdiAttribute = keyXdiAttribute == null ? null : keyXdiAttribute.dereference(); LiteralNode keyLiteral = keyXdiAttribute == null ? null : keyXdiAttribute.getLiteralNode(); String key = keyLiteral == null ? null : keyLiteral.getLiteralDataString(); // done return key; }
@Override public InterceptorResult after(Operation operation, Graph operationResultGraph, ExecutionContext executionContext) throws Xdi2MessagingException { for (LiteralNode literal : operationResultGraph.getRootContextNode(true).getAllLiteralNodes()) { String encryptedLiteralDataString = literal.getLiteralDataString(); if (encryptedLiteralDataString == null) continue; String literalDataString; try { literalDataString = this.getLiteralCryptoService().decryptLiteralDataString(encryptedLiteralDataString); } catch (Exception ex) { if (log.isDebugEnabled()) log.debug("Problem while decrypting literal string: " + ex.getMessage(), ex); continue; } Object literalData = AbstractLiteralNode.stringToLiteralData(literalDataString); literal.setLiteralData(literalData); } // done return InterceptorResult.DEFAULT; }
/** * Get the timestamp associated with a context node. */ public static Date getTimestamp(XdiContext<?> xdiContext, XDIAddress modifier) { XDIAddress timestampXDIAddress = modifier == null ? XDITimestampsConstants.XDI_ADD_AS_T : XDIAddressUtil.concatXDIAddresses(modifier, XDITimestampsConstants.XDI_ARC_AS_T); XdiAttributeSingleton xdiAttributeSingleton = xdiContext.getXdiAttributeSingleton(timestampXDIAddress, false); if (xdiAttributeSingleton == null) return null; LiteralNode timestampLiteral = xdiAttributeSingleton.getLiteralNode(); if (timestampLiteral == null) return null; Date timestamp = stringToTimestamp(timestampLiteral.getLiteralDataString()); return timestamp; }
/** * Returns the secret token from the message (template). * @return The secret token. */ public String getSecretToken() { ContextNode contextNode = this.getContextNode().getDeepContextNode(XDISecurityConstants.XDI_ADD_SECRET_TOKEN, true); if (contextNode == null) return null; XdiAttributeSingleton xdiAttribute = XdiAttributeSingleton.fromContextNode(contextNode); if (xdiAttribute == null) return null; LiteralNode literalNode = xdiAttribute.getLiteralNode(); if (literalNode == null) return null; return literalNode.getLiteralDataString(); }
@Override public boolean evaluateInternal(PolicyEvaluationContext policyEvaluationContext) { ContextNode subject = policyEvaluationContext.getContextNode(this.getXDIStatement().getSubject()); ContextNode object = policyEvaluationContext.getContextNode((XDIAddress) this.getXDIStatement().getObject()); if (subject == null || object == null) return false; if (subject.containsLiteralNode()) { if (! (object.containsLiteralNode())) return false; String subjectLiteralData = subject.getLiteralNode().getLiteralDataString(); String objectLiteralData = object.getLiteralNode().getLiteralDataString(); if (subjectLiteralData == null || objectLiteralData == null) return false; return Pattern.matches(objectLiteralData, subjectLiteralData); } return false; } }
assertEquals(c.getLiteralNode().getLiteralDataString(), s); assertNull(c.getLiteralNode().getLiteralDataNumber()); assertNull(c.getLiteralNode().getLiteralDataBoolean()); assertNull(c.getLiteralNode().getLiteralDataString()); assertEquals(c.getLiteralNode().getLiteralDataNumber(), d); assertNull(c.getLiteralNode().getLiteralDataBoolean()); assertNull(c.getLiteralNode().getLiteralDataString()); assertNull(c.getLiteralNode().getLiteralDataNumber()); assertEquals(c.getLiteralNode().getLiteralDataBoolean(), b); assertNull(c.getLiteralNode().getLiteralDataString()); assertNull(c.getLiteralNode().getLiteralDataNumber()); assertNull(c.getLiteralNode().getLiteralDataBoolean()); assertNull(c.getLiteralNode().getLiteralDataString()); assertNull(c.getLiteralNode().getLiteralDataNumber()); assertNull(c.getLiteralNode().getLiteralDataBoolean()); assertNull(c.getLiteralNode().getLiteralDataString()); assertNull(c.getLiteralNode().getLiteralDataNumber()); assertNull(c.getLiteralNode().getLiteralDataBoolean());