JP7237745B2 - 情報処理装置、方法およびプログラム - Google Patents

情報処理装置、方法およびプログラム Download PDF

Info

Publication number
JP7237745B2
JP7237745B2 JP2019111182A JP2019111182A JP7237745B2 JP 7237745 B2 JP7237745 B2 JP 7237745B2 JP 2019111182 A JP2019111182 A JP 2019111182A JP 2019111182 A JP2019111182 A JP 2019111182A JP 7237745 B2 JP7237745 B2 JP 7237745B2
Authority
JP
Japan
Prior art keywords
application
request
management service
setting value
information processing
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
JP2019111182A
Other languages
English (en)
Other versions
JP2020205488A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2019111182A priority Critical patent/JP7237745B2/ja
Publication of JP2020205488A publication Critical patent/JP2020205488A/ja
Application granted granted Critical
Publication of JP7237745B2 publication Critical patent/JP7237745B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、情報処理装置、方法およびプログラムに関する。
設定値の配信(インポート・エクスポート)を提供するサービスと、設定値の配信を依頼するアプリケーションが動作する情報処理装置においては、設定値の配信に関する処理のときに装置内で排他的な処理が行われる。例えば、上記の情報処理装置が印刷装置である場合、設定値の配信に関する処理のときに、例えば設定値に影響を与えるジョブ(FAX送信やコピー)や、画面を介しての設定値の操作が一時的に停止される。
たとえば、特許文献1に記載のシステムでは、FAX送信やコピー等のジョブの実行を依頼しているアプリケーションの稼動中は、他のアプリケーションからのジョブの実行依頼を拒絶している。ジョブの実行を依頼したアプリケーションが終了するとジョブの排他が解除され、他のアプリケーションからジョブの実行依頼が可能になる。
特許第5488014号公報
この種の情報処理装置において、排他による機能制限を依頼したアプリケーションが何らかの理由で機能制限の解除前に終了することがある。かかる場合には、アプリケーションのリクエストに従う処理が終了したときに、依頼元のアプリケーションが応答できないことからサービスが機能制限を解除できず、情報処理装置の円滑な動作が抑制されうる。
本発明の一実施形態の情報処理装置は、アプリケーションと、アプリケーションからのリクエストに従う処理を実行するサービスと、が動作する。サービスは、アプリケーションからの機能制限の依頼に応じて、情報処理装置における機能制限の処理を実行し、機能制限の処理の後に、アプリケーションからのリクエストを受け付けて、当該リクエストに従う処理を実行し、リクエストに従う処理の完了をアプリケーションに通知し、アプリケーションからの機能制限の解除の依頼に応じて、機能制限を解除する。また、サービスは、リクエストに従う処理の完了を通知する前に、アプリケーションから機能制限の解除の予約指示を受け付け、予約指示を受け付けた場合には、リクエストに従う処理の完了をアプリケーションに通知することなく、機能制限を解除する。
本発明の情報処理装置によれば、アプリケーションからのリクエストに従う処理が終了したときの依頼元のアプリケーションの動作状態に拘わらず、情報処理装置の機能制限を解除できる。
第1実施形態のネットワークシステムの構成例を示す図である 印刷装置(MFP)および管理PCのハードウェア構成の一例を示す図である。 MFPのソフトウェア構造の一例を示す図である。 MFPの表示部に表示される画面の一例を示す図である。 第1実施形態のMFPの制御例を示す図である。 図5の続きの図である。 第1実施形態の設定値管理サービスの制御例を示す流れ図である。 設定データの書き込み処理の例を示す流れ図である。 終了予約の処理の例を示す流れ図である。 第1実施形態のアプリケーションの制御例を示す流れ図である。 インポート処理の例を示す流れ図である。 第2実施形態における設定データの書き込み処理の例を示す流れ図である。 第2実施形態における終了予約の処理の例を示す流れ図である。 第3実施形態のアプリケーションの制御例を示す流れ図である。 第4実施形態のアプリケーションの制御例を示す流れ図である。 第5実施形態における終了予約の処理の例を示す流れ図である。 第5実施形態のアプリケーションの制御例を示す流れ図である。
以下、本発明を実施するための形態について図面などを参照して説明する。
(第1実施形態)
図1は、第1実施形態のネットワークシステムの構成例を示す図である。なお、ネットワークシステムの各要素は、後述する本実施形態の機能を実行できるものであれば、単体の機器で構成されていてもよく、複数の機器で構成されていてもよい。
ネットワークシステムは、情報処理装置の一例としての印刷装置100と、管理PC(Personal Computer)110と、管理サーバ120を含む。印刷装置100、管理PC110および管理サーバ120は、インターネット、イントラネット等のネットワーク130を介して相互に接続されている。
印刷装置100は、例えば、印刷部、スキャナ部などのモジュールを有する複写機の一種としての複合機(MFP)である。印刷装置100は、用紙に対してトナーやインク等の記録剤を用いて画像形成を行う印刷機能に加え、スキャナ部での原稿読み取りによるFAXやコピー等の機能を備える。
また、印刷装置100は、記憶部101、印刷制御部102を機能構成として含む。記憶部101は、印刷やファクス等のジョブデータや、ログ、画面操作の履歴等のデータを保存して蓄積する。印刷制御部102は、ネットワーク130を介して受信した画像データの印刷を制御する。印刷装置100は、図1に示した機能構成以外に、FAX送受信部、ライセンス管理部、ネットワーク部等を有していてもよい。
本実施形態のネットワークシステムは、1台の印刷装置を含むものとする。しかし、ネットワークシステム内の印刷装置は1つに限定されず、複数台の印刷装置100を含んでもよい。また、ネットワークシステムは、複合機以外の情報処理装置として、例えば印刷部を有する印刷装置(プリンタ)や、スキャナ部を有する原稿読み取り装置(スキャナ)を含む構成であってもよい。なお、印刷装置100は、印刷部およびスキャナ部を有し、原稿のコピーを実行可能な複写機であってもよい。
管理PC110は、ネットワークシステムの管理者によって使用される情報処理装置であって、印刷装置100の稼動状態を一元的に管理する。例えば、管理者は、管理PC110に予め備えられているプログラム(管理ツール)を用いて、印刷装置100や他の印刷装置を管理する。
管理サーバ120は、データを蓄積し、印刷装置100の管理サービスを提供する情報処理装置である。管理サーバ120は、データを蓄積する記憶部121を有する。
図2は、印刷装置100、管理PC110のハードウェア構成の一例を示す図である。
まず、管理PC110のハードウェア構成について説明する。管理PC110は、CPU200、ROM201、RAM202、ハードディスク装置205、キーボード206、表示部207、ポインティングデバイス209、接続部210を備える。管理PC110の上記の各要素は、システムバス208を介して接続されている。
なお、CPUは、Central Processing Unitの略であり、ROMは、Read Only Memoryの略である。RAMは、Random Access Memoryの略である。
CPU200は、管理PC110の各要素を統括的に制御する。CPU200は、ハードディスク装置205に格納されているアプリケーションプログラム、プリンタードライバープログラム、OSのプログラム、制御プログラム等を実行する。更に、CPU200は、プログラムの実行に必要な情報やファイル等をRAM202に一時的に格納する制御を行う。CPU200は、ROM201又はハードディスク装置205などに記憶されたプログラムを読み出して処理を実行し、これにより管理PC110の機能が実現される。
ROM201は、不揮発性の記憶媒体であって、例えば、基本I/Oプログラム等のプログラム、文書処理に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。
RAM202は、CPU200の主メモリ、ワークエリア等の一時領域として機能する一時記憶部である。
管理PC110は、不図示のメディアドライブを備えてもよい。CPU200(コンピューター)によって読み取り可能なプログラムを格納した記憶媒体(メディア)からデータを読み出す記憶媒体読み込み部である。CPU200は、メディアドライブを介して、記憶媒体に記憶されたプログラム等を管理PC110にロードすることができる。
なお、管理PC110で使用される記憶媒体は、例えば、CD-ROM、CD-R、CD-RW、PCカード、DVD、ICメモリカード、MO、メモリスティック等がある。
ハードディスク装置(HD)205は、外部記憶部の一つであって、大容量メモリとして機能する。ハードディスク装置205は、アプリケーションプログラム、プリンタードライバープログラム、OS、制御プログラム、関連プログラム等を格納する。
キーボード(KBD)206は、ユーザの文字入力等を受け付ける入力部の一つである。
表示部207は、例えば、CRTや液晶モニタなどのディスプレイ装置であり、キーボード206から入力されたコマンドや、アプリケーションプログラムなどを表示する。
システムバス208は、管理PC110内のデータの流れを司るデータ伝送路である。
ポインティングデバイス(PD)209は、ユーザによる座標の入力等を受け付ける入力部の一つである。
接続部210は、双方向インターフェース211を介して外部装置とのデータの送受を行う通信インターフェースである。接続部210の通信先である外部装置は、図2に示す印刷装置100に限定されず、管理サーバ120や、図示しないクライアントPCであってもよい。なお、サーバ120や、クライアントPCのハードウェア構成は、管理PC110と同様であってもよい。
次に、印刷装置100のハードウェア構成について説明する。なお、以降の説明では、印刷装置100をMFP100とも表記する。
MFP100は、CPU220、ROM221、RAM222、外部メモリ223、操作部224、データ制御部225、接続部226、ハードディスク装置228、表示部229を備える。MFP100の上記の各要素は、システムバス227を介して接続されている。
CPU220は、MFP100の各要素を統括的に制御する。CPU220は、ハードディスク装置228に格納されているアプリケーションプログラムや、ROM221又は外部メモリ223に記憶された制御プログラム等を実行する。更に、CPU220は、プログラムの実行に必要な情報やファイル等をRAM222に一時的に格納する制御を行う。CPU220は、ROM221又はハードディスク装置228などに記憶されたプログラムを読み出して処理を実行し、これによりMFP100の機能が実現される。
例えば、CPU220は、ROM221又は外部メモリ223に記憶された制御プログラムに基づいて、接続部226を介して受信した印刷制御コマンド(送信データ)から画像信号をデータ制御部225に送信する。
また、MFP100にログ記録ソフトウェアがインストールされている場合、CPU220は、ROM221又はハードディスク装置228に記憶されたプログラムに基づくログの記録処理を実行する。
ROM221は、不揮発性の記憶媒体であって、例えば、MFP100を制御する制御プログラム、文書処理に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。
RAM222は、CPU220の主メモリ、ワークエリア等の一時領域として機能する一時記憶部である。
外部メモリ223は、オプションとして接続される記憶媒体であって、例えば、フォントデータ、エミュレーションプログラム、テンプレート用データ等を記憶する。
操作部224は、例えば表示デバイスと一体化されたタッチパネルモジュールであって、操作パネルや操作スイッチ等の入力部と、LEDや液晶パネル等の表示部を含む。操作部224は、MFP100を操作するユーザからの入力を受けるとともに、操作結果等を表示する。ユーザは、操作部224を介して、MFP100の設定情報の設定や、当該設定情報の確認等をすることができる。
データ制御部225は、MFP100の印刷を制御する印刷エンジンである。データ制御部225は、CPU220により制御され、ROM221、外部メモリ223等に記憶された制御プログラムにより、システムバス227を介して出力された画像信号を受信し、実際の印刷処理を行う。
接続部226は、双方向インターフェース211を介して外部装置とのデータの送受を行う通信インターフェースである。接続部226は、例えば、双方向インターフェース211を介して管理PC110の接続部210と通信する。これにより、MFP100は、管理PC110から印刷制御コマンド(送信データ)の受信や、管理PC110に対するMFP100の状態等の通知を行うことができる。
システムバス227は、MFP100内のデータの流れを司るデータ伝送路である。
ハードディスク装置228は、外部記憶部の一つであって、大容量メモリとして機能する。ハードディスク装置228は、例えば、フォントデータや印刷ジョブ等のデータを記憶する。
また、ハードディスク装置228は、複数のハードディスクで構成されていてもよい。例えば、MFP100は、MFP100のジョブのログ記録などに通常利用されるハードディスクとは別に、バックアップデータの記憶用のハードディスクを別個に有していてもよい。
さらに、ハードディスク装置228は、外部装置である記憶装置と置き換えることができる。ハードディスク装置228を外部の記憶装置と置き換える場合、MFP100は、接続部226を介して外部の記憶装置との間でデータの送受信を行う。
表示部229は、液晶モニタなどのディスプレイ装置であり、MFP100へのログイン画面や、MFP100にインストールされたアプリケーションプログラムの画面を表示する。なお、表示部229は、上記のタッチパネルモジュールの表示部としてMFP100に実装されていてもよい。
図3は、本実施形態におけるMFP100のソフトウェア構造の一例を示す図である。図3に示される各ソフトウェアモジュールの機能は、ROM221あるいはハードディスク装置228に格納されたプログラムをRAM222に読み込んだ後、CPU220がプログラムを実行することで実現される。
MFP100の各ソフトウェアはOS(Operating System)301上で動作する。OS301としては、一般的にはリアルタイムOSが使用されるが、Linux(登録商標)等の汎用OSを用いてもよい。
JavaVM302は、Java(登録商標)などの仮想マシンであり、アプリケーションの実行環境を提供する。アプリケーションフレームワーク303は、アプリケーションのライフサイクルを管理する機能、およびアプリケーションが共通で利用する機能を提供する。
アプリケーションA304およびB305は、それぞれMFP100に追加でインストールされるアプリケーションプログラムであり、MFP100上で様々な機能を提供する。これらのアプリケーションは、MFP100の外部からダウンロードしてMFP100にインストールすることができる。
例えば、アプリケーションA304およびB305は、操作部224を介してユーザと応答を行うことが可能である。また、アプリケーションA304およびB305は、画像データの生成や印刷指示をすることも可能である。
アプリ管理サービス306は、アプリケーションの管理機能を提供するプログラムである。アプリ管理サービス306は、例えば、操作部224および表示部229を介してユーザと応答を行う機能や、各アプリケーションのインストールやアンインストール、使用期間の延長依頼などの機能を提供する。
Native機能部310は、MFP100に組み込まれた標準的な機能を提供する。Native機能部310は、ファイル管理サービス311、設定値管理サービス312、表示管理サービス313およびジョブ管理サービス314を含む。
ファイル管理サービス311は、ハードディスク装置228内に記憶されるファイルの作成、更新、削除などの機能を提供する。
設定値管理サービス312は、MFP100の設定値のエクスポート機能およびインポート機能を提供する。エクスポート機能は、MFP100の設定値をファイルに記録し、MFP100の予め定められた記憶領域や、指定されたMFP100のネットワークフォルダあるいは記憶媒体へ保存する機能である。インポート機能は、設定値管理サービス312によってエクスポートされた設定値ファイルを読み込み、ファイルに記録されている設定値をMFP100に反映させる機能である。
表示管理サービス313は、MFP100の画面表示の制御を行う機能を提供する。表示管理サービス313は、例えば、指定された画面を表示部229に表示する。これを契機として、MFP100は、操作部224を介してユーザの操作を受け付けることでアプリケーションフレームワーク303を開始させ、アプリケーションやOS301に通知を行う。
ジョブ管理サービス314は、MFP100で実行される様々なジョブの生成、終了、停止、再開等を制御する。また、ジョブ管理サービス314は、ジョブ種(例えば、FAX送信、印刷)毎の実行の停止や再開等のジョブサービスの管理を行う。また、ジョブ管理サービス314は、各種ジョブを実行した場合にログを記録して、内部ログ情報としてハードディスク装置228に格納する。
なお、本実施形態では、JavaVM302、アプリケーションフレームワーク303はハードディスク装置228に格納されているものとする。また、Native機能部310はROM221に格納されているものとする。
図4は、MFP100の表示部229に表示される画面の一例を示す図である。
図4(A)は、MFP100起動直後に表示される画面400の一例を示す。画面400は、アイコンおよびタイトルの表示401、ガイダンス402、アイコン表示領域403およびファンクションアイコン404を含む。
図4(A)の表示401は、ホーム(初期画面)を意味するアイコンと、タイトル「メインメニュー」で構成されている。図4(A)のガイダンス402は、ユーザに操作を促すメッセージ(「目的のファンクションを選択します」)を表示している。
また、図4(A)のアイコン表示領域403には、複数のファンクションアイコン404が表示されている。個々のファンクションアイコン404は、MFP100に予め備えられた機能、あるいはアプリケーションのインストールまたは有効化によって追加された機能に対応している。例えば、バックアップのファンクションアイコン404は、MFP100のバックアップ機能を実行するためのアイコンである。
操作部224のタッチパネルの機能を利用してユーザがファンクションアイコン404を指定する入力を行うと、MFP100は指定されたファンクションアイコン404に対応する機能を実行する。
図4(B)は、バックアップ機能の実行中に表示される画面410の一例を示す。画面410は、アイコンおよびタイトルの表示411、サービス接続確認ボタン412、表示領域413、実行履歴ボタン414、定期バックアップ設定ボタン415、いますぐバックアップボタン416を含む。
ここで、バックアップ機能は、バックアップアプリケーションから呼び出され、指定されたバックアップ対象をアーカイブし、指定された場所に格納する。例えば、バックアップ機能は、MFP100のファームウェア、設定値、インストール済のアプリケーション、およびアプリケーションの設定値等、MFP100のハードディスク装置228に格納されているデータをアーカイブする。そして、バックアップ機能は、アーカイブしたデータを、MFP100の外部の記憶装置(例えば、管理サーバ120の記憶部121や、ネットワーク上の所定のデータストレージ(不図示)など)に保存する。
図4(B)の表示411は、バックアップ機能を示すアイコンと、タイトル「バックアップ」で構成されている。
サービス接続確認ボタン412は、バックアップサービスとの接続結果を表示させるボタンである。ユーザによってサービス接続確認ボタン412が押下されると、MFP100は、表示部229にサービス接続画面(不図示)を表示させ、管理サーバ120で稼動しているバックアップサービスとの接続結果を表示させる。
表示領域413には、最新のバックアップ情報が表示される。例えば、表示領域413には、最新のバックアップに関し、バックアップの実施日時、バックアップ結果およびバックアップの失敗理由などの情報が表示される。
実行履歴ボタン414は、バックアップの実行履歴を表示させるボタンである。ユーザによって実行履歴ボタン414が押下されると、MFP100は、バックアップの実施日時および簡単な結果をリスト形式で表示する画面(不図示)を表示部229に表示させる。
定期バックアップ設定ボタン415は、定期バックアップの設定画面を表示させるボタンである。ユーザによって定期バックアップ設定ボタン415が押下されると、MFP100は、定期バックアップの設定画面(不図示)を表示部229に表示させる。定期バックアップの設定画面では、MFP100は、定期バックアップの実施日時、バックアップ対象項目等の設定の入力を受け付ける。定期バックアップの設定がされると、バックアップ機能は、設定された実施日時が到来したときにバックアップを実行する。
いますぐバックアップボタン416は、バックアップを実行させるボタンである。ユーザによっていますぐバックアップボタン416が押下されると、MFP100は、後述の図4(C)のロック画面を表示部229に表示させるとともに、バックアップ機能にバックアップを実行させる。
なお、いますぐバックアップおよび定期バックアップの実行時には、MFP100の設定、インストール済みアプリケーションの一覧、アプリケーションの設定が取得される。そして、管理サーバ120で稼動しているバックアップサービスに上記の取得された設定が通知される。また、バックアップサービスは、例えば記憶部121の所定の領域に、通知された設定を格納する。
図4(C)は、画面ロック中に表示される画面420の一例を示す。
図4(C)の画面420は、例えば、図4(B)の画面410で指示されたいますぐバックアップの実行時に表示部229に表示される。なお、例えば、リストア画面(不図示)からバックアップデータの設定値をMFP100に反映させる復旧処理の実行時にも、メッセージの異なる同種の画面が表示部229に表示される。
画面420は、バックアップ中であることを示し、ユーザに電源の遮断をしないように促すメッセージ表示421を含む。MFP100の設定情報等をバックアップ中のときには、画面420の表示により、操作部224はユーザによる指示入力を受け付けない状態となる。
図4(C)の画面420は、バックアップの終了とともに表示が切り替えられ、表示部229にはバックアップ実行前の画面が表示される。例えば、図4(B)の画面410から、いますぐバックアップボタン416を押下してバックアップを実行すると、バックアップの実行中には画面420が表示されるが、バックアップの終了後には画面410が再び表示される。
図5、図6は、第1実施形態のMFP100の制御例を示す図である。
以下の説明では、MFP100にインストール済みのアプリケーションA(以下、単にアプリケーションと表記する)304が、MFP100に設定値をインポートするときの制御を説明する。なお、アプリケーション304は、MFP100にインポートする設定値(設定データ)を予め保持しているものとする。
ステップS501にて、アプリケーション304は、設定値管理サービス312が提供する機能に基づき、設定値管理サービス312に対して画面ロック要求を通知する。
ステップS502にて、設定値管理サービス312は、表示管理サービス313に対して画面ロックの依頼を行う。すなわち、設定値管理サービス312は、図4(c)に示す画面420を表示部229に表示させる依頼を行う。表示管理サービス313は、画面ロックの依頼を受けて、画面420の表示による画面のロック制御を行う。
また、図示はしないが、設定値管理サービス312は、Webサービスを介した外部の情報処理装置からの設定値の書き込み・読み込みを不能化(ロック)する処理も行う。以降、後述する画面ロックの解除が行われるまで、ユーザからの入力指示ができない状態となる。
ステップS503にて、設定値管理サービス312は、アプリケーション304に対して画面ロックの完了を通知する。
ステップS504にて、アプリケーション304は、設定値管理サービス312が提供する機能に基づき、設定値管理サービス312に対して排他要求を通知する。
ステップS505にて、設定値管理サービス312は、排他オブジェクトを取得する。
排他オブジェクトは、JavaVM302に予め用意され、アプリケーションフレームワーク303を介して取得・解放ができるオブジェクトである。排他対象と排他オブジェクトは紐付けて管理され、排他オブジェクトが取得できたときは、その排他オブジェクトに対応する排他対象を使用できるものとする。排他対象の使用が終了すると、排他対象に対応する排他オブジェクトが解放される。排他オブジェクトを取得できないときは、排他オブジェクトに対応する排他対象を使用できない。排他オブジェクトを同時に取得できなくすることで、排他処理が実現される。
図示しないが、排他オブジェクトの取得に失敗した場合は、設定値管理サービス312は、アプリケーション304に対して排他の失敗を通知する。以降、アプリケーション304は、排他要求が成功するまで排他要求の処理を繰り返す。つまり、設定値管理サービス312が排他オブジェクトを取得できたときだけ、設定値のインポート・エクスポートの依頼が成功することを意味している。
ステップS506にて、設定値管理サービス312は、ジョブ管理サービス314に対してジョブの排他を通知する。これにより、ジョブ管理サービス314は、設定値の変更に影響を受けるジョブサービスまたは設定値に影響するジョブサービス(FAX送信やコピー等)を一時的に停止する。
ステップS507にて、設定値管理サービス312は、アプリケーション304に対して排他の完了を通知する。図示しないが、ここでジョブの排他に失敗した場合は、設定値管理サービス312は、ステップS505で取得した排他オブジェクトを解放し、排他の失敗をアプリケーション304に通知する。以降、アプリケーション304は、排他要求が成功するまで排他要求処理を繰り返す。
ステップS508にて、アプリケーション304は、設定値管理サービス312に対してインポート要求を行う。すなわち、アプリケーション304は、設定値管理サービス312が提供する機能に基づき、設定値のインポートを要求する。
ステップS509にて、アプリケーション304は、インポートの対象となる設定データを設定値管理サービス312に送付する。
ステップS510にて、設定値管理サービス312は設定データを書き込む。すなわち、設定値管理サービス312は、ステップS509で受け取った設定データをファイル管理サービス311に送付し、ファイル管理サービス311は設定値をMFP100に反映する。
ステップS511にて、アプリケーション304は、設定値管理サービス312の提供する機能に基づき、設定値管理サービス312に対してインポートの処理結果を確認するための通信を行う。
ステップS512にて、設定値管理サービス312は、アプリケーション304に対してインポートの処理結果を応答する。このとき、設定値管理サービス312は、ステップS510の結果として、成功・失敗・処理中のいずれかの応答をアプリケーション304に返す。アプリケーション304は、設定値管理サービス312から成功の応答または失敗の応答があるまで、ステップS511以降の処理を繰り返す。なお、ステップS512で失敗が応答された場合には、アプリケーション304は、例外として不図示の失敗処理を行う。
次に、通常処理として、ステップS510の設定データの書き込みの後に、インポートの処理完了までアプリケーションが稼動している場合の制御例を説明する。この通常処理は、図6に示すステップS513からS522の処理を含む。
ステップS513にて、ファイル管理サービス311は、書き込みの完了を設定値管理サービス312に通知する。
ステップS514にて、アプリケーション304は、設定値管理サービス312に対して結果の確認のための通信を行う。この処理は、ステップS511と同様である。
ステップS515にて、設定値管理サービス312は、アプリケーション304に結果を応答する。この処理は、ステップS512と同様である。ここでは、ステップS513で書き込みが完了しているため、設定値管理サービス312は、成功の応答をアプリケーション304に返す。
ステップS516にて、アプリケーション304は、設定値管理サービス312が提供する機能に基づき、設定値管理サービス312に対して排他解除要求を通知する。
ステップS517にて、設定値管理サービス312は、ジョブ管理サービス314にジョブ排他解除を送付する。ジョブ管理サービス314は、ジョブ排他解除を受けると、ステップS506で一時停止したジョブサービスを再開する。
ステップS518にて、設定値管理サービス312は、ステップS505で取得した排他オブジェクトを解放する。
ステップS519にて、設定値管理サービス312は、アプリケーション304に排他解除完了を通知する。
ステップS520にて、アプリケーション304は、設定値管理サービス312が提供する機能に基づき、設定値管理サービス312に対して画面ロックの解除要求を送付する。
ステップS521にて、設定値管理サービス312は、表示管理サービス313に対して画面ロックの解除を依頼する。すなわち、設定値管理サービス312は、図4(c)に示すロック画面420の表示を、ロック画面が表示される前の画面に切り替える依頼を行う。
ステップS522にて、設定値管理サービス312は、アプリケーション304に対して画面ロックの解除完了を通知する。
以上の制御により、設定値のインポート中は、設定値変更に影響のあるジョブサービスが一時停止され、表示部229にはロック画面420が表示される。そして、設定値のインポートが完了した後にジョブサービスの停止が解除され、表示部229ではロック画面420の表示による画面のロックが解除される。したがって、インポートの実行中には、他のインポートやエクスポートの実行はできない状態となる。
次に、強制終了処理として、ステップS510の設定データの書き込みの後に、アプリケーションが終了する場合の制御例を説明する。この強制終了処理は、図6に示すステップS523からS529の処理を含む。強制終了処理のケースとしては、例えば、インポート要求が行われ、設定データを送付済みのアプリケーションにつきアップデートが発生し、アプリ管理サービス306からアプリケーションの終了が指示された場合などが挙げられる。
ステップS523にて、アプリ管理サービス306は、アプリケーションフレームワーク303が提供する機能に基づき、アプリケーション304に対して終了要求を送付する。
ステップS524にて、アプリケーション304は、設定値管理サービス312が提供する機能に基づき、設定値管理サービス312に対して終了予約を送付する。終了予約は、機能制限の解除の予約指示の一例である。
ステップS525にて、アプリケーション304は終了処理を行う。アプリケーション304は、例えば、確保済みのワーク領域の解放、動作ログファイルの保存等を行った後に、アプリケーションを終了させる。
ステップS526にて、ファイル管理サービス311は、書き込みの完了を設定値管理サービス312に通知する。この処理は、ステップS513と同様である。
ステップS527にて、設定値管理サービス312は、ジョブ管理サービス314にジョブ排他解除を送付する。この処理は、ステップS517と同様である。
ステップS528にて、設定値管理サービス312は、ステップS505で取得した排他オブジェクトを解放する。この処理は、ステップS518と同様である。
ステップS529にて、設定値管理サービス312は、表示管理サービス313に対して画面ロックの解除を依頼する。すなわち、設定値管理サービス312は、図4(c)に示すロック画面420の表示を、ロック画面が表示される前の画面に切り替える依頼を行う。この処理は、ステップS521と同様である。
以上の制御により、アプリケーション304から終了予約を受領した設定値管理サービス312は、ファイル管理サービス311から書き込み完了を受領すると、排他解除の要求を受領しなくともジョブ排他の解除処理を実行する。同様に、アプリケーション304から終了予約を受領した設定値管理サービス312は、ファイル管理サービス311から書き込み完了を受領すると、画面ロックの解除要求を受領しなくとも画面ロックの解除処理を実行する。つまり、設定値管理サービス312は、アプリケーションからのリクエストに従う処理が終了したときの依頼元のアプリケーション304の動作状態に拘わらず、終了予約に基づいてMFP100の機能制限を解除できる。
次に、図7~図9を用いて、設定値管理サービス312の処理について説明する。
図7は、第1実施形態の設定値管理サービス312の制御例を示す流れ図である。
ステップS601にて、設定値管理サービス312は、画面ロック要求を受領したか判断する。すなわち、設定値管理サービス312およびアプリケーション304の間で予め定められた所定の方法に基づき、アプリケーション304から画面ロック要求の通知があった場合、設定値管理サービス312は画面ロック要求を受領したと判断する。
画面ロック要求を受領したと判断された場合にはステップS602に処理が移行し、画面ロック要求を受領したと判断されない場合にはステップS603に処理が移行する。
ステップS602にて、設定値管理サービス312は、画面ロック処理を行う。画面ロック処理において、設定値管理サービス312は、表示管理サービス313が提供している所定の方法に基づき、表示管理サービス313に画面ロックの依頼を行う。ステップS602の処理は、図5に示すステップS502の処理に相当する。その後、処理はステップS601に戻る。
ステップS603にて、設定値管理サービス312は、画面ロック解除要求を受領したか判断する。すなわち、設定値管理サービス312およびアプリケーション304の間で予め定められた所定の方法に基づき、アプリケーション304から画面ロック解除要求の通知があった場合、設定値管理サービス312は画面ロック解除要求を受領したと判断する。
画面ロック解除要求を受領したと判断された場合にはステップS604に処理が移行し、画面ロック解除要求を受領したと判断されない場合にはステップS605に処理が移行する。
ステップS604にて、設定値管理サービス312は、画面ロック解除処理を行う。画面ロック解除処理において、設定値管理サービス312は、表示管理サービス313が提供している所定の方法に基づき、表示管理サービス313に画面ロック解除の依頼を行う。ステップS604の処理は、図6に示すステップS521の処理に相当する。その後、処理はステップS601に戻る。
ステップS605にて、設定値管理サービス312は、排他要求を受領したか判断する。すなわち、設定値管理サービス312およびアプリケーション304の間で予め定められた所定の方法に基づき、アプリケーション304から排他要求の通知があった場合、設定値管理サービス312は排他要求を受領したと判断する。
排他要求を受領したと判断された場合にはステップS606に処理が移行し、排他要求を受領したと判断されない場合にはステップS608に処理が移行する。
ステップS606にて、設定値管理サービス312は、排他オブジェクトの取得を行う。取得した排他オブジェクトは、例えばRAM222の記憶領域に確保されたワークエリアに適宜保存される。ステップS606の処理は、図5に示すステップS505の処理に相当する。
次にステップS607にて、設定値管理サービス312は、ジョブ排他の依頼処理を行う。ジョブ排他の依頼処理において、設定値管理サービス312は、ジョブ管理サービス314が提供している所定の方法に基づき、ジョブ管理サービス314にジョブ排他の依頼を行う。ステップS607の処理は、図5に示すステップS506の処理に相当する。その後、処理はステップS601に戻る。
ステップS608にて、設定値管理サービス312は、排他解除要求を受領したか判断する。すなわち、設定値管理サービス312およびアプリケーション304の間で予め定められた所定の方法に基づき、アプリケーション304から排他解除要求の通知があった場合、設定値管理サービス312は排他解除要求を受領したと判断する。
排他解除要求を受領したと判断された場合にはステップS609に処理が移行し、排他解除要求を受領したと判断されない場合にはステップS611に処理が移行する。
ステップS609にて、設定値管理サービス312は、ジョブ排他の解除処理を行う。ジョブ排他の解除処理において、設定値管理サービス312は、ジョブ管理サービス314が提供している所定の方法に基づき、ジョブ管理サービス314にジョブ排他解除の依頼を行う。ステップS609の処理は、図6に示すステップS517の処理に相当する。
次にステップS610にて、設定値管理サービス312は、ステップS606で取得された排他オブジェクトの解放を行う。ステップS610の処理は、図6に示すステップS518の処理に相当する。その後、処理はステップS601に戻る。
ステップS611にて、設定値管理サービス312は、設定データを受領したか判断する。設定データを受領したと判断された場合にはステップS612に処理が移行し、設定データを受領したと判断されない場合にはステップS613に処理が移行する。
ステップS612にて、設定値管理サービス312は、後述の設定データの書き込み処理(図8)を行う。ステップS612の処理は、図5に示すステップS510の処理に相当する。その後、処理はステップS601に戻る。
ステップS613にて、設定値管理サービス312は、書き込み完了通知を受領したか判断する。すなわち、設定値管理サービス312とファイル管理サービス311の間に予め定められた所定の方法に基づき、ファイル管理サービス311から書込み完了通知があった場合、設定値管理サービス312は書込み完了通知を受領したと判断する。
書き込み完了通知を受領したと判断された場合にはステップS614に処理が移行し、書き込み完了通知を受領したと判断されない場合にはステップS615に処理が移行する。
ステップS614にて、設定値管理サービス312は、結果格納の処理を行う。結果格納の処理において、設定値管理サービス312は、受領した書込み完了通知に含まれる結果情報(例えば、日時、書込み設定ファイル名等)を取り出し、RAM222等の記憶領域に確保した書込み結果格納領域に結果情報を適宜保存する。その後、処理はステップS601に戻る。
ステップS615にて、設定値管理サービス312は、結果問合せがあったか判断する。すなわち、設定値管理サービス312とアプリケーション304の間に予め定められた所定の方法に基づき、アプリケーション304から結果問合せの通知があった場合、設定値管理サービス312は結果問合せがあったと判断する。
結果問合せがあったと判断された場合にはステップS616に処理が移行し、結果問合せがあったと判断されない場合にはステップS617に処理が移行する。
ステップS616にて、設定値管理サービス312は、結果応答の処理を行う。結果応答の処理において、設定値管理サービス312は、書込み結果格納領域から結果情報を取り出し、設定値管理サービス312とアプリケーション304の間に予め定められた所定の方法に基づき、アプリケーション304に結果を応答する。ステップS616の処理は、図5に示すステップS512の処理、図6に示すステップS515の処理に相当する。その後、処理はステップS601に戻る。
ステップS617にて、設定値管理サービス312は、終了予約を受け付けたか判断する。すなわち、設定値管理サービス312とアプリケーション304の間に予め定められた所定の方法に基づき、アプリケーション304から終了予約の通知があった場合、設定値管理サービス312は終了予約を受け付けたと判断する。
終了予約を受け付けたと判断された場合にはステップS618に処理が移行し、終了予約を受け付けたと判断されない場合にはステップS601に処理が戻る。
ステップS618にて、設定値管理サービス312は、後述の終了予約の処理(図9)を行う。その後、処理はステップS601に戻る。以上で、図7の説明を終了する。
図8は、設定データの書き込み処理(図7のステップS612)の例を示す流れ図である。以下の説明では、アプリケーション304から受領した設定データは、RAM222等の記憶領域に確保したワークエリアに適宜保存されているものとする。
ステップS701にて、設定値管理サービス312は、データ終了か判断する。すなわち、上記のワークエリアに保存された書込み対象の設定データの書込みが全て完了した場合、設定値管理サービス312は、データ終了と判断する。
データ終了と判断された場合にはステップS704に処理が移行し、データ終了と判断されない場合にはステップS702に処理が移行する。
ステップS702にて、設定値管理サービス312は、データ書込みの処理を行う。すなわち、設定値管理サービス312は、ワークエリアに保存した書込み対象の設定データを取り出し、ファイル管理サービス311が提供する所定の方法に基づき、ファイル管理サービス311に書込み依頼を行う。
次にステップS703にて、設定値管理サービス312は、書き込みが成功したか判断する。すなわち、設定値管理サービス312は、ステップS702の書き込み依頼が成功した場合、書き込みが成功したと判断する。このステップでの判断対象は、設定データに含まれる書き込み対象の1件分の結果である。
書き込みが成功したと判断された場合にはステップS701に処理が戻る。一方、書き込みが失敗したと判断された場合にはステップS704に処理が移行する。
ステップS704にて、設定値管理サービス312は、データ書き込みの結果を、RAM222等の記憶領域に確保した書込み結果格納領域に保存する。その後、図8の処理は終了する。
なお、書き込み対象が複数ある場合に1件でも書き込みの失敗があると、結果は失敗として記録される。
図9は、終了予約の処理(図7のステップS618)の例を示す流れ図である。
ステップS801にて、設定値管理サービス312は、設定データの書込み完了か判断する。
設定データの書込み完了と判断された場合、処理はステップS802に移行する。一方、設定データの書込み完了と判断されない場合、設定値管理サービス312は、書込みが完了するまでステップS801を繰り返し、書込みの完了を待機する。
ステップS802にて、設定値管理サービス312は、ジョブ排他の解除処理を行う。本ステップは、図6に示すステップS527の処理に相当し、処理の内容は図7に示すステップS609の処理と同様である。
ステップS803にて、設定値管理サービス312は、排他オブジェクトの解放処理を行う。本ステップは、図6に示すステップS528の処理に相当し、処理の内容は図7に示すステップS610の処理と同様である。
ステップS804にて、設定値管理サービス312は、画面ロック解除処理を行う。その後、図9の処理は終了する。本ステップは、図6に示すステップS529の処理に相当し、処理の内容は図7に示すステップS604の処理と同様である。
次に、図10、図11を用いて、アプリケーション304の処理について説明する。
図10は、第1実施形態のアプリケーション304の制御例を示す流れ図である。
ステップS901にて、アプリケーション304は、インポートの指示があるか判断する。すなわち、アプリケーション304が提供する図示しない画面を介し、ユーザからバックアップデータのリストアの指示を受け付けたときに、アプリケーション304は、インポートの指示があったと判断する。
インポートの指示があったと判断された場合にはステップS902に処理が移行し、インポートの指示があったと判断されない場合にはステップS903に処理が移行する。
ステップS902にて、アプリケーション304は、後述のインポート処理(図11)を行う。その後、処理はステップS901に戻る。
ステップ903にて、アプリケーション304は、アプリ終了指示を受領したか判断する。すなわち、アプリケーションフレームワーク303が提供する機能によって、アプリケーション終了の指示を受け取った場合は、アプリケーション304は、アプリ終了指示を受領したと判断する。
アプリ終了指示を受領したと判断された場合にはステップS904に処理が移行し、アプリ終了指示を受領したと判断されない場合にはステップS907に処理が移行する。
ステップS904にて、アプリケーション304は、インポート依頼済か判断する。すなわち、後述のインポート処理(図11)を実行し、後述の結果問合せ処理で完了を受け取っていない場合(S909のNoの場合)に、アプリケーション304は、インポート依頼済と判断する。
インポート依頼済と判断された場合にはステップS905に処理が移行し、インポート依頼済と判断されない場合にはステップS906に処理が移行する。
ステップS905にて、アプリケーション304は、終了予約を送付する。すなわち、設定値管理サービス312とアプリケーション304の間で予め定められた所定の方法に基づき、アプリケーション304は、設定値管理サービス312に終了予約を送付する。本ステップは、図6に示すステップS524の処理に相当する。
ステップS906にて、アプリケーション304は、終了処理を行う。アプリケーション304は、例えば、RAM222等の記憶領域に一時確保したワーク領域の解放や、動作ログファイルの保存等を行った後に、アプリケーションを終了させて図10の処理が終了する。本ステップは、図6に示すステップS525の処理に相当する。
ステップS907にて、アプリケーション304は、インポート依頼済か判断する。本ステップの判断は、上記のステップS904と同様である。
インポート依頼済と判断された場合にはステップS908に処理が移行し、インポート依頼済と判断されない場合にはステップS901に処理が戻る。
ステップS908にて、アプリケーション304は、設定値管理サービス312に対して結果問い合わせを行う。すなわち、設定値管理サービス312とアプリケーション304の間で予め定められた所定の方法に基づき、アプリケーション304は、設定値管理サービス312へ結果の問い合せを送付する。本ステップは、図5に示すステップS511の処理、図6に示すステップS514の処理に相当する。
ステップS909にて、アプリケーション304は、応答が完了であるか判断する。すなわち、アプリケーション304は、ステップS908の問い合せに対する設定値管理サービス312の応答の種別を参照する。そして、設定値管理サービス312とアプリケーション304の間で予め定められている方法に基づく応答が完了を意味するものであれば、アプリケーション304は、応答が完了であると判断する。なお、完了以外の応答結果の種別としては、インポート実行中や、中断中などがある。
応答が完了であると判断された場合にはステップS910に処理が移行し、応答が完了であると判断されない場合にはステップ901に処理が戻る。
ステップS910にて、アプリケーション304は、設定値管理サービス312とアプリケーション304の間で予め定められた所定の方法に基づき、設定値管理サービス312へ排他解除要求を送付する。本ステップは、図6に示すステップS516の処理に相当する。
ステップS911にて、アプリケーション304は、設定値管理サービス312とアプリケーション304の間で予め定められた所定の方法に基づき、設定値管理サービス312へ画面ロックの解除要求を送付する。本ステップは、図6に示すステップS520の処理に相当する。その後、処理はステップS901に戻る。以上で、図10の説明を終了する。
図11は、インポート処理(図10のステップS902)の例を示す流れ図である。
ステップS1001にて、アプリケーション304は、設定値管理サービス312とアプリケーション304の間で予め定められた所定の方法に基づき、設定値管理サービス312へ画面ロック要求を送付する。本ステップは、図5に示すステップS501の処理に相当する。
ステップS1002にて、アプリケーション304は、設定値管理サービス312とアプリケーション304の間で予め定められた所定の方法に基づき、設定値管理サービス312へ排他要求を送付する。本ステップは、図5に示すステップS504の処理に相当する。
ステップS1003にて、アプリケーション304は、設定値管理サービス312とアプリケーション304の間で予め定められた所定の方法に基づき、設定値管理サービス312へ設定データを送付する。
ここで、設定データはファイルに記載され、ハードディスク装置228などの記憶装置に確保したワークエリアに格納されるものとする。また、設定データは、ファイル単位で送付される。送付対象の設定データが複数に分割されている場合は、送付する順番、送付結果、サイズ等は、アプリケーション304等により適宜管理されているものとする。
ステップS1004にて、アプリケーション304は、全データ送付済みか判断する。すなわち、アプリケーション304は、インポート対象のデータを記載した全ファイルが送付済みの場合は、全データ送付済みと判断する。
全データ送付済みと判断された場合には図11の処理が終了する。一方、全データ送付済みと判断されない場合にはステップS1003に処理が戻る。なお、ステップS1003~S1004の処理は、図5に示すステップS509の処理に相当する。以上で、図11の説明を終了する。
上記の第1実施形態によれば、排他対象となる資源の使用者(依頼元のアプリケーション304)が依頼した処理の完了前に終了しても、依頼された処理の実行中において排他対象となる資源の排他が継続される。そして、排他対象の資源は、依頼された処理の完了後に排他から解放される。よって、排他対象の資源について適切に排他制御が行われる。
なお、アプリケーション304が設定値管理サービス312に依頼する処理は、インポートだけに限定されるものではない。例えば、アプリケーション304が設定値管理サービス312にエクスポートを依頼する場合においても、上記の第1実施形態で説明したインポートの場合の構成を同様に適用できる。
(第2実施形態)
第1実施形態では、インポート依頼済のデータを全件書き込み完了後に、排他を解除する例を説明した。
ところで、例えば、インポートの対象とするデータサイズが大きくなり、ネットワークを介して送付するとタイムアウトが発生し、送付が完了しないことがある。このような場合には、アプリケーション304はインポート依頼を複数に分割し、インポートのデータを分割して送付する。しかしながら、分割したデータの一部を送付した後で、アプリケーションの終了が発生すると、MFP100にはインポートのデータが一部のみ反映され、残りのデータが反映されない事象が発生する。インポートのデータの一部が反映されないと、MFP100に不具合が生じうる。
第2実施形態では上記の事象に対応できる変形例を説明する。第2実施形態においては、簡単のため、第1実施形態との相違点を説明し、重複説明についてはいずれも省略する。
第2実施形態においては、設定値管理サービス312における設定データの書き込み処理(ステップS612)と、終了予約の処理(ステップS618)が第1実施形態と相違する。
図12は、第2実施形態における設定データの書き込み処理の例を示す流れ図である。
ステップS1101にて、設定値管理サービス312は現在設定を保存する。すなわち、設定値管理サービス312は、設定値管理サービス312が提供する設定値のエクスポート機能を利用して、MFP100の現在設定値を取得する。取得された現在設定値は、ハードディスク装置228などの記憶装置に確保されたワークエリアに保存される。
その後、処理はステップS1102に移行する。なお、図12のステップS1102からS1105の処理は、図8のステップS701からS704の処理と同様であるので、これらのステップに関する重複説明は省略する。
図13は、第2実施形態における終了予約の処理の例を示す流れ図である。
ここで、図13のステップS1201の処理は、図9のステップS801の処理と同様であり、図13のステップS1203からS1205の処理は、図9のステップS802からS804の処理とそれぞれ同様である。そのため、これらのステップに関する重複説明は省略する。
図13においては、ステップS1201で設定データの書込み完了と判断された場合、ステップS1202に処理が移行する。
ステップS1202にて、設定値管理サービス312は、保存済みの現在設定値を反映させる。すなわち、設定値管理サービス312は、図12のステップS1101で保存した現在設定値をワークエリアから取り出し、ファイル管理サービス311に送付する。これにより、ファイル管理サービス311は、送付された現在設定値をMFP100に反映する。その後、ステップS1203に処理が移行する。
上記の第2実施形態によれば、アプリケーション304が終了予約を送付すると、設定値管理サービス312は、MFP100の設定値をインポートの実行前の状態に戻すことができる。これにより、設定の不備による不具合の発生を抑制できる。
(第3実施形態)
上記の第2実施形態では、終了予約を受け付けたときにMFP100の設定をインポートの実行前の状態に戻す例を説明した。もっとも、分割されたインポートのデータのうち最後のデータを送信済みの場合は設定を実行前の状態に戻さなくてもよい。そのため、第3実施形態では、上記の事象に対応できる構成例を提案する。
第3実施形態においては、簡単のため、第2実施形態との相違点を説明し、重複説明についてはいずれも省略する。
第3実施形態においては、アプリケーション304の処理が第2実施形態と相違する。第3実施形態においては、第2実施形態で説明した終了予約の処理を、依頼の取り消しの処理と定義し、第1実施形態で説明した終了予約の処理とは区別して扱う。第3実施形態のアプリケーション304からは、第1実施形態で説明した終了予約の処理と、第2実施形態で説明した依頼の取り消しの処理とをそれぞれ呼び出すことが可能である。
図14は、第3実施形態のアプリケーション304の制御例を示す流れ図である。図14の処理は、第1実施形態の図10の処理に対応する。
ここで、図14のステップS1301からS1303の処理は、図10のステップS901からS903の処理とそれぞれ同様である。図14のステップS1305からS1311の処理は、図10のステップS905からS911の処理とそれぞれ同様である。そのため、これらのステップに関する重複説明は省略する。
ステップS1304にて、アプリケーション304は、全データ送付済みか判断する。すなわち、アプリケーション304は、インポート対象のデータを記載した全ファイルが送付済みの場合は、全データ送付済みと判断する。
全データ送付済みと判断された場合にはステップS1305に処理が移行し、アプリケーション304は、設定値管理サービス312に終了予約を送付する。なお、終了予約を受けた設定値管理サービス312は、図9に示す終了予約の処理を実行する。
一方、全データ送付済みと判断されない場合にはステップS1312に処理が移行し、アプリケーション304は、設定値管理サービス312に依頼の取消しを送付する。なお、依頼の取り消しを受けた設定値管理サービス312は、図13に示す終了予約(依頼の取消し)の処理を行う。
なお、ステップS1305またはS1312の終了後、アプリケーション304は、ステップS1306の終了処理を実行する。以上で、図14の説明を終了する。
上記の第3実施形態によれば、アプリケーション304が終了要求を受けたタイミングが全データの送付完了前であれば、MFP100の設定値をインポートの実行前の状態に戻す。これにより、設定不備による不具合の発生を抑制できる。
一方、アプリケーション304が終了要求を受けたタイミングが全データの送付後であれば、MFP100の設定についてインポートを完了させる。これにより、全設定の反映が成功するにも拘わらず設定前の状態に戻す無駄を避けることができる。
(第4実施形態)
上記の第1実施形態から第3実施形態では、アプリケーション304がアプリ管理サービス306から終了要求を受け、終了予約の送付を伴う終了処理を実行する例を説明した。しかしながら、実際には、アプリケーション304が終了処理をすることなく異常終了することもある。また、アプリケーション304が終了していなくても、デッドロックの発生により、画面ロックの解除要求や排他解除要求をアプリケーション304が送付できないこともある。そのため、第4実施形態では、上記の事象に対応できる構成例を提案する。
図15は、第4実施形態のアプリケーション304の制御例を示す流れ図である。なお、第4実施形態においては、簡単のため、第1実施形態との相違点を説明し、重複説明についてはいずれも省略する。
図15におけるステップS1401からS1403の処理は、図10のS901からS903の処理とそれぞれ同様である。
ただし、図15において、ステップS1402のインポート処理の後は、後述のステップS1404に処理が移行する。また、ステップS1403にて、アプリ終了指示を受領したと判断された場合にはステップS1405(終了処理)に処理が移行し、アプリ終了指示を受領したと判断されない場合にはステップS1406(インポート依頼済の判断)に処理が移行する。
ステップS1404にて、アプリケーション304は、設定値管理サービス312に終了予約を送付する。その後、処理はステップS1401に戻る。
なお、図15におけるステップS1405からS1410の処理は、図10のS906からS911の処理とそれぞれ同様である。
上記の第4実施形態によれば、アプリケーション304はインポート処理を実行した後に常に終了予約を送付する。これにより、アプリケーション304が排他解除要求や画面ロックの解除要求の前に強制終了しても、設定値管理サービス312は、排他解除や画面ロックの解除を行うことができる。また、デッドロックの発生により、排他解除要求や画面ロックの解除要求をアプリケーション304が出来なくとも、設定値管理サービス312は、排他解除や画面ロックの解除を行うことができる。
(第5実施形態)
例えば、アプリケーションの自動更新等では、インポート中の処理を一時的に停止させ、アプリケーションの更新後にインポートを再開することも想定される。そのため、第5実施形態では、上記の事象に対応できる構成例を提案する。
第5実施形態においては、簡単のため、第1実施形態との相違点を説明し、重複説明についてはいずれも省略する。第5実施形態では、設定値管理サービス312における終了予約の処理と、アプリケーション304の処理が相違する。
図16は、第5実施形態における終了予約の処理の例を示す流れ図である。
ここで、図16のステップS1501の処理は、図9のステップS801の処理と同様であり、図16のステップS1504からS1506の処理は、図9のステップS802からS804の処理とそれぞれ同様である。そのため、これらのステップに関する重複説明は省略する。
図16においては、ステップS1501で設定データの書込み完了と判断された場合、ステップS1502に処理が移行する。
ステップS1502にて、設定値管理サービス312は、設定データの送付が再開したか判断する。すなわち、設定値管理サービス312は、設定値管理サービス312とアプリケーション304の間で予め定められた所定の方法に基づき、設定値管理サービス312へ設定データが送付された場合、設定データの送付が再開したと判断する。
設定データの送付が再開したと判断された場合、図16の処理は終了する。一方、設定データの送付が再開したと判断されない場合、処理はステップS1503に移行する。
ステップS1503にて、設定値管理サービス312は、タイムアウトが発生したか判断する。タイムアウト値は、設定値管理サービス312によって管理されているものとする。設定値管理サービス312は、終了予約の処理を開始してからの経過時間を管理し、予め定められた時間を経過した場合は、タイムアウトが発生したと判断する。
タイムアウトが発生したと判断された場合、処理はステップS1504に移行する。一方、タイムアウトが発生したと判断されない場合、処理はステップS1502に戻る。以上で、図16の説明を終了する。
図17は、第5実施形態のアプリケーション304の制御例を示す流れ図である。図17の処理は、第1実施形態の図10の処理に対応する。なお、第5実施形態においては、簡単のため、第1実施形態との相違点を説明し、重複説明についてはいずれも省略する。
図17におけるステップS1601からS1602の処理は、図10のS901からS902の処理とそれぞれ同様である。
ただし、図17において、ステップS1601でインポートの指示があったと判断されない場合にはステップS1603に処理が移行する。
ステップS1603にて、アプリケーション304は、インポートの再開を指示されたか判断する。例えば、アプリケーション304が提供する図示しない画面を介し、ユーザからリストアの再開の指示を受け付けたときに、アプリケーション304は、インポートの再開を指示されたと判断する。
インポートの再開を指示されたと判断された場合、ステップS1602に処理が移行する。一方、インポートの再開を指示されたと判断されない場合、ステップS1604に処理が移行する。
図17におけるステップS1604からS1606の処理は、図10のステップS903からS905の処理とそれぞれ同様である。また、図17におけるステップS1608からS1613の処理は、図10のステップS906からS911の処理とそれぞれ同様である。
ただし、図17においては、ステップS1606で終了予約が送付された後、ステップS1607に処理が移行する。
ステップS1607にて、アプリケーション304は、インポート状況の保存を行う。例えば、アプリケーション304は、インポート予定データ一覧、各データのインポート結果などを、ハードディスク装置228等の記憶装置に確保したワークエリアに格納する。その後、ステップS1608(終了処理)に処理が移行する。以上で、図17の説明を終了する。
上記の第5実施形態によれば、インポート処理中のアプリケーション304を一時的に終了しても、タイムアウトが発生するまでの一定時間内であればインポートを再開させることができる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
100 印刷装置(MFP)
220 CPU
222 RAM
228 ハードディスク装置
304 アプリケーション
312 設定値管理サービス

