14.9. Gdata の例外の捕捉

Zend_Gdata_Exception は、Zend_Gdata がスローする例外の基底クラスです。Zend_Gdata_Exception を捕捉すれば、Zend_Gdata がスローする例外をすべて処理できます。

<?php
try {
    $client = Zend_Gdata_ClientLogin::getHttpClient($username, $password);
} catch(Zend_Gdata_Exception $ex) {
    // ユーザに例外の内容を報告します
    die($ex->getMessage());
}
?>

Zend_Gdata では、次のようなサブクラスを使用しています。

これらのサブクラスを使用することで、それぞれの例外に固有の処理をすることができます。 これらの例外サブクラスが、それぞれ Zend_Gdata のどのメソッドからスローされるのかについては API ドキュメントを参照ください。

<?php
try {
    $client = Zend_Gdata_ClientLogin::getHttpClient($username, $password);
} catch(Zend_Gdata_AuthException $authEx) {
    // ユーザの認証情報が無効なので、
    // もう一度認証をさせるなどの処理が適当でしょう
    ...
} catch(Zend_Gdata_HttpException $httpEx) {
    // Google Data サーバに接続できません
    die($httpEx->getMessage);
}
?>