(57)【要約】【課題】機器の情報を監視するシステムを適切に構築させることのできる情報処理装置、情報処理方法及びプログラムの提供を目的とする。【解決手段】ネットワークに接続された機器の情報をユーザに提供するアプリケーションより、該情報を取得する機器と該情報を構成するデータの中から取得対象とするデータとの指定を受け付ける取得対象受け付け手段と、前記アプリケーションによる指定に基づいて取得対象とされたデータに対するＵＲＩを生成するＵＲＩ生成手段と、前記ＵＲＩに対応するデータの取得要求を送信し、該取得要求に対する応答を受信することにより前記データを取得するデータ取得手段と、取得されたデータを前記アプリケーションが参照可能な記憶領域に記録する記録手段とを有することにより上記課題を解決する。【選択図】図４
2009116703.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された機器の情報をユーザに提供するアプリケーションより、該情報を取得する機器と該情報を構成するデータの中から取得対象とするデータとの指定を受け付ける取得対象受け付け手段と、
前記アプリケーションによる指定に基づいて取得対象とされたデータに対するＵＲＩを生成するＵＲＩ生成手段と、
前記ＵＲＩに対応するデータの取得要求を送信し、該取得要求に対する応答を受信することにより前記データを取得するデータ取得手段と、
取得されたデータを前記アプリケーションが参照可能な記憶領域に記録する記録手段とを有することを特徴とする情報処理装置。
【請求項２】
前記アプリケーションより前記データを取得する周期の設定を受け付け、設定された周期で前記データ取得手段に前記データを取得させる更新手段を有することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記データ取得手段は、前記データと共に当該データが前記機器において更新された時を示す情報を取得し、
前記記録手段は、取得されたデータが更新された時が既に前記記憶領域に記録されているデータが更新された時より後である場合に、取得されたデータを前記記憶領域に記録することを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記取得対象受け付け手段は、複数の前記データの指定を受け付け、
前記更新手段は、前記データごとに前記周期の設定を受け付け、前記データごとに設定された周期で前記データ取得手段にそれぞれの前記データを取得させることを特徴とする請求項２又は３記載の情報処理装置。
【請求項５】
コンピュータが実行する情報処理方法であって、
ネットワークに接続された機器の情報をユーザに提供するアプリケーションより、該情報を取得する機器と該情報を構成するデータの中から取得対象とするデータとの指定を受け付ける取得対象受け付け手順と、
前記アプリケーションによる指定に基づいて取得対象とされたデータに対するＵＲＩを生成するＵＲＩ生成手順と、
前記ＵＲＩに対応するデータの取得要求を送信し、該取得要求に対する応答を受信することにより前記データを取得するデータ取得手順と、
取得されたデータを前記アプリケーションが参照可能な記憶領域に記録する記録手順とを有することを特徴とする情報処理方法。
【請求項６】
前記アプリケーションより前記データを取得する周期の設定を受け付け、設定された周期で前記データ取得手順に前記データを取得させる更新手順を有することを特徴とする請求項５記載の情報処理方法。
【請求項７】
前記データ取得手順は、前記データと共に当該データが前記機器において更新された時を示す情報を取得し、
前記記録手順は、取得されたデータが更新された時が既に前記記憶領域に記録されているデータが更新された時より後である場合に、取得されたデータを前記記憶領域に記録することを特徴とする請求項６記載の情報処理方法。
【請求項８】
前記取得対象受け付け手順は、複数の前記データの指定を受け付け、
前記更新手順は、前記データごとに前記周期の設定を受け付け、前記データごとに設定された周期で前記データ取得手順にそれぞれの前記データを取得させることを特徴とする請求項６又は７記載の情報処理方法。
【請求項９】
請求項５乃至８いずれか一項記載の情報処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関し、特にネットワークに接続された機器の情報を取得する情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
企業内のオフィス等におけるネットワークには、プリンタ、コピー機、ＦＡＸ、ルータ、及びＰＣ（Personal Computer）等、種々のネットワーク機器が接続されている。従来、散在しているネットワーク機器の稼働状況等を遠隔より監視し、その情報を表示させるシステムが存在する。斯かるシステムによれば、管理者は、各機器が設置されている場所に赴かなくても複数のネットワーク機器を容易に監視することができる。
【特許文献１】特開２００６−２６０４２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
斯かるシステムを構築する方法として、市販のパッケージソフトを利用することが考えられる。この場合、当該パッケージソフトをＰＣ（Personal Computer）等の機器の監視用のコンピュータにインストール等することで、比較的容易にシステムを構築することができる。しかし、市販のパッケージソフトは、予め機能が作り込まれているため、ユーザは、所望する機能と実際に提供されている機能との差異について或る程度の妥協を余儀なくされる。
【０００４】
一方、パッケージソフトを利用せずに、ユーザが所望する仕様でゼロから作り込むことも考えられる。この場合、よりユーザの要求に近いシステムが構築される可能性が高い。しかしながら、通信制御等のプリミティブな処理についてまで設計及び製造作業が必要とされ、時間的及び費用的に非常にコストがかかるという問題がある。
【０００５】
本発明は、上記の点に鑑みてなされたものであって、機器の情報を監視するシステムを適切に構築させることのできる情報処理装置、情報処理方法及びプログラムの提供を目的とする。
【課題を解決するための手段】
【０００６】
そこで上記課題を解決するため、本発明は、ネットワークに接続された機器の情報をユーザに提供するアプリケーションより、該情報を取得する機器と該情報を構成するデータの中から取得対象とするデータとの指定を受け付ける取得対象受け付け手段と、前記アプリケーションによる指定に基づいて取得対象とされたデータに対するＵＲＩを生成するＵＲＩ生成手段と、前記ＵＲＩに対応するデータの取得要求を送信し、該取得要求に対する応答を受信することにより前記データを取得するデータ取得手段と、取得されたデータを前記アプリケーションが参照可能な記憶領域に記録する記録手段とを有することを特徴とする。
【０００７】
このような情報処理装置では、機器の情報を監視するシステムを適切に構築させることができる。
【発明の効果】
【０００８】
本発明によれば、機器の情報を監視するシステムを適切に構築させることのできる情報処理装置、情報処理方法及びプログラムを提供することができる。
【発明を実施するための最良の形態】
【０００９】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態における機器管理システムの構成例を示す図である。同図において、機器管理システム１は、監視又は管理される側の一台以上のネットワーク機器と、監視又は管理する側の一台以上のコンピュータとより構成される。機器２０ａ、２０ｂ及び２０ｃ（以下、総称する場合「機器２０」という。）は、監視等される側のネットワーク機器である。管理装置１０ａ及び１０ｂ（以下、総称する場合「管理装置１０」という。）は、監視等する側のコンピュータである。図示されるように、機器２０と管理装置１０とは、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）、又はインターネット等のネットワーク３０（有線又は無線の別は問わない。）によって接続される。
【００１０】
図２は、本発明の実施の形態における管理装置のハードウェア構成例を示す図である。図２の管理装置１０は、それぞれバスBで相互に接続されているドライブ装置１００と、補助記憶装置１０２と、メモリ装置１０３と、ＣＰＵ１０４と、インタフェース装置１０５と、表示装置１０６と、入力装置１０７とを有するように構成される。
【００１１】
管理装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記録した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００１２】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従って管理装置１０に係る機能を実現する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。表示装置１０６はプログラムによるＧＵＩ（Graphical User Interface）等を表示する。入力装置１０７はキーボード及びマウス等で構成され、様々な操作指示を入力させるために用いられる。
【００１３】
なお、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。
【００１４】
図３は、第一の実施の形態における管理装置のソフトウェア構成例を説明するためのクラス図である。同図において、管理装置１０は、機器管理クライアント１１及びアプリケーション１２等を有する。
【００１５】
機器管理クライアント１１は、機器２０の情報（機器情報）を構成する各データ（パラメータ）の収集や機器２０のデータの更新等を行うための仕組みを上位アプリケーション（アプリケーション１２）に対して提供するミドルウェア又はフレームワークであり、仮想機器クラス１１１、機器情報クラス１１２、データクラス１１３、データＡクラス１１４、及びデータＢクラス１１５等より構成される。
【００１６】
仮想機器クラス１１１は、仮想的な機器２０を表現するクラスであり、機器２０ごとにインスタンス化される。仮想機器クラス１１１は、例えば、機器情報を構成するデータの取得要求を受け付け、当該データをＨＴＴＰ（HyperText Transfer Protocol）に基づくＲＥＳＴ（Representational State Transfer）によって機器２０より取得する。すなわち、機器２０における機器情報を構成する各データには一意的なアドレス情報としてＵＲＩ（Uniform Resource Identifier）が割り当てられており、そのＵＲＩに基づいてデータごとにアクセス（操作）が行われる。
【００１７】
機器情報クラス１１２は、機器情報を表現するクラスであり、データクラス１１３を集約する。データクラス１１３は、機器情報を構成する各データを表現する抽象クラスである。実際のデータは、データクラス１１３のサブクラスにおいて保持される。例えば、図３では、データクラス１１３のサブクラスとしてデータＡクラス１１４及びデータＢクラス１１５が例示されている。データＡクラス１１４及びデータＢクラス１１５には、それぞれが対応するデータの特性に応じた実装がされている。このように、データの種類に応じてデータクラス１１３のサブクラスが存在する。したがって、新たなデータの取得又は更新等が必要とされる場合は、データクラス１１３のサブクラスとして当該データに対応するクラスを定義することで、扱えるデータの種類を拡張することができる。
【００１８】
なお、各クラスはインスタンス化されることによりオブジェクトとしてメモリ装置１０３にロードされる。オブジェクトは、クラスに定義された処理をＣＰＵ１０４に実行させることにより、その機能を実現する。
【００１９】
アプリケーション１２は、機器管理クライアント１１を利用するソフトウェアプログラムであり、仮想機器クラス１１１のインスタンス（以下、「仮想機器オブジェクト１１１Ｉ」という。）を操作することにより、機器情報の取得又は更新等のサービスをユーザに対して提供する。
【００２０】
一方、機器２０は、機器管理サーバ２１を有する。機器管理サーバ２１は、管理装置２１からのＲＥＳＴベースのＨＴＴＰリクエストにおいて指定されている、機器情報のデータの操作（取得、更新等）の実行を制御し、その操作結果をＨＴＴＰレスポンスに含めて返信する。
【００２１】
以下、機器管理システム１の処理手順について説明する。図４は、第一の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。図４では、機器２０ａ（機器Ａ）よりデータＡの値を取得する例について説明する。
【００２２】
機器情報の操作を行う場合、アプリケーション１２は、まず、操作対象となる機器２０ａに対応する仮想機器オブジェクト１１１Ｉａを生成する（Ｓ１０１）。なお、生成時において、仮想機器オブジェクト１１１Ｉａには機器２０ａのＵＲＬ（例えば、「http://deviceA」）及び機器管理サーバ２１（以下、「機器管理サーバ２１ａ」という。）と通信するためのボート番号（例えば、「80」）が設定される。
【００２３】
続いて、アプリケーション１２は、ユーザのアカウント情報（ユーザ名及びパスワード）を仮想機器オブジェクト１１１Ｉａに設定する（Ｓ１０２）。続いて、アプリケーション１２は、機器２０ａとの間でＳＳＬ（Secure Socket Layer）通信を行うためのＳＳＬ認証情報を仮想機器オブジェクト１１１Ｉａに設定する（Ｓ１０３）。
【００２４】
続いて、アプリケーション１２は、取得するデータを指定するためのオブジェクトを生成する。まず、アプリケーション１２は、データを集約するための機器情報クラス１１２のインスタンス（機器情報オブジェクト１１２Ｉ）を生成する（Ｓ１０４）。続いて、アプリケーション１２は、取得対象とするデータＡの識別子（例えば、データ名）を指定して、データＡに対応するオブジェクトの生成を機器情報オブジェクト１１２Ｉに要求する（Ｓ１０５）。機器情報オブジェクト１１２Ｉは、当該要求に応じ、データＡクラス１１４のインスタンス（以下「データＡオブジェクト１１４Ｉａ」という。）を生成する（Ｓ１０６）。この際、データＡオブジェクト１１４Ｉａ及び機器情報オブジェクト１１２Ｉには双方向の関連付けがなされる。具体的には、双方のオブジェクトに他方のオブジェクトの参照情報、ＩＤ、又はポインタ等が設定される。
【００２５】
続いて、アプリケーション１２は、データＡオブジェクト１１４Ｉａを引数として、データの取得を仮想機器オブジェクト１１１Ｉａに要求する（Ｓ１０７）。仮想機器オブジェクト１１１Ｉａは、引数に指定されたデータＡオブジェクト１１４Ｉａに係るデータＡのＵＲＩの生成を機器情報オブジェクト１１２Ｉに要求する（Ｓ１０８）。当該要求には、仮想機器オブジェクト１１１Ｉａに設定されている機器２０ａのＵＲＬ及びボート番号（http://deviceA:80）が指定される。なお、機器情報オブジェクト１１２Ｉは、引数に指定されたデータＡオブジェクト１１４Ｉａに設定されている関連付けに基づいて取得される。
【００２６】
機器情報オブジェクト１１２Ｉは、指定された機器２０ａのＵＲＬ及びボート番号の後に、機器２０において「機器情報」を示す相対パスによるＵＲＩ（例えば、「sample」）を付加し、機器情報に対するＵＲＩ（http://deviceA:80/sample/）を生成する。続いて、機器情報オブジェクト１１２Ｉは、機器情報に対するＵＲＩを引数として、データＡに対するＵＲＩの生成をデータＡオブジェクト１１４Ｉａに要求する（Ｓ１０９）。データＡオブジェクト１１４Ｉａは、機器情報に対するＵＲＩの後に、データＡに対する相対パスによるＵＲＩ（例えば、「a1」）を付加することにより、データＡに対する絶対パスによるＵＲＩ（http://deviceA:80/sample/a1）を生成し、当該ＵＲＩを機器情報オブジェクト１１２Ｉに返却する（Ｓ１１０）。機器情報オブジェクト１１２Ｉは、返却されたデータＡに対するＵＲＩを仮想機器オブジェクト１１１Ｉａに返却する（Ｓ１１１）。なお、機器情報に対する相対パスによるＵＲＩや、データＡに対する相対パスによるＵＲＩは、それぞれのクラス（機器情報クラス１１２、データＡクラス１１４）の定義として実装されていてもよいし（すなわち、ハードコーディングされていてもよいし）、各オブジェクトが生成される際に、生成元より設定されてもよい。
【００２７】
データＡのＵＲＩを入手した仮想機器オブジェクト１１１Ｉａは、当該ＵＲＩをＧＥＴメソッドのパラメータとしたＨＴＴＰリクエスト（ここでは、ＳＳＬ通信が行われるため、厳密にはＨＴＴＰＳリクエスト）を機器管理サーバ２１ａに送信する（Ｓ１１２）。機器管理サーバ２１ａは、ＨＴＴＰリクエストにおいて指定されているＵＲＩに対応するデータを機器２０ａの記憶装置内より取得し、当該データを表現するＸＭＬ（eXtensible Markup Language）データをＨＴＴＰＳレスポンスに含めて仮想機器オブジェクト１１１Ｉａに返信する（Ｓ１１３）。
【００２８】
図５は、ＨＴＴＰＳレスポンスに含まれるＸＭＬデータの例を示す図である。同図においてデータ５１０は、Ａｔｏｍと呼ばれる書式に従っており、＜ｅｎｔｒｙ＞タグによって囲まれたｅｎｔｒｙ要素によって一つのデータが表現されている。タイトル要素５１１は、データ名を示す。ｉｄ要素５１２は、データを一意に識別するＩＤを示す。ｕｐｄａｔｅｄ要素５１３は、データが更新された日時を示す。５１４に示される部分にデータの値（実体）が含まれる。
【００２９】
続いて、仮想機器オブジェクト１１１Ｉａは、ＨＴＴＰＳレスポンスの受信に応じ、ＨＴＴＰＳレスポンスに含まれているＸＭＬデータ５１０をアプリケーション１２より参照可能な記憶領域であるデータＡオブジェクト１１４Ｉａに設定する（Ｓ１１４）。データＡオブジェクト１１４Ｉａは、ＸＭＬデータ５１０を解析し、データＡの実体の型変換等を行うことにより、ＸＭＬデータ５１０に含まれている情報を自らの属性（メンバ変数）に設定する。例えば、更新日時やデータＡの値等がそれぞれに対応する属性の値として設定される。
【００３０】
ステップＳ１０７における要求に対する応答が仮想機器オブジェクト１１１Ｉよりなされると（Ｓ１１５）、アプリケーション１２は、データＡオブジェクト１１４Ｉａを操作することにより、データＡオブジェクト１１４Ｉａに設定されているデータＡを取得することができる（Ｓ１１６）。なお、アプリケーション１２がデータＡの最新状態（最新の値）を把握するため、再度データＡを取得する場合、上述したステップＳ１０７〜Ｓ１１６と同様の処理が繰り返される（Ｓ１１７〜Ｓ１２６）。
【００３１】
上述したように、第一の実施の形態における機器管理クライアント１１は、機器情報を取得するための仕組みを上位のアプリケーション１２に対して提供する。したがって、アプリケーション１２に、通信制御やデータのＵＲＩ等を意識させる必要はない。よって、ユーザに応じたＧＵＩや機能を有するアプリケーション１２をより簡便に実装することができ、機器を監視又は管理するシステムの構築コストを低減させることができる。
【００３２】
ところで、第一の実施の形態では、データの最新状態を把握するためには、アプリケーション１２が機器管理クライアント１１に対して改めてデータの取得を要求する必要があった（ステップＳ１１７）。第二の実施の形態では、データの最新状態の把握についても機器管理クライアント１１において実現した例について説明する。
【００３３】
図６は、第二の実施の形態における管理装置のソフトウェア構成例を説明するためのクラス図である。図６中、図３と同一部分には同一符号を付し、その説明は省略する。
【００３４】
図６において、機器管理クライアント１１には、更新タイミングクラス１１６が含まれている。更新タイミングクラス１１６は、仮想機器オブジェクト１１１Ｉに機器情報の取得を定期的に実行させるための制御を行う。
【００３５】
図７は、第二の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。同図においてステップＳ２０１〜Ｓ２０６については、図４におけるステップＳ１０１〜Ｓ１０６と同様であるため、ここでの説明は省略する。
【００３６】
ステップＳ２０６に続いて、アプリケーション１２は、更新タイミングクラス１１６のインスタンス（更新タイミングオブジェクト１１６Ｉ）を生成する（Ｓ２０７）。生成の際、アプリケーション１２は、データを取得する周期（例えば、３０分）と、仮想機器オブジェクト１１１Ｉａと、データＡオブジェクト１１４Ｉａとを更新タイミングオブジェクト１１６Ｉに設定する。これにより、更新タイミングオブジェクト１１６Ｉは、機器２０ａよりデータＡを３０分おきに取得することを認識する。
【００３７】
続いて、アプリケーション１２が更新タイミングオブジェクト１１６Ｉに対して監視の開始を要求すると（Ｓ２０８）、更新タイミングオブジェクト１１６Ｉは、データＡの取得を実行する。具体的には、更新タイミングオブジェクト１１６Ｉは、図４のステップＳ１０７においてアプリケーション１２によって行われる要求と同じ要求を、仮想機器オブジェクト１１１Ｉａに対して行う（Ｓ２０９）。当該要求に応じ、ステップＳ２１０〜Ｓ２１５において、図４のステップＳ１０８〜Ｓ１１３と同様の処理が実行され、データＡに関するＸＭＬデータが機器管理サーバ２１ａより取得される。
【００３８】
ステップＳ１０９における要求に対する応答が仮想機器オブジェクト１１１Ｉよりなされると（Ｓ２１６）、更新タイミングオブジェクト１１６Ｉは、データＡオブジェクト１１４Ｉａより更新日時を取得する（Ｓ２１７、Ｓ２１８）。ここで取得される更新日時は、以前にデータＡが取得された際に、データＡオブジェクト１１４Ｉａに設定されたものである。続いて、更新タイミングオブジェクト１１６Ｉは、ＸＭＬデータ５１０に含まれている更新日時と、データＡオブジェクト１１４Ｉａより取得した更新日時とを比較することにより、データＡが、データＡオブジェクト１１４Ｉａに設定されている状態から更新されたか否かを判定する（Ｓ２１９）。
【００３９】
ＸＭＬデータ５１０に含まれている更新日時の方が新しい（後である）場合、すなわちデータＡが更新されている場合、更新タイミングオブジェクト１１６Ｉは、ＸＭＬデータ５１０をデータＡオブジェクト１１４Ｉａに設定する（Ｓ２２０）。一方、双方の更新日時が同じ場合、すなわちデータＡが更新されていない場合、ステップＳ２２０は実行されない。
【００４０】
更新タイミングオブジェクト１１６Ｉは、設定された周期でステップＳ２０９の要求を繰り返し行う。したがって、ステップＳ２０９〜Ｓ２２０の処理が定期的に実行され、データＡが更新された場合は、データＡオブジェクト１１４Ｉａに更新後の値が反映される。その後、アプリケーション１２が監視の終了を更新タイミングオブジェクト１１６Ｉに要求すると（Ｓ２２１）、更新タイミングオブジェクト１１６Ｉは、定期的なデータＡの取得を停止させる。
【００４１】
上述したように、第二の実施の形態における機器管理クライアント１１によれば、定期的に監視対象とするデータが取得される。したがって、アプリケーション１２が意識しなくとも、最新の状態におけるデータが管理装置１０側において適切に保持されうる。
【００４２】
次に、複数のデータ（データＡ及びデータＢ）を取得する例を第三の実施の形態として説明する。第三の実施の形態において特に言及しない点については第二の実施の形態と同様でよい。
【００４３】
図８は、第三の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。同図においてステップＳ３０１〜Ｓ３０６については、図７におけるステップＳ２０１〜Ｓ２０６と同様であるため、ここでの説明は省略する。
【００４４】
データＡオブジェクト１１４Ｉａの生成が完了すると、アプリケーション１２は、更に、データＢの識別子（例えば、データ名）を指定して、データＢに対応するオブジェクトの生成を機器情報オブジェクト１１２Ｉに要求する（Ｓ３０７）。機器情報オブジェクト１１２Ｉは、当該要求に応じ、ステップＳ３０６と同様の処理によって、データＢクラス１１５のインスタンス（データＢオブジェクト１１５Ｉａ）を生成する（Ｓ３０８）。
【００４５】
続いて、アプリケーション１２は、更新タイミングオブジェクト１１６Ｉを生成する（Ｓ３０９）。生成の際、アプリケーション１２は、データを取得する周期（例えば、３０分）と、仮想機器オブジェクト１１１ＩａとデータＡオブジェクト１１４Ｉａとを更新タイミングオブジェクト１１６Ｉに設定する。これにより、更新タイミングオブジェクト１１６Ｉは、機器２０ａよりデータＡを３０分おきに取得することを認識する。続いて、アプリケーション１２は、仮想機器オブジェクト１１１ＩａとデータＢオブジェクト１１５Ｉａとを引数として、監視対象の追加を更新タイミングオブジェクト１１６Ｉに要求する（Ｓ３１０）。これにより、更新タイミングオブジェクト１１６Ｉは、データＡだけでなくデータＢについても３０分おきに取得することを認識する。
【００４６】
続いて、アプリケーション１２が更新タイミングオブジェクト１１６Ｉに対して監視の開始を要求すると（Ｓ３１１）、更新タイミングオブジェクト１１６Ｉは、データＡオブジェクト１１４Ｉａ及びデータＢオブジェクト１１５Ｉａを引数として、データの取得を仮想機器オブジェクト１１１Ｉａに要求する（Ｓ３１２）。続いて、ステップＳ３１３〜Ｓ３１５において、図７のＳ２１４〜Ｓ２１６と同様の処理が実行される。但し、ステップＳ３１３におけるＨＴＴＰＳリクエストでは、ＧＥＴメソッドの引数として、ＡデータのＵＲＩとＢデータのＵＲＩとが並べられたもの（例えば、二つのＵＲＩがカンマ等の区切り文字で区切られたもの）が指定される。したがって、ステップ３１４におけるＨＴＴＰＳレスポンスでは、データＡに対応するＸＭＬデータ５１０（以下「ＸＭＬデータ５１０ａ」という。）とデータＢに対応するＸＭＬデータ５１０（以下「ＸＭＬデータ５１０ｂ」という。）とが含まれている。
【００４７】
なお、図８では、ステップＳ３１２とステップＳ３１３との間で行われる、データＡのＵＲＩの生成処理とデータＢのＵＲＩの生成処理とは省略されている。当該生成処理は、第一及び第二の実施の形態とほぼ同様に行えばよい。すなわち、仮想機器オブジェクト１１１Ｉａは、機器情報オブジェクト１１２Ｉに対して機器２０ａのＵＲＬ及びポート番号http://deviceA:80）を伝達する。機器情報オブジェクト１１２Ｉは、機器２０ａのＵＲＬ及びポート番号に、相対パスによる機器情報のＵＲＩを付加した結果（http://deviceA:80/sample/）をデータＡオブジェクト１１４Ｉａ及びデータＢオブジェクト１１５Ｉａの双方に伝達する。データＡオブジェクト１１４Ｉａは、相対パスによるデータＡのＵＲＩを付加して絶対パスによるデータＡのＵＲＩ（http://deviceA:80/sample/a1）を生成し、データＡのＵＲＩを機器情報オブジェクト１１２Ｉに返却する。また、データＢオブジェクト１１５Ｉａは、相対パスによるデータＢのＵＲＩを付加して絶対パスによるデータＢのＵＲＩ（http://deviceA:80/sample/b1）を生成し、データＢのＵＲＩを機器情報オブジェクト１１２Ｉに返却する。機器情報オブジェクト１１２Ｉは、データＡのＵＲＩとデータＢのＵＲＩとを仮想機器オブジェクト１１１Ｉに返却する。この二つのＵＲＩが区切り文字によって接続された文字列が、ステップＳ３１３のＨＴＴＰＳリクエストにおいてＧＥＴメソッドのパラメータとして指定される。
【００４８】
ステップＳ３１６〜Ｓ３１９においては、データＡに関して図７のステップＳ２１７〜Ｓ２２０と同様の処理が実行される。また、ステップＳ３２０〜Ｓ３２３においては、データＢに関して図７のステップＳ２１７〜Ｓ２２０と同様の処理が実行される。
【００４９】
更新タイミングオブジェクト１１６Ｉは、設定された周期でステップＳ３１２の要求を繰り返し行う。したがって、ステップＳ３１２〜Ｓ３２３の処理が定期的に実行され、データＡが更新された場合は、データＡオブジェクト１１４Ｉａに更新後の値が反映され、データＢが更新された場合は、データＢオブジェクト１１５Ｉａに更新後の値が反映される。その後、アプリケーション１２が監視の終了を更新タイミングオブジェクト１１６Ｉに要求すると（Ｓ３２４）、更新タイミングオブジェクト１１６Ｉは、定期的なデータＡ及びデータＢの取得を停止させる。
【００５０】
上述したように、第三の実施の形態における機器管理クライアント１１によれば、複数のデータについても適切に操作を行うことができる。
【００５１】
次に、複数の機器２０（機器２０ａ、機器２０ｂ）よりそれぞれのデータＡを取得する例を第四の実施の形態として説明する。第四の実施の形態において特に言及しない点については第三の実施の形態と同様でよい。
【００５２】
図９は、第四の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。同図においてステップＳ４０１〜Ｓ４０３については、図８におけるステップＳ３０１〜Ｓ３０３と同様であるため、ここでの説明は省略する。続いて、ステップＳ４０４〜Ｓ４０６において、ステップＳ４０１〜Ｓ４０３と同様の手順によって機器２０ｂに対応する仮想機器オブジェクト１１１Ｉｂが生成等される。なお、仮想機器オブジェクト１１１Ｉｂには、機器２０ｂのＵＲＬ（例えば、「http://deviceB」）及び機器管理サーバ２１（以下、「機器管理サーバ２１ｂ」という。）と通信するためのボート番号（例えば、「80」）が設定される。
【００５３】
続いて、ステップＳ４０７〜Ｓ４０９においては、図８のステップＳ３０４〜Ｓ３０６と同様の手順によって、機器情報オブジェクト１１２Ｉが生成され、更に、機器２０ａのデータＡに対応するデータａオブジェクト１１４Ｉａが生成される。更に、ステップＳ４１０及びＳ４１１では、ステップＳ４０８及びＳ４０９と同様の手順によって、機器２０ｂのデータＡに対応するデータＡオブジェクト１１４Ｉｂが生成される。
【００５４】
続いて、アプリケーション１２は、更新タイミングオブジェクト１１６Ｉを生成する（Ｓ４１２）。生成の際、アプリケーション１２は、データを取得する周期（例えば、３０分）と、仮想機器オブジェクト１１１ＩａとデータＡオブジェクト１１４Ｉａとを更新タイミングオブジェクト１１６Ｉに設定する。これにより、更新タイミングオブジェクト１１６Ｉは、機器２０ａよりデータＡを３０分おきに取得することを認識する。続いて、アプリケーション１２は、仮想機器オブジェクト１１１ＩｂとデータＡオブジェクト１１４Ｉｂとを引数として、監視対象の追加を更新タイミングオブジェクト１１６Ｉに要求する（Ｓ４１３）。これにより、更新タイミングオブジェクト１１６Ｉは、機器２０ｂからもデータＡを３０分おきに取得することを認識する。
【００５５】
続いて、アプリケーション１２が更新タイミングオブジェクト１１６Ｉに対して監視の開始を要求すると（Ｓ４１４）、更新タイミングオブジェクト１１６Ｉは、データＡオブジェクト１１４Ｉａを引数として、データの取得を仮想機器オブジェクト１１１Ｉａに要求する（Ｓ４１５）。続いて、ステップＳ４１６〜Ｓ４２２において、図７におけるステップＳ２１４〜Ｓ２２０と同様の手順によって、機器２０ａの機器管理サーバ２１ａよりデータＡに関するＸＭＬデータ５１０が取得され、当該ＸＭＬデータ５１０がデータＡオブジェクト１１４Ｉａに設定される。
【００５６】
続いて、更新タイミングオブジェクト１１６Ｉが、データＡオブジェクト１１４Ｉｂを引数として、データの取得を仮想機器オブジェクト１１１Ｉｂに要求すると（Ｓ４２３）、ステップＳ４２４〜Ｓ４３０において、ステップＳ４１６〜Ｓ４２２と同様の手順によって、機器２０ｂの機器管理サーバ２１ｂよりデータＡに関するＸＭＬデータ５１０が取得され、当該ＸＭＬデータ５１０がデータＡオブジェクト１１４Ｉｂに設定される。
【００５７】
更新タイミングオブジェクト１１６Ｉは、設定された周期でステップＳ４１５及びＳ４２３の要求を繰り返し行う。したがって、ステップＳ４１５〜Ｓ４２２及びステップＳ２４〜Ｓ４３０の処理が定期的に実行され、機器２０ａのデータＡが更新された場合は、データＡオブジェクト１１４Ｉａに更新後の値が反映され、機器２０ｂのデータＡが更新された場合は、データＡオブジェクト１１４Ｉｂに更新後の値が反映される。その後、アプリケーション１２が監視の終了を更新タイミングオブジェクト１１６Ｉに要求すると（Ｓ４３１）、更新タイミングオブジェクト１１６Ｉは、機器２０ａ及び１０ｂからの定期的なデータＡの取得を停止させる。
【００５８】
なお、機器２０ａのデータＡのＵＲＩの生成処理及び機器２０ｂのデータＡのＵＲＩの生成処理については、第四の実施の形態より前の実施の形態における説明より自明であるため、ここでの説明は省略する。
【００５９】
上述したように、第四の実施の形態における機器管理クライアント１１によれば、複数の機器２０のデータについても適切に操作を行うことができる。
【００６０】
次に、機器２０ａにおける二つのデータ（データＡ、データＢ）をそれぞれ異なるタイミング（周期）で取得する例を第五の実施の形態として説明する。第五の実施の形態において特に言及しない点については第三の実施の形態と同様でよい。
【００６１】
図１０は、第五の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。同図においてステップＳ５０１〜Ｓ５０８については、図８におけるステップＳ３０１〜Ｓ３０８と同様であるため、ここでの説明は省略する。
【００６２】
続いて、アプリケーション１２は、データＡに関する更新タイミングクラス１１６のインスタンスとして更新タイミングオブジェクト１１６Ｉａを生成する（Ｓ５０９）。生成の際、アプリケーション１２は、データを取得する周期（例えば、３０分）と、仮想機器オブジェクト１１１ＩａとデータＡオブジェクト１１４Ｉａとを更新タイミングオブジェクト１１６Ｉａに設定する。これにより、更新タイミングオブジェクト１１６Ｉａは、機器２０ａよりデータＡを３０分おきに取得することを認識する。
【００６３】
続いて、アプリケーション１２は、データＢに関する更新タイミングクラス１１６のインスタンスとして更新タイミングオブジェクト１１６Ｉｂを生成する（Ｓ５１０）。生成の際、アプリケーション１２は、データを取得する周期（例えば、５分）と、仮想機器オブジェクト１１１ＩａとデータＢオブジェクト１１５Ｉａとを更新タイミングオブジェクト１１６Ｉｂに設定する。これにより、更新タイミングオブジェクト１１６Ｉｂは、機器２０ａよりデータＢを５分おきに取得することを認識する。
【００６４】
続いて、アプリケーション１２は、更新タイミングオブジェクト１１６Ｉｂ及び１１６Ｉａのそれぞれに対して監視の開始を要求する（Ｓ５１１、Ｓ５１２）。更新タイミングオブジェクト１１６Ｉｂは、データＢオブジェクト１１５Ｉａを引数として、データの取得を仮想機器オブジェクト１１１Ｉａに要求する（Ｓ５２１）。続いて、ステップＳ５２２〜Ｓ５２８において、図７におけるステップＳ２１４〜Ｓ２２０と同様の手順によって、機器２０ａの機器管理サーバ２１ａよりデータＢに関するＸＭＬデータ５１０が取得され、当該ＸＭＬデータ５１０がデータＢオブジェクト１１５Ｉａに設定される。
【００６５】
一方、更新タイミングオブジェクト１１６Ｉａは、データＡオブジェクト１１４Ｉａを引数として、データの取得を仮想機器オブジェクト１１１Ｉａに要求する（Ｓ５３１）。続いて、ステップＳ５３２〜Ｓ５３８において、図７におけるステップＳ２１４〜Ｓ２２０と同様の手順によって、機器２０ａの機器管理サーバ２１ａよりデータＡに関するＸＭＬデータ５１０が取得され、当該ＸＭＬデータ５１０がデータＡオブジェクト１１４Ｉａに設定される。
【００６６】
更新タイミングオブジェクト１１６Ｉｂ及び１１６Ｉａは、それぞれに設定された周期でステップＳ５２１又はＳ５３１の要求を繰り返し行う。したがって、ステップＳ５２１〜Ｓ５２８及びステップＳ５３１〜Ｓ５３８の処理が定期的に実行され、機器２０ａのデータＢが更新された場合は、データＢオブジェクト１１５Ｉａに更新後の値が反映され、データＡが更新された場合は、データＡオブジェクト１１４Ｉａに更新後の値が反映される。なお、図１０の例では、更新タイミングオブジェクト１１６Ｉｂに設定された周期の方が短いため、データＢはデータＡより短い周期で取得される（Ｓ５４１〜Ｓ５４８）。
【００６７】
その後、アプリケーション１２が監視の終了を更新タイミングオブジェクト１１６Ｉａ及び１１６Ｉｂに要求すると（Ｓ５５１、Ｓ５５２）、更新タイミングオブジェクト１１６Ｉａ及び１１６ｂは、機器２０ａからの定期的なデータＡ、データＢの取得を停止させる。
【００６８】
上述したように、第五の実施の形態における機器管理クライアント１１によれば、複数のデータに対して異なるタイミング（周期）によって適切に操作を行うことができる。
【００６９】
なお、第四の実施の形態と第五の実施の形態とを組み合わせることで、異なる機器２０におけるデータを、異なる周期で取得するようにしてもよい。
【００７０】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【００７１】
【図１】本発明の実施の形態における機器管理システムの構成例を示す図である。
【図２】本発明の実施の形態における管理装置のハードウェア構成例を示す図である。
【図３】第一の実施の形態における管理装置のソフトウェア構成例を説明するためのクラス図である。
【図４】第一の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。
【図５】ＨＴＴＰＳレスポンスに含まれるＸＭＬデータの例を示す図である。
【図６】第二の実施の形態における管理装置のソフトウェア構成例を説明するためのクラス図である。
【図７】第二の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。
【図８】第三の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。
【図９】第四の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。
【図１０】第五の実施の形態における機器管理システムの処理手順を説明するためのシーケンス図である。
【符号の説明】
【００７２】
１            機器管理システム
１０、１０ａ、１０ｂ          管理装置
１１          機器管理クライアント
１２          アプリケーション
２０、２０ａ、２０ｂ、２０ｃ  機器
３０          ネットワーク
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
１０６        表示装置
１０７        入力装置
１１１        仮想機器クラス
１１２        機器情報クラス
１１３        データクラス
１１４        データＡクラス
１１５        データＢクラス
１１６        更新タイミングクラス
Ｂ            バス
【図１】
2009116703.tif 000003
【図２】
2009116703.tif 000004
【図３】
2009116703.tif 000005
【図４】
2009116703.tif 000006
【図５】
2009116703.tif 000007
【図６】
2009116703.tif 000008
【図７】
2009116703.tif 000009
【図８】
2009116703.tif 000010
【図９】
2009116703.tif 000011
【図１０】
2009116703.tif 000012