public static function printAuthorization(PagSeguroAuthorization $authorization)
 {
     echo "<h2>Authorization search by Notification Code</h2>";
     echo "<p><strong>Code: </strong>" . $authorization->getCode() . "</p>";
     echo "<p><strong>Creation Date: </strong>" . $authorization->getCreationDate() . "</p>";
     echo "<p><strong>Reference: </strong>" . $authorization->getReference() . "</p>";
     echo "<p><strong>PublicKey: </strong>" . $authorization->getAccount()->getPublicKey() . "</p>";
     echo "<h3>Permissions:</h3>";
     foreach ($authorization->getPermissions()->getPermissions() as $permission) {
         echo "<p><strong>Code: </strong>" . $permission->getCode() . "</br>";
         echo "<strong>Status: </strong>" . $permission->getStatus() . "</br>";
         echo "<strong>Last Update: </strong>" . $permission->getLastUpdate() . "</p>";
     }
     echo "<pre>";
 }
 /**
  * @param PagSeguroAuthorization $authorization
  * @param $data
  */
 private function buildAuthorization(PagSeguroAuthorization $authorization, $data)
 {
     // <authorization><code>
     if (isset($data["code"])) {
         $authorization->setCode($data['code']);
     }
     // <authorization><creationDate>
     if (isset($data["creationDate"])) {
         $authorization->setCreationDate($data['creationDate']);
     }
     // <authorization><reference>
     if (isset($data["reference"])) {
         $authorization->setReference($data['reference']);
     }
     // <authorization><account><publicKey>
     if (isset($data["account"]) and isset($data["account"]['publicKey'])) {
         $authorization->setAccount(new PagSeguroAuthorizationAccount($data["account"]['publicKey']));
     }
     // <authorization><permissions>
     if (isset($data["permissions"])) {
         if (isset($data["permissions"]["permission"])) {
             foreach ($data["permissions"]["permission"] as $permission) {
                 $permissions[] = new PagSeguroAuthorizationPermission($permission['code'], $permission['status'], $permission['lastUpdate']);
             }
         }
         $permissions = new PagSeguroAuthorizationPermissions($permissions);
         $authorization->setPermissions($permissions);
         return $authorization;
     }
 }