/** {@inheritDoc} */ protected void processChildElement(XMLObject parentSAMLObject, XMLObject childSAMLObject) throws UnmarshallingException { AttributeQuery attributeQuery = (AttributeQuery) parentSAMLObject; if (childSAMLObject instanceof AttributeDesignator) { attributeQuery.getAttributeDesignators().add((AttributeDesignator) childSAMLObject); } else { super.processChildElement(parentSAMLObject, childSAMLObject); } }
/** * Gets the attribute IDs for those attributes requested in the attribute query. * * @param samlRequest the attribute query * * @return attribute IDs for those attributes requested in the attribute query */ protected Set<String> getAttributeIds(SAMLObject samlRequest) { Set<String> queryAttributeIds = new HashSet<String>(); if (!(samlRequest instanceof AttributeQuery)) { return queryAttributeIds; } AttributeQuery query = (AttributeQuery) samlRequest; if (query != null) { List<AttributeDesignator> queryAttributes = query.getAttributeDesignators(); queryAttributeIds = getAttributeIds(queryAttributes); log.debug("query message contains the following attributes: {}", queryAttributeIds); } return queryAttributeIds; }
designators = query.getAttributeDesignators(); if (designators != null && designators.isEmpty()) { designators = null;