Claims (12)

  1. アプリケーションと、前記アプリケーションからのリクエストに従う処理を実行するサービスと、が動作する情報処理装置であって、
    前記サービスは、
    前記アプリケーションからの機能制限の依頼に応じて、前記情報処理装置における機能制限の処理を実行し、
    前記機能制限の処理の後に、前記アプリケーションからのリクエストを受け付けて、当該リクエストに従う処理を実行し、
    前記リクエストに従う処理の完了を前記アプリケーションに通知し、
    前記アプリケーションからの機能制限の解除の依頼に応じて、前記機能制限を解除し、
    前記リクエストに従う処理の完了を通知する前に、前記アプリケーションから機能制限の解除の予約指示を受け付け、
    前記予約指示を受け付けた場合には、前記リクエストに従う処理の完了を前記アプリケーションに通知することなく、前記機能制限を解除する
    ことを特徴とする情報処理装置。
  2. 前記サービスは、前記予約指示を受け付けた場合には、前記リクエストに従う処理の完了した後に、前記機能制限を解除する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記機能制限は、前記サービスによる排他制御および前記情報処理装置の画面のロック制御の少なくともいずれかを含む
    ことを特徴とする請求項1または請求項2に記載の情報処理装置。
  4. 前記リクエストは、設定値のインポートまたはエクスポートのためのリクエストである
    ことを特徴とする請求項1から請求項3のいずれか一項に記載の情報処理装置。
  5. 前記サービスは、
    前記設定値の前記インポートのためのリクエストに従う処理の実行前に、前記情報処理装置における第1の設定値を記憶手段に保存し、
    前記予約指示を受け付けた場合には、前記情報処理装置にインポートされた第2の設定値を、保存された前記第1の設定値に戻すための処理を実行した後、前記機能制限を解除する
    ことを特徴とする請求項4に記載の情報処理装置。
  6. 前記サービスは、
    前記リクエストに従う処理の完了した後、前記リクエストが所定時間内に再開しない場合に、受け付けた前記予約指示に従い前記機能制限を解除する
    ことを特徴とする請求項1から請求項5のいずれか一項に記載の情報処理装置。
  7. 前記アプリケーションは、
    前記サービスに対して前記予約指示を送付した後で、当該アプリケーションの動作を終了させる
    ことを特徴とする請求項1から請求項6のいずれか一項に記載の情報処理装置。
  8. 前記アプリケーションは、
    前記リクエストに従う処理の対象となるデータが、前記サービスに対して送付が完了しているか判断し、
    前記サービスに前記データの送付が完了していなければ、前記リクエストに従う処理の取り消しと前記機能制限の解除とを含む前記予約指示を、前記サービスに対して送付する
    ことを特徴とする請求項1から請求項7のいずれか一項に記載の情報処理装置。
  9. 前記アプリケーションは、
    前記サービスに対する前記リクエストが完了したときに、前記サービスに対して前記予約指示を送付する
    ことを特徴とする請求項1から請求項8のいずれか一項に記載の情報処理装置。
  10. 前記情報処理装置は、プリンタ、複写機およびスキャナのいずれかに含まれる
    ことを特徴とする請求項1から請求項9のいずれか一項に記載の情報処理装置。
  11. アプリケーションからのリクエストに従う処理を実行する情報処理装置における方法であって、
    前記アプリケーションからの機能制限の依頼に応じて、前記情報処理装置における機能制限の処理を実行する工程と、
    前記機能制限の処理の後に、前記アプリケーションからのリクエストを受け付けて、当該リクエストに従う処理を実行する工程と、
    前記リクエストに従う処理の完了を前記アプリケーションに通知する工程と、
    前記アプリケーションからの機能制限の解除の依頼に応じて、前記機能制限を解除する工程と、
    前記リクエストに従う処理の完了を通知する前に、前記アプリケーションから機能制限の解除の予約指示を受け付ける工程と、
    前記予約指示を受け付けた場合には、前記リクエストに従う処理の完了を前記アプリケーションに通知することなく、前記機能制限を解除する工程と、を有する
    ことを特徴とする方法。
  12. アプリケーションからの機能制限の依頼に応じて、コンピュータにおける機能制限の処理を実行する工程と、
    前記機能制限の処理の後に、前記アプリケーションからのリクエストを受け付けて、当該リクエストに従う処理を実行する工程と、
    前記リクエストに従う処理の完了を前記アプリケーションに通知する工程と、
    前記アプリケーションからの機能制限の解除の依頼に応じて、前記機能制限を解除する工程と、
    前記リクエストに従う処理の完了を通知する前に、前記アプリケーションから機能制限の解除の予約指示を受け付ける工程と、
    前記予約指示を受け付けた場合には、前記リクエストに従う処理の完了を前記アプリケーションに通知することなく、前記機能制限を解除する工程と、
    をコンピュータに実行させるプログラム。

