Auth_OpenID_ServerError::toMessage PHP Method

toMessage() public method

public toMessage ( )
    function toMessage()
    {
        // Generate a Message object for sending to the relying party,
        // after encoding.
        $namespace = $this->message->getOpenIDNamespace();
        $reply = new Auth_OpenID_Message($namespace);
        $reply->setArg(Auth_OpenID_OPENID_NS, 'mode', 'error');
        $reply->setArg(Auth_OpenID_OPENID_NS, 'error', $this->toString());
        if ($this->contact !== null) {
            $reply->setArg(Auth_OpenID_OPENID_NS, 'contact', $this->contact);
        }
        if ($this->reference !== null) {
            $reply->setArg(Auth_OpenID_OPENID_NS, 'reference', $this->reference);
        }
        return $reply;
    }

Usage Example

Esempio n. 1
0
 function test_protoErrorFields()
 {
     $contact = '*****@*****.**';
     $reference = 'Trac ticket number MAX_INT';
     $error = 'poltergeist';
     $openid1_args = array('openid.identitiy' => 'invalid', 'openid.mode' => 'checkid_setup');
     $openid2_args = $openid1_args;
     $openid2_args = array_merge($openid2_args, array('openid.ns' => Auth_OpenID_OPENID2_NS));
     // Check presence of optional fields in both protocol versions
     $openid1_msg = Auth_OpenID_Message::fromPostArgs($openid1_args);
     $p = new Auth_OpenID_ServerError($openid1_msg, $error, $reference, $contact);
     $reply = $p->toMessage();
     $this->assertEquals($reply->getArg(Auth_OpenID_OPENID_NS, 'reference'), $reference);
     $this->assertEquals($reply->getArg(Auth_OpenID_OPENID_NS, 'contact'), $contact);
     $openid2_msg = Auth_OpenID_Message::fromPostArgs($openid2_args);
     $p = new Auth_OpenID_ServerError($openid2_msg, $error, $reference, $contact);
     $reply = $p->toMessage();
     $this->assertEquals($reply->getArg(Auth_OpenID_OPENID_NS, 'reference'), $reference);
     $this->assertEquals($reply->getArg(Auth_OpenID_OPENID_NS, 'contact'), $contact);
 }