JP5453772B2 - リクエスト処理装置 - Google Patents

リクエスト処理装置 Download PDF

Info

Publication number
JP5453772B2
JP5453772B2 JP2008288090A JP2008288090A JP5453772B2 JP 5453772 B2 JP5453772 B2 JP 5453772B2 JP 2008288090 A JP2008288090 A JP 2008288090A JP 2008288090 A JP2008288090 A JP 2008288090A JP 5453772 B2 JP5453772 B2 JP 5453772B2
Authority
JP
Japan
Prior art keywords
request
buffer
stored
communication means
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008288090A
Other languages
English (en)
Other versions
JP2010114848A (ja
Inventor
康裕 大島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2008288090A priority Critical patent/JP5453772B2/ja
Publication of JP2010114848A publication Critical patent/JP2010114848A/ja
Application granted granted Critical
Publication of JP5453772B2 publication Critical patent/JP5453772B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、リクエスト処理装置に関する。
従来、スキャナ及びプリンタを備えたデジタル複合機が知られている。このデジタル複合機では、スキャナが画像を取り込むスキャナ機能、プリンタが印刷を行う印刷機能、スキャナが読み取った画像をプリンタが印刷するコピー機能、電話回線を介して画像の送受信を行うファクシミリ機能などを備えている(特許文献1)。こうしたデジタル複合機は、ネットワークを介して接続されたコンピュータからの指令に基づいて動作する。
特開2007−72771号公報
ところで、特許文献1に記載されたデジタル複合機では、ネットワークに接続する通信インタフェースを1つしか有していないため、こうした通信インタフェースを複数有している場合には、リクエストの競合が発生する可能性がある。こうした競合については、適切に対応する必要がある。
本発明は、このような課題に鑑みなされたものであり、複数の通信手段に接続された外部機器からのリクエストが競合したとしても適切に対応することができるリクエスト処理装置を提供することを主目的とする。
本発明は、上述の目的を達成するために以下の手段を採った。
本発明のリクエスト処理装置は、
第1通信手段と、
第2通信手段と、
前記第1通信手段で受信されたリクエストを保存可能な第1バッファと、
前記第2通信手段で受信されたリクエストを保存可能な第2バッファと、
前記第1及び第2通信手段で受信されたリクエストに対する所定の処理を実行可能な共通のアプリケーションが格納されたアプリケーション格納手段と、
前記第1及び第2バッファのいずれかにリクエストが保存されているか否かを判定し、リクエストが保存されていたならば前記アプリケーション格納手段から前記共通のアプリケーションを呼び出して該共通のアプリケーションに前記リクエストに対する所定の処理を実行させると共に、該所定の処理が終了するまでは前記第1及び第2バッファのいずれかに次のリクエストが格納されたとしても放置する調停手段と、
を備えたものである。
このリクエスト処理装置では、第1及び第2バッファのいずれかにリクエストが保存されているか否かを判定し、リクエストが保存されていたならば共通のアプリケーションを呼び出して該共通のアプリケーションにそのリクエストに対する所定の処理を実行させると共に、該所定の処理が終了するまでは第1及び第2バッファのいずれかに次のリクエストが格納されたとしても放置する。つまり、第1通信手段に接続された外部機器からのリクエストと第2通信手段に接続された外部機器からのリクエストが競合したとしても、実行中の処理が終了するまでは次のリクエストに対する処理を実行しない。もちろん、実行中の処理が終了したならば、次のリクエストの処理を開始する。したがって、複数の通信手段に接続された外部機器からのリクエストが競合したとしても適切に対応することができる。
なお、「所定の処理」は、特に限定されるものではないが、例えば、ファクシミリ送信処理、印刷処理、電子データ保存処理などが挙げられる。
本発明のリクエスト処理装置において、前記第1通信手段は、所定のプロトコルに従って通信する手段であり、前記第2通信手段は、前記第1通信手段とは異なるプロトコルに従って通信する手段であってもよい。このように互いに異なる通信手段を複数備える場合には、プロトコルスタック(物理層からアプリケーション層まで)の特性が各々異なるため、プロトコルスタックの一部を共通化しようとする思想がなかったが、ここではアプリケーションを共通化したため、各プロトコルごとに個別にアプリケーションを開発する場合に比べてコストの低減化を図ることができる。例えば、前記第1通信手段は、ネットワークプロトコルに従って通信する手段であり、前記第2通信手段は、USBプロトコルに従って通信する手段であってもよい。
本発明のリクエスト処理装置において、前記調停手段は、前記所定の処理が終了したあと、該所定の処理が前記第1及び第2バッファの一方のリクエストに対する処理だったときには、前記第1及び第2バッファの他方に保存されているリクエストを優先的に処理してもよい。こうすれば、各通信手段に接続された外部機器からのリクエストを平等に処理することができる。
本発明のリクエスト処理装置は、前記第1及び第2バッファとの間でデータの移動が可能であり前記共通のアプリケーションがアクセス可能な共有バッファを備え、前記調停手段は、前記第1及び第2バッファのいずれかにリクエストが保存されているか否かを判定し、リクエストが保存されていたならば該リクエストを前記共有バッファへ移動し、該共有バッファへのリクエストの移動をきっかけとして前記アプリケーション格納手段から前記共通のアプリケーションを呼び出して該共通のアプリケーションに前記リクエストに対する所定の処理を実行させてもよい。こうすれば、アプリケーションは第1及び第2通信手段のいずれで受信されたリクエストかを意識することなく処理を実行することができる。なお、共有バッファへのリクエストの移動をきっかけとしてアプリケーション格納手段から前記共通のアプリケーションを呼び出すには、例えば、共有バッファへリクエストが移動したか否かを絶えず監視し共有バッファへリクエストが移動したとき共通のアプリケーションを呼び出すようにしてもよいし、共有バッファへリクエストが移動すると事前に登録されているコールバック関数をコールして共通のアプリケーションを呼び出すようにしてもよい。
このような共有バッファを備えた本発明のリクエスト処理装置において、前記第1バッファは、前記第1通信手段へ送信すべきレスポンスも保存可能であり、前記第2バッファは、前記第2通信手段へ送信すべきレスポンスも保存可能であり、前記共通のアプリケーションは、前記所定の処理を実行したあとレスポンスを生成し前記リクエストに付された情報と共に前記共有バッファへ保存する機能を有し、前記調停手段は、前記第1及び第2バッファのいずれかにリクエストが保存されているか否かを判定し、前記第1及び第2通信手段のいずれのリクエストかを識別可能な識別情報を付して前記リクエストに付けて前記共有バッファへ移動し、該共有バッファへのリクエストの移動をきっかけとして前記アプリケーション格納手段から前記共通のアプリケーションを呼び出して該共通のアプリケーションに前記リクエストに対する所定の処理を実行させると共に、前記リクエストに対するレスポンスが前記識別情報を付されて前記共有バッファに保存されるまでは前記第1及び第2バッファのいずれかに次のリクエストが格納されたとしても放置し、前記共有バッファに前記レスポンスが前記識別情報を付されて前記共有バッファに保存されたあとは該識別情報に基づいてリクエストの送信元が前記第1及び第2通信手段のいずれであるかを判定し、該判定の結果に基づいて前記レスポンスを前記第1及び第2バッファのいずれかに保存してもよい。こうすれば、リクエストの送信元へ第1及び第2通信手段を介してレスポンスを返すことが可能となる。
次に、本発明を実施するための最良の形態を図面を用いて説明する。図1は、本発明を具現化した一実施形態であるマルチファンクションプリンタ(MFP)10の構成の概略を示す構成図である。
MFP10は、プリンタ機能、スキャナ機能、ファックス機能を有している。このMFP10は、印刷を実行する印刷モジュール20と、書類を読み取る読取モジュール22と、ファックス情報を送受信するファックスモデム24と、外部に設置されたコンピュータPC1との間でネットワークを介してデータを送受信するネットワークインタフェース26と、外部に設置されたコンピュータPC2との間でUSBケーブルを介してデータを送受信するUSBインタフェース28と、各種情報を表示したりユーザの指示を入力したりする操作パネル50と、装置全体の制御を司るメインコントローラ60とを備えている。なお、本明細書では、ネットワークを「NW」、インタフェースを「I/F」と表記することがある。
印刷モジュール20は、メインコントローラ60から印刷指令を受けると、その印刷指令の対象である印刷ジョブに基づいて、印刷ヘッドから記録紙Sへインクを吐出することにより印刷を実行する周知のインクジェット方式のカラープリンタ機構として構成されている。
読取モジュール22は、メインコントローラ60からの読取指令を受けると、ガラス台36に載置された書類を画像データとして読み取る周知のフラットベッド型のフルカラースキャナ機構として構成されている。この読取モジュール22は、書類に向かって発光したあとの反射光をレッド(R)、グリーン(G)、ブルー(B)の各色に分解して読取データとする周知のカラーイメージセンサを備えている。
ファックスモデム24は、メインコントローラ60からのファックス送信指令を受けると、ファックス送信する元のデータを送信先の通信方式に合わせた形式の送信データへと変換し、図示しない電話回線を介して接続された送信先の機器へその送信データを送信したり、電話回線を介して接続された機器から受信した受信データを画像データへと変換したりするよう構成されている。
ネットワークI/F26は、ネットワークに接続された外部の機器(例えばコンピュータPC1)との間でデータの送受信が可能なように構成されている。
USBI/F28は、USBケーブルを介して接続されたUSBホスト(例えばコンピュータPC2)との間でデータの送受信が可能なように構成されている。この場合、MFP10はUSBデバイスとして機能する。
操作パネル50は、液晶ディスプレイである表示部52と、コピーボタンや印刷ボタン、ファックス送信ボタン、スキャンボタン、電源ボタン、テンキーなどを含むボタン群54とを備えている。この操作パネル50は、各種情報を表示部52に表示したりユーザの指示をボタン群54の操作を介して入力したりする。
メインコントローラ60は、CPUを中心とするマイクロプロセッサとして構成されており、各種処理プログラムや各種データ、各種テーブルなどを記憶したROMや一時的に印刷データ等を記憶するRAMなどを備えている。このメインコントローラ60は、印刷モジュール20や読取モジュール22、ファックスモデム24、ネットワークI/F26、USBI/F28からの各種動作信号や各種検出信号、各種データを入力したり、操作パネル50のボタン群54の操作に応じて発生する操作信号を入力したりする。また、印刷を実行するよう印刷モジュール20に指令を出力したり、読取モジュール22へ各種制御信号を出力したり、操作パネル50の表示部52に制御信号を出力したりする。
こうして構成されたMFP10は、印刷処理やスキャン処理、コピー処理、ファックス送受信処理などの各種処理を実行する。印刷処理は、ネットワークI/F26又はUSBI/F28を介して入力された印刷ジョブに基づいて印刷モジュール20により記録紙Sへの印刷を行う処理である。スキャン処理は、ガラス台36に載置された原稿の画像を読取モジュール22により読み取る処理である。コピー処理は、読取モジュール22により読み取った画像データに基づいて印刷モジュール20により印刷を行う処理である。ファックス送受信処理は、読取モジュール22により読み取った画像データ又はネットワークI/F26かUSBI/F28を介して入力された画像データをファックスモデム24及び図示しない電話回線を介して外部の機器へ送信したり、ファックスモデム24及び電話回線を介して外部の機器から受信した画像データを印刷モジュール20により印刷したりする処理である。
ここで、MFP10のファックス送信処理を実行する際の機能ブロックを図2を用いて説明する。図2は、MFP10のメインコントローラ60を機能ブロックで表した説明図である。メインコントローラ60は、ネットワーク通信の際にプロトコルを制御するNWドメイン62と、USB通信及びネットワーク通信のいずれにおいても動作する共通ドメイン68とを備えている。NWドメイン62は、コンピュータPC1との間でネットワークを介してデータのやり取りを行うためのNW通信ドライバ64と、共通ドメイン68との間でドメインコミュニケーションを介してデータのやり取りを行うためのNWドメイン間通信ドライバ66とを備えている。このNWドメイン62は、下層から上層に向かって、物理層(有線又は無線)、TCP/IP、HTTP、MIME、SOAPヘッダ、WSAがこの順で積層されたプロトコルスタックにしたがってデータのやり取りを行う。なお、TCP/IPはTransmission Control Protocol/Internet Protocol、HTTPはHyperText Transfer Protocol、MIMEはMultipurpose Internet Mail Extension、SOAPはSimple Object Access Protocol、WSAはWebservice-addressingの略である。共通ドメイン68は、NWドメイン62との間でドメインコミュニケーションを介してデータのやり取りを行うNWドメイン間通信ドライバ70と、コンピュータPC2との間でUSBケーブルを介してデータのやり取りを行うUSB通信ドライバ74とを備えている。NWドメイン間通信ドライバ70は、NWドメイン間通信バッファ72を利用しながら、前述したプロトコルスタックにしたがってNWドメイン62のNWドメイン間通信ドライバ70とデータのやり取りを行う。NWドメイン間通信バッファ72には、受信用領域72aと送信用領域72bとが設けられている。一方、USB通信ドライバ74は、USB通信バッファ76を利用しながら、双方向パラレル通信を定義しているIEEE1284.4に準拠してUSBの通信を行う。USB通信バッファ76には、受信用領域76aと送信用領域76bとが設けられている。また、共通ドメイン68は、ネットワーク通信とUSB通信との調停を行うアービタ78と、このアービタ78により両通信バッファ72,76との間でデータの移動が行われる共有バッファ80と、NW通信及びUSB通信のいずれによって取得したリクエストかに依存することなくファックス送信処理を実行するアプリケーション82とを備えている。共有バッファ80には、受信用領域80aと送信用領域80bとが設けられている。また、アプリケーション82は、メインコントローラ60のROMに格納されている。
次に、MFP10の動作、特に、コンピュータPC1,PC2からのファックス送信処理を実行するときのMFP10の動作について説明する。コンピュータPC1,PC2がMFP10にファックス送信処理を実行させる場合、(1)プリンタ状態取得のリクエスト、(2)ファックス送信のリクエスト、(3)ファックスデータ送信のリクエスト、(4)ジョブステータス確認のリクエストを順次送信する。各リクエストは、直前に送信したリクエストに対するレスポンスを受信したあとに送信される。また、これらのリクエストは、SOAPメッセージとして送信される。
SOAPメッセージは、図3に示すように、通信プロトコルに依存するヘッダと、SOAPヘッダ(任意の要素)及びSOAPボディ(必須の要素)を含むSOAPエンベロープとで構成されている。SOAPヘッダには、SOAPメッセージの宛先が記述され、SOAPボディには、最終的なメッセージの受信者が処理を行う情報が記述される。コンピュータPC1やMFP10がネットワークを介して相手へ送信するSOAPメッセージを作成する場合、SOAPボディを作成し、WSAを管理するためのオペレーションやメッセージを決定し、それらをSOAPヘッダとすることによりSOAPエンベロープを作成し、HTTPに関するヘッダを追加する。こうすることにより、ネットワーク用のSOAPメッセージが完成する。一方、コンピュータPC2やMFP10がUSBを介して相手へ送信するSOAPメッセージを作成する場合、SOAPボディを作成し、SOAPヘッダのないSOAPエンベロープを作成し、USBに関するヘッダを追加する。こうすることにより、USB用のSOAPメッセージを作成する。ここで、SOAPメッセージの一例として、ファックス状態取得のリクエスト(前出の(1)参照)のSOAPメッセージの一例を図4及び図5に示す。図4はネットワーク用、図5はUSB用である。図4及び図5から明らかなように、いずれのSOAPメッセージもSOAPボディの内容は同じである。なお、「FAXout」はファックス送信を意味する。
図2の共通ドメイン68のNWドメイン間通信ドライバ70は、コンピュータPC1からネットワーク、NWドメイン62及びドメインコミュニケーションを介してSOAPメッセージを受信すると、SOAPヘッダを解読したあと、NWドメイン間通信バッファ72の受信用領域72aにSOAPボディのみを保存する。また、共通ドメイン68のUSB通信ドライバ74は、コンピュータPC2からUSBを介してSOAPメッセージを受信すると、USB通信バッファ76の受信用領域76aにSOAPボディのみを保存する。
共通ドメイン68のアービタ78は、MFP10の図示しないメインスイッチがオンされたあと、図6に示す調停ルーチンを実行する。この調停ルーチンが開始されると、アービタ78は、監視対象のI/FがネットワークI/F26かUSBI/F28かを判定する(ステップS100)。初期設定では、ネットワークI/F26が監視対象として設定される。続いて、監視対象のI/Fの通信バッファの受信用領域にリクエストが保存されているか否かを判定する(ステップS110)。具体的には、監視対象のI/FがネットワークI/F26の場合には、NWドメイン間通信バッファ72の受信用領域72aにリクエストが保存されているか否かを判定し、監視対象のI/FがUSBI/F28の場合には、USB通信バッファ76の受信用領域72aにリクエストが保存されているか否かを判定する。そして、ステップS110でリクエストが保存されていたならば、アービタ78はそのリクエストにI/F情報を付けて共有バッファ80の受信用領域80aへ移す(ステップS120)。ここで、I/F情報とは、監視対象となっているI/Fを表す情報である。
ここで、共有バッファ80の受信用領域80aにリクエストが格納されると、コールバックが発生してファックス送信用のアプリケーション82が共有バッファ80の受信用領域80aのリクエストとI/F情報を取りに行く。リクエストを取得したアプリケーション82は、そのリクエストの内容つまりSOAPボディの内容にしたがって処理を実行する。例えば、プリンタ状態取得のリクエスト(前出の(1)参照)の場合には、アプリケーション82は、MFP10の状態(待機状態、印刷実行中、読取実行中、ファックス送信中、ファックス受信中)を把握し、その結果を表すレスポンスを作成する処理を実行する。このとき、アプリケーション82は、そのリクエストがネットワークI/F26を介して受信したものかUSBI/F28を介して受信したものかを意識せずに処理を実行する。つまり、アプリケーション82は、リクエストと共にI/F情報も取得するが、そのI/F情報はそのまま保持しているだけである。その後、アプリケーション82は、作成したレスポンスをI/F情報と合わせて共有バッファ80の送信用領域80bへ書き込む。
さて、アービタ78は、ステップS120のあと、共有バッファ80の送信用領域80bにレスポンスが保存されたか否かを判定し(ステップS130)、レスポンスが保存されていなければそのまま待機する。一方、レスポンスが保存されていたならば、そのレスポンスに付いているI/F情報に基づいて返信先の通信バッファを認識し(ステップS140)、そのレスポンスを共有バッファ80の送信用領域80bから返信先の通信バッファの送信用領域へを移す(ステップS150)。具体的には、I/F情報がネットワークI/F26を表す場合には、レスポンスをNWドメイン間通信バッファ72の送信用領域72bへ移し、I/F情報がUSBI/F28を表す場合には、レスポンスをUSB通信バッファ76の送信用領域72bへ移す。その後、監視対象のI/Fを切り替え(ステップS160)、再びステップS110に戻る。こうすることにより、一方のI/Fで受信したリクエストの処理が終了したら、次はもう一方のI/Fで受信したリクエストの処理を優先して実行することになる。なお、ステップS110で監視対象の通信バッファの受信用領域にリクエストがなかったならば、監視対象のI/Fを切り替え(ステップS170)、再びステップS110に戻る。このように、アービタ78は、アプリケーション82が一つのリクエストに対するレスポンスを返すまで次のリクエストを取りに行かない(つまり、リクエストに対する処理が終了するまでは次のリクエストが格納されたとしても放置する)ため、アプリケーション82の処理におけるリクエスト−レスポンスのシリアライズが保持される。
そして、NWドメイン間通信バッファ72の送信用領域72bに保存されたレスポンスは、NWドメイン間通信ドライバ70によりドメインコミュニケーション、NWドメイン62及びネットワークを介してコンピュータPC1へ送信される。これにより、コンピュータPC1は、MFP10へ送ったリクエストに対するレスポンスを受信する。一方、USB通信バッファ76の送信用領域76bに保存されたレスポンスは、USB通信ドライバ74によりUSBを介してコンピュータPC2へ送信される。これにより、コンピュータPC2は、MFP10へ送ったリクエストに対するレスポンスを受信する。
次に、ネットワークを介してコンピュータPC1からリクエストを受信したときのアービタ78及びアプリケーション82の動作を図7を用いて説明する。図7は、MFP10の内部処理手順を表す説明図である。ここでは、NWドメイン間通信バッファ72の受信用領域72aにリクエストが保存されているものとして説明する。(a)アービタ78は、NWドメイン間通信バッファ72の受信用領域72aにリクエストが保存されていることを見つけると、そのリクエストをI/F情報(ここではネットワークI/Fを表す情報)を付けて共有バッファ80の受信用領域80aへ移す。(b)共有バッファ80の受信用領域80aにリクエストが格納されると、コールバックが発生する。(c)コールバックによりアプリケーション82が共有バッファ80の受信用領域80aのリクエストとI/F情報を取りに行く。(d)リクエストを取得したアプリケーション82は、そのリクエストつまりSOAPボディをパースし、その内容にしたがって処理を実行する。(e)アプリケーション82は、レスポンスを作成し、そのレスポンスをI/F情報と合わせて共有バッファ80の送信用領域80bへ書き込む。(f)アービタ78は、共有バッファ80の送信用領域80bにレスポンスが保存されていることを見つけると、そのレスポンスに付いているI/F情報を基に返信先がネットワークI/Fであることを認識し、そのレスポンスを共有バッファ80の送信用領域80bからNWドメイン間通信バッファ72の送信用領域72bへ移す。その後、アービタ78は、次のリクエストがUSB通信バッファ76の受信用領域76aに保存されているか否かを見に行く。
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のネットワークI/F26が本発明の第1通信手段に相当し、USBI/F28が第2通信手段に相当し、NWドメイン間通信バッファ72が第1バッファに相当し、USB通信バッファ76が第2バッファに相当し、アプリケーション82を格納するROMがアプリケーション格納手段に相当し、アービタ78が調停手段に相当する。
以上詳述した本実施形態のMFP20によれば、ネットワークI/F26に接続されたコンピュータPC1からのリクエストとUSBI/F28に接続されたコンピュータPC2からのリクエストが競合したとしても、アプリケーション82は、一つのリクエストに対する処理を終了するまでは次のリクエストに対する処理を実行しない。したがって、ネットワークI/F26に接続されたコンピュータPC1やUSBI/F28に接続されたコンピュータPC2からのリクエストが競合したとしても適切に対応することができる。
また、従来は、ネットワークI/FとUSBI/Fといった互いに異なるインタフェースを複数備える場合には、プロトコルスタックの特性が各々異なるため、プロトコルスタックの一部を共通化しようとする思想がなかったが、本実施形態ではアプリケーション82を共通化したため、各プロトコルごとに個別にアプリケーションを開発する場合に比べてコストの低減化を図ることができる。
更に、ネットワークI/F26とUSBI/F28の一方で受信したリクエストに対する処理が終了したあとは、もう一方で受信したリクエストに対する処理を優先的に実行するため、各インタフェースに接続されたコンピュータPC1,PC2からのリクエストを平等に処理することができる。
更にまた、インタフェースにかかわらず共通のSOAPボディを共有バッファ80の受信用領域80aに移動するのをきっかけとしてアプリケーション82がそのSOAPボディを解釈して処理を実行するため、アプリケーション82はインタフェースの種類を意識することなく処理を実行することができる。
そしてまた、NWドメイン間通信バッファ72及びUSB通信バッファ76はそれぞれ送信用領域72b、76bを備えているため、リクエストの送信元へネットワーク又はUSBを介してレスポンスを返すことが可能となる。
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
例えば、上述した実施形態では、アプリケーション82はファックス送信処理を実行するものとして説明したが、特にファックス送信処理に限定されるものではなく、例えば、印刷処理を実行するものであってもよいし、画像データ保存処理を実行するものであってもよい。
上述した実施形態では、共有バッファ80の受信用領域80aにリクエストが保存されると、そのリクエストはコールバック形式によってアプリケーション82に処理されるものとしたが、アプリケーション82が受信用領域80aにリクエストが保存されたか否かを監視し、リクエストが保存されたならばそのリクエストを読み出して処理してもよい。
上述した実施形態では、MFP10にネットワークを介してコンピュータPC1が接続され、USBを介してコンピュータPC2が接続されている場合を例示したが、2つの通信路は両方ともネットワークであってもよいし両方ともUSBであってもよい。また、ネットワークとUSBとが複数混在していてもよい。また、コンピュータPC1,PC2の代わりにデジタルカメラや携帯電話などの電子機器が接続されていてもよい。
上述した実施形態では、MFP10を本発明のリクエスト処理装置として説明したが、複合機能を持たないプリンタやスキャナ、ファクシミリ装置などを本発明のリクエスト装置としてもよい。
マルチファンクションプリンタ(MFP)10の構成の概略を示す構成図。 MFP10のメインコントローラ60を機能ブロックで表した説明図。 SOAPメッセージの模式図。 ネットワーク用のSOAPメッセージの具体例を示す説明図。 USB用のSOAPメッセージの具体例を示す説明図。 調停ルーチンのフローチャート。 MFP10の内部処理手順を表す説明図。
符号の説明
10 マルチファンクションプリンタ(MFP)、20 印刷モジュール、22 読取モジュール、24 ファックスモデム、26 ネットワークインタフェース、28 USBインタフェース、36 ガラス台、50 操作パネル、52 表示部、54 ボタン群、60 メインコントローラ、62 NWドメイン、64 NW通信ドライバ、66 NWドメイン間通信ドライバ、68 共通ドメイン、70 NWドメイン間通信ドライバ、72 ドメイン間通信バッファ、72a 受信用領域、72b 送信用領域、74 USB通信ドライバ、76 USB通信バッファ、76a 受信用領域、76b 送信用領域、78 アービタ、80 共有バッファ、80a 受信用領域、80b 送信用領域、82 アプリケーション、PC1,PC2 コンピュータ、S 記録紙。

Claims (5)

  1. 第1通信手段と、
    第2通信手段と、
    前記第1通信手段で受信されたリクエストを保存可能な第1バッファと、
    前記第2通信手段で受信されたリクエストを保存可能な第2バッファと、
    前記第1及び第2バッファとの間でデータの移動が可能な共有バッファと、
    前記第1及び第2通信手段で受信され、前記共有バッファに移動されたリクエストに対する所定の処理を実行可能な共通のアプリケーションが格納されたアプリケーション格納手段と、
    前記第1及び第2バッファのいずれかにリクエストが保存されているか否かを判定し、リクエストが保存されていたならば該リクエストを前記共有バッファへ移動し、前記アプリケーション格納手段から呼び出された前記共通のアプリケーションに該共有バッファへのリクエストの移動をきっかけとして前記リクエストに対する所定の処理を実行させると共に、該所定の処理が終了するまでは前記第1及び第2バッファのいずれかに次のリクエストが格納されたとしても放置する調停手段と、
    を備え、
    前記第1通信手段は、所定のプロトコルに従って通信する手段であり、
    前記第2通信手段は、前記第1通信手段とは異なるプロトコルに従って通信する手段である、
    リクエスト処理装置。
  2. 前記第1通信手段は、ネットワークプロトコルに従って通信する手段であり、
    前記第2通信手段は、USBプロトコルに従って通信する手段である、
    請求項1に記載のリクエスト処理装置。
  3. 前記調停手段は、前記所定の処理が終了したあと、該所定の処理が前記第1及び第2バッファの一方のリクエストに対する処理だったときには、前記第1及び第2バッファの他方に保存されているリクエストを優先的に処理する、
    請求項1又は2に記載のリクエスト処理装置。
  4. 前記第1バッファは、前記第1通信手段へ送信すべきレスポンスも保存可能であり、
    前記第2バッファは、前記第2通信手段へ送信すべきレスポンスも保存可能であり、
    前記共通のアプリケーションは、前記所定の処理を実行したあとレスポンスを生成し前記リクエストに付された情報と共に前記共有バッファへ保存する機能を有し、
    前記調停手段は、前記第1及び第2バッファのいずれかにリクエストが保存されているか否かを判定し、前記第1及び第2通信手段のいずれのリクエストかを識別可能な識別情報を付して前記リクエストに付けて前記共有バッファへ移動し、前記共有バッファに前記リクエストに対するレスポンスが前記識別情報を付されて前記共有バッファに保存されたあとは該識別情報に基づいて前記レスポンスを前記第1及び第2バッファのいずれかに保存する、
    請求項1〜3のいずれか1項に記載のリクエスト処理装置。
  5. 前記調停手段は、前記第1及び第2バッファのいずれかに保存されているリクエストを前記共有バッファへ移動した後、前記リクエストに対するレスポンスが前記識別情報を付されて前記共有バッファに保存されるまでは前記第1及び第2バッファのいずれかに次のリクエストが格納されたとしても放置する
    請求項4に記載のリクエスト処理装置。
JP2008288090A 2008-11-10 2008-11-10 リクエスト処理装置 Active JP5453772B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008288090A JP5453772B2 (ja) 2008-11-10 2008-11-10 リクエスト処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008288090A JP5453772B2 (ja) 2008-11-10 2008-11-10 リクエスト処理装置

Publications (2)

Publication Number Publication Date
JP2010114848A JP2010114848A (ja) 2010-05-20
JP5453772B2 true JP5453772B2 (ja) 2014-03-26

Family

ID=42303025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008288090A Active JP5453772B2 (ja) 2008-11-10 2008-11-10 リクエスト処理装置

Country Status (1)

Country Link
JP (1) JP5453772B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05224848A (ja) * 1992-02-14 1993-09-03 Canon Inc 印刷装置
JP2658931B2 (ja) * 1994-12-28 1997-09-30 日本電気株式会社 プリンタコントローラ
JP2006260596A (ja) * 2001-09-28 2006-09-28 Ricoh Co Ltd 描画情報取得方法、この方法をコンピュータに実行させるプログラムおよび画像形成装置
JP2006044169A (ja) * 2004-08-06 2006-02-16 Canon Inc 印刷装置、及びその制御方法
JP2007133778A (ja) * 2005-11-11 2007-05-31 Casio Electronics Co Ltd 印刷装置及び印刷システム

Also Published As

Publication number Publication date
JP2010114848A (ja) 2010-05-20

Similar Documents

Publication Publication Date Title
JP4254785B2 (ja) インターネットファクシミリ装置及び通信処理プログラム
EP2018036A2 (en) Facsimile transmission over a network
JP2005192022A (ja) 画像処理装置、画像処理装置の制御方法、および画像処理装置の制御プログラム
JP2010140160A (ja) 電子機器及び情報処理システム
US20040252323A1 (en) Image processing system and image scanning device
JP5453772B2 (ja) リクエスト処理装置
US20040227974A1 (en) Image processing system, scanner device and image processing method
JP6015177B2 (ja) 画像情報送信装置、画像情報送受信システムおよびプログラム
US8488162B2 (en) Communication apparatus using reconnection request, method of controlling the same, and storage medium
JP2009188500A (ja) 複合機選択装置、複合機及びジョブ処理方法
JP2008141489A (ja) 電子メール送信装置
US11108925B2 (en) Multi-function peripheral and image recording apparatus
CN100556063C (zh) 图像处理装置
JP4334547B2 (ja) 画像形成装置
JP2008141482A (ja) 電子メール送信装置
JP2006140812A (ja) 情報処理装置及びデータ送信プログラム
JP2007266832A (ja) ファクシミリ装置
JP2007030439A (ja) 画像出力装置および画像出力方法
US20100053666A1 (en) Image communication apparatus and computer readable medium
JP2001197247A (ja) 画像データ送受信装置及び通信システム
JP2019216451A (ja) 処理装置、処理方法、及びプログラム
JP2008078741A (ja) 文書出力装置
JP2007021789A (ja) 画像出力装置および画像出力方法
JP2006140684A (ja) プログラム
JP2006166365A (ja) コピーシステム、画像読み取り装置、コピー方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130903

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131101

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131223

R150 Certificate of patent or registration of utility model

Ref document number: 5453772

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350