QDBusError Class
QDBusErrorクラスは、D-Busバスまたはバス内で見つかったリモート・アプリケーションから受信したエラーを表します。詳細...
Header: | #include <QDBusError> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS DBus) target_link_libraries(mytarget PRIVATE Qt6::DBus) |
qmake: | QT += dbus |
パブリック・タイプ
enum | ErrorType { NoError, Other, Failed, NoMemory, ServiceUnknown, …, InvalidInterface } |
パブリック関数
bool | isValid() const |
QString | message() const |
QString | name() const |
void | swap(QDBusError &other) |
QDBusError::ErrorType | type() const |
静的パブリック・メンバ
QString | errorString(QDBusError::ErrorType error) |
詳細説明
D-Busバス・サービスやD-Bus上のリモート・アプリケーションを扱う場合、多くのエラー状態が発生する可能性があります。このエラー状態は、返されるエラー値や QDBusError によって通知されることがあります。
C++ や Java の例外は、D-Bus のエラーの有効なアナロジーです。リモー ト・アプリケーションとバスは、戻り値で正常に戻る代わりに、エラー状態をスロー することにします。しかし、Qt D-Bus 実装は C++ の例外スロー・メカニズムを使用しないため、リターン・リプライで QDBusError を受け取ることになります(QDBusReply::error() を参照)。
QDBusError オブジェクトは、バスやリモート・アプリケーションから受信したエ ラー名とメッセージを検査するために使用されます。D-Bus から呼び出されたときにエラー状態を通知するために、このようなオブジェクトを自 分で作成しないでください。代わりに、QDBusMessage::createError() およびQDBusConnection::send() を使用してください。
QDBusConnection::send()、QDBusMessage 、QDBusReplyも参照の こと。
メンバ型ドキュメント
enum QDBusError::ErrorType
D-Bus 実装とバス・デーモン自身によって生成される最も一般的な D-Bus エラーの検証を容易にするために、QDBusError は、事前に定義された値のセットと比較することができます:
定数 | 値 | 説明 |
---|---|---|
QDBusError::NoError | 0 | QDBusError は無効です(すなわち、呼び出しは成功しました)。 |
QDBusError::Other | 1 | QDBusError よく知られているエラー以外のエラーが含まれています。 |
QDBusError::Failed | 2 | 呼び出しに失敗しました (org.freedesktop.DBus.Error.Failed ) |
QDBusError::NoMemory | 3 | メモリ不足 (org.freedesktop.DBus.Error.NoMemory ) |
QDBusError::ServiceUnknown | 4 | 呼び出されたサービスが不明 (org.freedesktop.DBus.Error.ServiceUnknown ) |
QDBusError::NoReply | 5 | 呼び出されたメソッドが指定されたタイムアウト内に応答しなかった (org.freedesktop.DBus.Error.NoReply ) |
QDBusError::BadAddress | 6 | 指定されたアドレスが有効でない (org.freedesktop.DBus.Error.BadAddress ) |
QDBusError::NotSupported | 7 | その呼び出し/操作はサポートされていません (org.freedesktop.DBus.Error.NotSupported ) |
QDBusError::LimitsExceeded | 8 | このプロセス/コール/接続に割り当てられた制限が、事前に定義された値を超えている (org.freedesktop.DBus.Error.LimitsExceeded ) |
QDBusError::AccessDenied | 9 | コール/操作は許可されていないリソースにアクセスしようとしました (org.freedesktop.DBus.Error.AccessDenied ) |
QDBusError::NoServer | 10 | ドキュメントに何のための処理か記載されていない(org.freedesktop.DBus.Error.NoServer ) |
QDBusError::Timeout | 11 | ドキュメントには、これが何に使用されるのか、どのように使用されるのかが書かれていない(org.freedesktop.DBus.Error.Timeout ) |
QDBusError::NoNetwork | 12 | ドキュメントにはこれが何のためにあるのか書かれていない(org.freedesktop.DBus.Error.NoNetwork ) |
QDBusError::AddressInUse | 13 | QDBusServer すでに使用されているアドレスにバインドしようとした ( )org.freedesktop.DBus.Error.AddressInUse |
QDBusError::Disconnected | 14 | このコール/プロセス/メッセージは、QDBusConnection が切断された後に送信された (org.freedesktop.DBus.Error.Disconnected ) |
QDBusError::InvalidArgs | 15 | このコール/操作に渡された引数が有効でない (org.freedesktop.DBus.Error.InvalidArgs ) |
QDBusError::UnknownMethod | 16 | 呼び出されたメソッドが、指定されたパラメータでこのオブジェクト/インターフェースに見つからなかった (org.freedesktop.DBus.Error.UnknownMethod ) |
QDBusError::TimedOut | 17 | ドキュメントに記述がありません...(org.freedesktop.DBus.Error.TimedOut ) |
QDBusError::InvalidSignature | 18 | 型シグネチャが有効でないか、互換性がない (org.freedesktop.DBus.Error.InvalidSignature ) |
QDBusError::UnknownInterface | 19 | インターフェイスがこのオブジェクトにない (org.freedesktop.DBus.Error.UnknownInterface ) |
QDBusError::UnknownObject | 20 | オブジェクト・パスが存在しないオブジェクトを指している (org.freedesktop.DBus.Error.UnknownObject ) |
QDBusError::UnknownProperty | 21 | プロパティがこのインタフェースに存在しません (org.freedesktop.DBus.Error.UnknownProperty ) |
QDBusError::PropertyReadOnly | 22 | プロパティが読み取り専用であるため、プロパティ・セットに失敗しました (org.freedesktop.DBus.Error.PropertyReadOnly ) |
QDBusError::InternalError | 23 | 内部エラーが発生しました。 |
QDBusError::InvalidObjectPath | 25 | 指定されたオブジェクト・パスが無効です。 |
QDBusError::InvalidService | 24 | 要求されたサービスが無効です。 |
QDBusError::InvalidMember | 27 | メンバが無効です。 |
QDBusError::InvalidInterface | 26 | インタフェースが無効です。 |
メンバ関数ドキュメント
[static]
QString QDBusError::errorString(QDBusError::ErrorType error)
エラー条件error に関連付けられたエラー名を返す。
bool QDBusError::isValid() const
このエラー状態が有効な場合(すなわち、エラーがあった場合)はtrue
を返し、そうでない場合は false を返す。
QString QDBusError::message() const
このエラーに関連付けられたメッセージを返します。エラーメッセージは実装で定義されており、通常は人間が読めるエラーコードを 含んでいます。
QString QDBusError::name() const
このエラーの名前を返す。エラー名は、org.freedesktop.DBus.InvalidArgs
のような D-Bus Interface の名前に似ています。
type()も参照 。
[noexcept]
void QDBusError::swap(QDBusError &other)
このQDBusError インスタンスをother と交換します。
QDBusError::ErrorType QDBusError::type() const
このエラーのErrorType を返します。
ErrorTypeも参照してください 。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。