第5章 API の使用
詳細は、 AMQ C++ API reference および AMQ C++ example suite を参照 してください。
5.1. メッセージングイベントの処理
AMQ C++ は非同期イベント駆動型 API です。アプリケーションがイベントを処理する方法を定義するために、ユーザーは messaging_handler
クラスでコールバックメソッドを実装します。これらの方法は、ネットワークアクティビティーとして呼び出され、タイマーが新規イベントをトリガーします。
例: メッセージングイベントの処理
struct example_handler : public proton::messaging_handler { void on_container_start(proton::container& cont) override { std::cout << "The container has started\n"; } void on_sendable(proton::sender& snd) override { std::cout << "A message can be sent\n"; } void on_message(proton::delivery& dlv, proton::message& msg) override { std::cout << "A message is received\n"; } };
struct example_handler : public proton::messaging_handler {
void on_container_start(proton::container& cont) override {
std::cout << "The container has started\n";
}
void on_sendable(proton::sender& snd) override {
std::cout << "A message can be sent\n";
}
void on_message(proton::delivery& dlv, proton::message& msg) override {
std::cout << "A message is received\n";
}
};
これらはごく一部の一般的なケースイベントのみです。全セットは AMQ API リファレンス に文書化されています。