Serialize this object into arguments in the attribute exchange namespace.
814 $zero_value_types = array();
816 if ($request !== null) {
822 foreach ($this->data as $type_uri => $unused) {
823 if (!$request->contains($type_uri)) {
825 sprintf(
"Response attribute not present in request: %s",
831 foreach ($request->iterAttrs() as $attr_info) {
834 if ($attr_info->alias === null) {
835 $aliases->add($attr_info->type_uri);
837 $alias = $aliases->addAlias($attr_info->type_uri,
840 if ($alias === null) {
842 sprintf(
"Could not add alias %s for URI %s",
843 $attr_info->alias, $attr_info->type_uri)
848 if (array_key_exists($attr_info->type_uri, $this->data)) {
849 $values = $this->data[$attr_info->type_uri];
852 $zero_value_types[] = $attr_info;
856 ($attr_info->count <
count($values))) {
858 sprintf(
"More than the number of requested values " .
859 "were specified for %s",
860 $attr_info->type_uri)
874 foreach ($zero_value_types as $attr_info) {
875 $alias = $aliases->getAlias($attr_info->type_uri);
876 $kv_args[
'type.' . $alias] = $attr_info->type_uri;
877 $kv_args[
'count.' . $alias] =
'0';
882 $update_url = $request->update_url;
884 $update_url = $this->update_url;
888 $ax_args[
'update_url'] = $update_url;
_newArgs()
Return a set of attribute exchange arguments containing the basic information that must be in every a...
_getExtensionKVArgs($aliases)
Get the extension arguments for the key/value pairs contained in this message.
static update(&$dest, &$src)
count($type_uri)
Get the number of responses for a particular attribute in this fetch_response message.
const Auth_OpenID_AX_UNLIMITED_VALUES