JP2019111182A 2019-06-14 2019-06-14 情報処理装置、方法およびプログラム Active JP7237745B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019111182A JP7237745B2 (ja) 2019-06-14 2019-06-14 情報処理装置、方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019111182A JP7237745B2 (ja) 2019-06-14 2019-06-14 情報処理装置、方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2020205488A JP2020205488A (ja) 2020-12-24
JP7237745B2 true JP7237745B2 (ja) 2023-03-13

Family

ID=73837092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019111182A Active JP7237745B2 (ja) 2019-06-14 2019-06-14 情報処理装置、方法およびプログラム

Country Status (1)

Country Link
JP (1) JP7237745B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6860740B1 (ja) 2020-04-27 2021-04-21 東洋インキScホールディングス株式会社 カーボンナノチューブ分散液、それを用いた二次電池電極用組成物、電極膜、および二次電池。

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001315414A (ja) 2000-05-10 2001-11-13 Canon Inc 印刷装置及び印刷データの処理方法、並びに印刷処理システム
JP2003233520A (ja) 2002-02-07 2003-08-22 Fujitsu Ltd ネットワーク上のファイル資源のためのファイル制御装置
JP2007219741A (ja) 2006-02-15 2007-08-30 Ricoh Co Ltd 情報処理装置、情報処理方法、記録媒体およびプログラム
JP2011197495A (ja) 2010-03-23 2011-10-06 Konica Minolta Business Technologies Inc 画像形成装置
JP2015014893A (ja) 2013-07-04 2015-01-22 キヤノン株式会社 情報処理装置、情報処理システム、それらの制御方法、及びプログラム
JP2015127128A (ja) 2013-12-27 2015-07-09 キヤノン株式会社 管理システム、管理システムにおける制御方法およびそのプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001315414A (ja) 2000-05-10 2001-11-13 Canon Inc 印刷装置及び印刷データの処理方法、並びに印刷処理システム
JP2003233520A (ja) 2002-02-07 2003-08-22 Fujitsu Ltd ネットワーク上のファイル資源のためのファイル制御装置
JP2007219741A (ja) 2006-02-15 2007-08-30 Ricoh Co Ltd 情報処理装置、情報処理方法、記録媒体およびプログラム
JP2011197495A (ja) 2010-03-23 2011-10-06 Konica Minolta Business Technologies Inc 画像形成装置
JP2015014893A (ja) 2013-07-04 2015-01-22 キヤノン株式会社 情報処理装置、情報処理システム、それらの制御方法、及びプログラム
JP2015127128A (ja) 2013-12-27 2015-07-09 キヤノン株式会社 管理システム、管理システムにおける制御方法およびそのプログラム

Also Published As

Publication number Publication date
JP2020205488A (ja) 2020-12-24

Similar Documents

Publication Publication Date Title
JP5383254B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
JP7129842B2 (ja) システム、画像形成装置、及びその制御方法、並びにプログラム
EP2378411A2 (en) Print server and printing apparatus, network printing system, and printing method
JP6272117B2 (ja) 印刷システム、印刷サーバー及び印刷制御方法とプログラム
CN111050014B (zh) 通信系统、信息处理装置及其控制方法
US10594879B2 (en) Information processing apparatus, information processing system, method for controlling information processing system, and storage medium
JP5599055B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
US12014097B2 (en) Recording medium, control method and information processing apparatus having print setting that selectively requires a password
JP3903024B2 (ja) 出力管理方法及び情報処理装置
JP7439207B2 (ja) プログラム
JP7483522B2 (ja) 画像形成装置及びその制御方法、並びにプログラム
JP6066006B2 (ja) 画像形成装置
JP6223152B2 (ja) 画像形成システム、画像処理装置及び画像処理装置の制御方法
JP7237745B2 (ja) 情報処理装置、方法およびプログラム
JP2012242895A (ja) ドキュメント変換装置、情報処理方法及びプログラム
US9197765B2 (en) Management apparatus, management method, and program
US20110283237A1 (en) Information processing apparatus, control method thereof, and storage medium
WO2016013217A1 (en) Image forming apparatus, system, method for controlling image forming apparatus, and program
JP2013116613A (ja) 印刷装置、その制御方法、及びプログラム
JP3962596B2 (ja) 印刷システム及びその印刷資源の利用方法
JP2020190862A (ja) 情報処理システム及びその制御方法
JP2014016964A (ja) 情報処理装置、情報処理方法及びプログラム
CN110764720B (zh) 打印设备、打印设备的控制方法和存储介质
US12267467B2 (en) Information processing apparatus, method of controlling information processing apparatus, and storage medium
JP2014042149A (ja) 画像形成装置及びその制御方法、並びにプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220527

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230126

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: 20230131

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230301

R151 Written notification of patent or utility model registration

Ref document number: 7237745

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151