JP2019207595A - Api呼出プログラム - Google Patents

Api呼出プログラム Download PDF

Info

Publication number
JP2019207595A
JP2019207595A JP2018103130A JP2018103130A JP2019207595A JP 2019207595 A JP2019207595 A JP 2019207595A JP 2018103130 A JP2018103130 A JP 2018103130A JP 2018103130 A JP2018103130 A JP 2018103130A JP 2019207595 A JP2019207595 A JP 2019207595A
Authority
JP
Japan
Prior art keywords
java
registered trademark
unit
api
application
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.)
Pending
Application number
JP2018103130A
Other languages
English (en)
Inventor
達也 華山
Tatsuya Hanayama
達也 華山
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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions 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 Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Priority to JP2018103130A priority Critical patent/JP2019207595A/ja
Publication of JP2019207595A publication Critical patent/JP2019207595A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】アプリケーション開発等をさらに効率良く行う。【解決手段】JAVA(登録商標)プラットフォーム300のリフレクション機能部320により、JAVA(登録商標)に標準で搭載されているAPIを保持するとともに、クラス名やメソッド名を指定しクラスを動的に実行し、JAVA(登録商標)プラットフォーム300のJAVA(登録商標)VM310により、外部端末から呼出対象のAPI情報を含むHttpリクエストを受け取ると、API情報が示すAPIをリフレクション機能部320から呼び出し、JAVA(登録商標)アプリケーションの手順に従い、APIの処理を実行する。また、JAVA(登録商標)VM310は、APIの実行結果をHttpリクエストを送信した外部端末に返す。【選択図】図2

Description

本発明は、API(Application Programming Interface)を用いてのアプリケーションの開発等における動作確認に適したAPI呼出プログラムに関する。
例えば、多機能プリンターや、MFP(Multifunction Peripheral)等の画像形成装置においては、印刷機能、コピー機能、FAX機能、スキャナー機能、ネットワーク経由でのデータ送受信機能等の様々な機能が搭載されている機種がある。ところで、このような画像形成装置においては、例えば既存の機能を拡張させたアプリケーションの開発等が行われることがある。この場合、APIを用いることにより、既存のアプリケーションの利用等が可能となり、アプリケーション開発等を効率良く行うことができる。
このようなAPIを用いたものとして、特許文献1で提案されているソフトウェア開発支援装置が知られている。このソフトウェア開発支援装置は、開発支援装置に、所定の処理を実行する単位オブジェクトを生成するためのクラスを記憶するクラス記憶手段と、クラスを読み込んで単位オブジェクトを生成する手段と、クラスに対応する拡張機能オブジェクトを実行する拡張機能実行手段とを有するオブジェクト管理手段と、クラスに含まれる注釈情報を解析する注釈解析手段とを備え、オブジェクト生成手段が、拡張機能を実行するための注釈情報が存在する場合、注釈情報の解析結果にもとづき拡張機能オブジェクトを生成し、単位オブジェクトが所定のアプリケーションから呼び出されて実行されると、拡張機能実行手段が拡張機能オブジェクトを実行する。
特開2010−250378号公報
上述した特許文献1のソフトウェア開発支援装置では、ソフトウェア開発支援装置に、監視・管理に関連するMBean(Managed Bean)等の単位オブジェクトに対するコンテナ機能を組み込んで、専用の注釈情報をMBean等に付与可能にし、これを解析することで、拡張機能オブジェクトやMBeanInfo等を生成している。これにより、JMX(JAVA(登録商標)Management Extensions)等に関連するコーディングの簡略化を図ることが可能となり、ソフトウェア開発を効率良く行える。
ところで、このソフトウェア開発支援装置は、JMX仕様のAPIを用いている。ここで、JMX仕様のAPIは、所定の処理を実行する一又は二以上の単位オブジェクトを生成するためのクラスを記憶させておき、クラスを呼び出すためのルールを前もって決めておく必要がある。このようなことから、APIの処理を実行するに先立ちこれらの準備作業が必要となり、アプリケーション開発等をさらに効率良く行うことができないという問題がある。
本発明は、このような状況に鑑みてなされたものであり、上記問題点を解消することができるAPI呼出プログラムを提供することを目的とする。
本発明のAPI呼出プログラムは、ハードウェア資源を備えた画像形成装置を制御するコンピューターにより実行されるAPI呼出プログラムであって、機器制御プラットフォームにより、オペレーティングシステム上でハードウェア資源を管理する工程と、標準アプリケーション実行部により、前記機器制御プラットフォームで管理される前記ハードウェア資源を利用する標準アプリケーションを実行する工程と、JAVA(登録商標)プラットフォームのJAVA(登録商標)アプリケーション管理部により、JAVA(登録商標)アプリケーションを管理する工程と、前記JAVA(登録商標)プラットフォームのリフレクション機能部により、JAVA(登録商標)に標準で搭載されているAPIを保持するとともに、クラス名やメソッド名を指定しクラスを動的に実行する工程と、前記JAVA(登録商標)プラットフォームのJAVA(登録商標)VMにより、外部端末から呼出対象のAPI情報を含むHttpリクエストを受け取ると、前記API情報が示すAPIを前記リフレクション機能部から呼び出し、前記JAVA(登録商標)アプリケーションの手順に従い、前記APIの処理を実行する工程とを有し、前記JAVA(登録商標)VMは、前記APIの実行結果を前記Httpリクエストを送信した前記外部端末に返すことを特徴とする。
本発明のAPI呼出プログラムでは、機器制御プラットフォームにより、オペレーティングシステム上でハードウェア資源を管理し、標準アプリケーション実行部により、機器制御プラットフォームで管理されるハードウェア資源を利用する標準アプリケーションを実行し、JAVA(登録商標)プラットフォームのJAVA(登録商標)アプリケーション管理部により、JAVA(登録商標)アプリケーションを管理し、JAVA(登録商標)プラットフォームのリフレクション機能部により、JAVA(登録商標)に標準で搭載されているAPIを保持するとともに、クラス名やメソッド名を指定しクラスを動的に実行し、JAVA(登録商標)プラットフォームのJAVA(登録商標)VMにより、外部端末から呼出対象のAPI情報を含むHttpリクエストを受け取ると、API情報が示すAPIをリフレクション機能部から呼び出し、JAVA(登録商標)アプリケーションの手順に従い、APIの処理を実行する。また、JAVA(登録商標)VMは、APIの実行結果をHttpリクエストを送信した外部端末に返す。
これにより、JAVA(登録商標)プラットフォームは、外部端末から受け取ったHttpリクエストの呼出対象のAPI情報を元に、API情報が示すAPIをリフレクション機能部から呼び出すことで、APIの処理を実行できることから、 APIの処理を実行するに先立ち、従来のように、所定の処理を実行する一又は二以上の単位オブジェクトを生成するためのクラスを記憶させたり、クラスを呼び出すためのルールを前もって決めておいたりする準備作業が不要となる。
本発明のAPI呼出プログラムによれば、APIの処理を実行するに先立ち、APIの処理の実行に係わる準備作業が不要となるので、アプリケーション開発等をさらに効率良く行うことができる。
本発明のAPI呼出プログラムを搭載した画像形成装置の一実施形態を説明するための図である。 図1の画像形成装置の制御構成を説明するための図である。 図1の画像形成装置でのAPI処理を説明するための図である。
以下、本発明の画像形成装置の一実施形態を、図1〜図3を参照しながら説明する。まず、図1に示すように、画像形成装置1は、画像処理部11、原稿読取部12、原稿給送部13、搬送部14、ネットワーク送受信部15、操作パネル部16、画像形成部17、FAX(Facsimile)送受信部18、記憶部19、及び拡張デバイス20等が、制御部10に接続されている。各部は、制御部10によって動作制御される。
制御部10は、GPP(General Purpose Processor)、CPU(Central Processing Unit、中央処理装置)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)、ASIC(Application Specific Processor、特定用途向けプロセッサー)等の情報処理部である。制御部10は、記憶部19のEEPROM(electrically erasable and programmable read-only memory)、又はHDD(Hard Disk Drive)に記憶されている制御プログラムを読み出し、この制御プログラムをRAM(Random Access Memory)に展開させて実行する。また、制御部10は、詳細については後述するが、ネットワーク送受信部15を介し、PC(Personal Computer)等の外部端末から受け取った呼出対象のAPI(Application Programming Interface)情報を含むHttp(HyperText Markup Language)リクエストに基づき、後述の図2のJAVA(登録商標)アプリ400の手順に従い、APIを実行する。
画像処理部11は、DSP(Digital Signal Processor)やGPU(Graphics Processing Unit)等の制御演算部である。画像処理部11は、各種の画像データに対して特定の画像処理を実行する。画像処理部11は、例えば、拡大縮小、濃度調整、階調調整、画像改善等の各種画像処理を行う。画像処理部11は、原稿読取部12で読み取られた画像を、記憶部19に印刷データとして記憶する。この際、画像処理部11は、印刷データをPDFやTIFF等のフォーマットのファイル単位に変換することも可能である。
原稿読取部12は、セットされた原稿を読み取る(スキャン)。原稿給送部13は、原稿読取部12で読み取られる原稿を搬送する。搬送部14は、給紙カセットから記録紙を搬送し、画像形成部17で画像形成させ、その後にスタックトレイへ搬送する。画像形成部17は、ユーザーの出力指示により、記憶部19に記憶され、原稿読取部12で読み取られ、又は外部の端末から取得されたデータから記録紙への画像形成を行わせる。
ネットワーク送受信部15は、LAN、無線LAN、WAN、携帯電話網等の外部ネットワークに接続するためのLANボードや無線送受信機等を含むネットワーク接続部である。ネットワーク送受信部15は、データ通信用の回線ではPC(Personal Computer)等の外部端末との間でデータを送受信し、音声電話回線では音声信号を送受信する。ネットワーク送受信部15は、ネットワークを介して、図示しないスマートフォンやPDA(Personal Data Assistant)や携帯電話等の外部の端末、サーバー等に接続されていてもよい。
操作パネル部16は、LCD等の表示部と、テンキー、スタート、キャンセル、コピー(複写)、FAX送信、スキャナー等の動作モードの切り換えのボタンと、選択された文書の印刷、送信、保存、記録等に関するジョブの実行に係る指示を行うためのボタン若しくはタッチパネル等の入力部とを備えている。操作パネル部16は、ユーザーの指示を取得する。このユーザーの指示は、後述の図2のJAVA(登録商標)アプリ400(JAVA(登録商標)アプリケーション)のインストールや使用の指示を含む。また、ユーザーの指示により、各ユーザーの情報を入力、変更することも可能である。このため、操作パネル部16は、専用の制御部とROMやRAM等の記憶媒体を備えて、制御部10と連携してGUI(Graphical User Interface)の制御を行ってもよい。また、操作パネル部16には、USBメモリーやフラッシュメモリーカードの記憶媒体や記憶媒体を内蔵した外部機器を接続するための接続部が備えられていてもよい。
FAX送受信部18は、ファクシミリの送受信を行うFAXボード等である。FAX送受信部18は、原稿読取部12で読み取られた画像データやネットワーク送受信部15から受信したファイル等を描画してファクシミリ送信する。また、FAX送受信部18は、記憶部19に記憶され、ファクシミリ受信された画像データを画像形成部17で画像形成させ、ネットワーク送受信部15から外部の端末へ送信する。
記憶部19は、EEPROM(electrically erasable and programmable read-only memory)、RAM(Random Access Memory)、フラッシュメモリー等の半導体メモリーやHDD(Hard Disk Drive)等の記憶媒体と、このコントローラー等を含む。記憶部19のROMやフラッシュメモリーやHDDには、画像形成装置1の動作制御を行うための制御プログラム及びデータが記憶されている。これらの制御プログラム及びデータは、ファームウェアのような形式で提供されていてもよい。また、このファームウェアは、画像形成装置1の既存の構成における各種制御プログラムとデータがセットになった標準ファームウェアを含んでいてもよい。また、これらの制御プログラムとデータとは、実行時にRAM等に展開されて、制御部10により実行される。また、記憶部19は、各種ジョブデータ、原稿読取部12でスキャンされた画像データ、画像処理部11で画像処理された画像データ、他の端末(図示せず)から送信された印刷文書等のファイル、接続された記憶媒体から読み出された各種ファイル、サムネイル画像のデータ等を記憶してもよい。また、記憶部19は、ユーザーのアカウント設定も記憶してもよい。また、記憶部19には、ユーザー毎の文書ボックスの領域が含まれていてもよい。
拡張デバイス20は、画像形成装置1の標準の構成では含まれていなかったり後付けされたりする機器である。拡張デバイス20は、例えば、記録紙の出力後の後処理を行うフィニッシャー、独自のユーザー認証を行うユーザー認証部、周囲環境の監視を行う監視カメラ等、ユーザーの環境に対応したオプション機器であってもよい。拡張デバイス20は、原稿読取部12とは異なる外付けのスキャナー、コンビニエンスストア等の店舗用端末、特別なフォーマットに対応した用紙を印刷するための紙送り装置、複数管理用の管理端末、工場検査用の検査機器等のユーザー環境用機器であってもよい。
なお、画像形成装置1において、制御部10及び画像処理部11は、GPU内蔵CPU等やチップ・オン・モジュールパッケージのように、一体的に形成されていてもよい。また、制御部10及び画像処理部11は、RAMやROMやフラッシュメモリー等を内蔵していてもよい。また、以下では、画像形成装置1の拡張デバイス20以外の制御部10〜記憶部19のハードウェア資源を「標準ハードウェア」と呼ぶ。また、拡張デバイス20等により、画像形成装置1に追加されるハードウェア資源を「追加ハードウェア」と呼ぶ。
次に、図2を参照し、画像形成装置1の制御構成について説明する。画像形成装置1は、三つの階層的なブロック構造として、標準アプリ実行部100(標準アプリケーション実行部)、機器制御プラットフォーム200、及びJAVA(登録商標)プラットフォーム300(JAVA(登録商標)プラットフォーム)を備えている。なお、符号400は、APIを実行する手順を示すJAVA(登録商標)アプリ(JAVA(登録商標)アプリケーション)を示している。
そして、制御部10が制御プログラムを実行することにより、標準アプリ実行部100、機器制御プラットフォーム200、及びJAVA(登録商標)プラットフォーム300が実現される。また、制御部10は、三つの階層的なブロック構造の制御構成に基づいて、JAVA(登録商標)アプリ400、標準アプリ120、汎用OS230等を実行することができる。
標準アプリ実行部100は、機器制御プラットフォーム200で管理されたハードウェア資源を利用する標準アプリ120を実行する。標準アプリ実行部100は、機器制御プラットフォーム200上にインストールされた標準アプリ120と、この標準アプリ120に対応するサービスを備えている。
機器制御プラットフォーム200は、汎用OS230(Operating System、オペレーティングシステム)上で、画像形成装置1全体のハードウェア資源を管理し、機能単位で各部を制御する。機器制御プラットフォーム200は、標準アプリ120の実行基盤となるAPI(Application Programming Interface)やミドルウェアやランタイムやリンカー等(以下、「API等」という。)、汎用OS230上のサービス(Service、Daemon、以下「サービス等」という。)、スクリプト言語や中間言語の翻訳や実行を行うインタプリター(Interpreter)やJIT(Just In Time compiler)やバーチャルマシン等(以下、「バーチャルマシン等」という。)を含むプログラムやデータである。また、JAVA(登録商標)プラットフォーム300自体も、汎用OS230上で動作する。
JAVA(登録商標)プラットフォーム300は、PC等の外部端末から受け取った呼出対象のAPI情報を解析し、APIの処理を実行する。JAVA(登録商標)プラットフォーム300は、JAVA(登録商標)VM(Virtual Machine)310、リフレクション機能部320、JAVA(登録商標)アプリ管理部330を含むプログラムやデータである。JAVA(登録商標)VM310は、PC等の外部端末から受け取った呼出対象のAPI情報が示すAPIをリフレクション機能部320から呼び出し、JAVA(登録商標)アプリ400の手順に従い処理を実行する。また、JAVA(登録商標)VM310は、APIの処理を実行し、実行結果をHttpリクエストを受け取ったPC等の外部端末に返す。なお、APIの一例としては、例えばコピーアプリ121、プリンターアプリ122、FAXアプリ123、各種標準アプリ124のそれぞれに新たな機能を付加することができるアプリを開発できるような内容としてもよい。
リフレクション機能部320は、JAVA(登録商標)の標準的なlibraryであって、JAVA(登録商標)に標準で搭載されているAPIを保持するとともに、クラス名やメソッド名を指定しクラスを動的に実行する。JAVA(登録商標)アプリ管理部330は、JAVA(登録商標)アプリ400のインストール、画像形成装置1から使用可能な状態とするアクティベーション、実行、実行終了、アンインストール等をJAVA(登録商標)プラットフォーム300のAPIにより管理する。なお、JAVA(登録商標)プラットフォーム300は、標準アプリケーション実行部100により実行される各種アプリの機能を利用させる各種機能サービスを呼び出し可能な機能サービス管理部を含んでもよい。なお、APIの実行後においては、JAVA(登録商標)アプリ400をアンインストールしてもよい。
また、上述した標準アプリ実行部100は、標準アプリ120、及び標準アプリサービスIF部110(標準アプリケーションサービスインターフェイス部)を備えている。標準アプリ120は、機器制御プラットフォーム200上で各種処理を行うアプリのプログラム及びデータである。標準アプリ120は、ユーザーの指示を取得し、このユーザーの指示により画像形成装置の各種機能を利用する。また、標準アプリ120は、例えば、JAVA(登録商標)等の中間言語のアプリや、各種スクリプト言語等で記載されていてもよい。
標準アプリ120は、例えば、コピーアプリ121、プリンターアプリ122、FAXアプリ123、各種標準アプリ124等が、工場出荷状態で既にインストールされていてもよい。コピーアプリ121は、操作パネル部16からのユーザーによるコピーの指示を取得すると、原稿読取部12から原稿を読み取って、画像形成部17により画像形成させる。プリンターアプリ122は、外部の端末(図示せず)からの指示等により、ネットワーク送受信部15で受信したPDL(Page Description Language)等のファイルを描画して、画像形成部17により画像形成させる。また、プリンターアプリ122は、操作パネル部16によるユーザーの指示により、記憶部19の文書ボックス内のファイル等を描画して、画像形成部17により画像形成させてもよい。FAXアプリ123は、ユーザーの操作パネル部16からのファクシミリ送信の指示を取得すると、原稿読取部12から原稿を読み取って、FAX送受信部18によりファクシミリ送信する。また、FAXアプリ123は、外部の端末から受信したファイル等を描画して、FAX送受信部18により送信してもよい。また、FAXアプリ123は、FAX送受信部18により受信されたファクシミリの画像データを、画像形成部17により画像形成させる。また、FAXアプリ123は、受信されたファクシミリの画像データを記憶部19の文書ボックスに記憶してもよい。なお、画像形成装置1の使用開始後に標準アプリ120がインストールされてもよい。つまり、例えば、FAX送受信部のFAXボードが取り付けられた際に、FAXアプリ123がインストールされる等の処理が行われてもよい。また、ハードウェアの構成に関わらず、独自の標準アプリ120をユーザーがインストールすることも可能である。各種標準アプリ124は、送信アプリ等である。
標準アプリサービスIF部110は、アプリ実行部の外部から標準アプリ120の機能を利用するためのインターフェイスを提供する。標準アプリサービスIF部110は、例えば、JAVA(登録商標)等のクラス、JAVA(登録商標)言語上のインターフェイス、ルーチン、関数、ヘッダーファイル、オブジェクト、ライブラリー等として提供されていてもよい。また、標準アプリサービスIF部110は、汎用OS230上のサービス等として提供されていてもよい。また、標準アプリサービスIF部110は、標準アプリ120毎に異なるインターフェイスを提供していてもよい。また、標準アプリサービスIF部110は、標準アプリ120の実行、インストール、設定の変更、削除等を行うことも可能である。
機器制御プラットフォーム200は、プラットフォームサービスIF部210(プラットフォームサービスインターフェイス部)、各部制御用サービス220、及び汎用OS230を備えている。プラットフォームサービスIF部210は、機器制御プラットフォーム200の外部からハードウェア資源を利用するためのインターフェイスを提供する。プラットフォームサービスIF部210は、各部制御用サービス220を呼び出して、画像形成装置1の各部のハードウェア資源を利用させる。プラットフォームサービスIF部210は、例えば、API等、又は汎用OS230上のサービス等として提供されていてもよい。また、プラットフォームサービスIF部210は、C言語の構造体、C++言語のクラス、その他のオブジェクト、ルーチン、関数、ヘッダーファイル、オブジェクト、ライブラリー等(以下、「クラス等」という。)として提供されていてもよい。また、プラットフォームサービスIF部210は、例えば、JAVA(登録商標)等の中間言語で提供されていてもよい。
各部制御用サービス220は、画像形成装置1の機能に対応する各部を適切な方式で制御するサービス等である。各部制御用サービス220は、例えば、プラットフォームサービスIF部210からの呼び出しに対応して、画像処理部11、操作パネル部16、ネットワーク送受信部15等を操作する。また、各部制御用サービス220は、コピー機能、ネットワークスキャン機能、文書ボックス機能等を呼び出すことができる。また、各部制御用サービス220は、製品系列別に、異なるサービス等、API等、クラス等を組み合わせたものがファームウェアに含まれていてもよい。
各部制御用サービス220は、画像処理サービス221、デバイス操作サービス222、ネットワーク通信サービス223等を含んでいる。画像処理サービス221は、画像処理のデータの作成や変換や出力に関するサービスを提供する。画像処理サービス221は、例えば、原稿読取部12で解像度や色等を設定して原稿読取した画像データを記憶部19に記憶させ、画像処理部11に記憶部19の画像データや文書データ(図示せず)を画像処理させる。また、画像処理サービス221は、ファイル等から、画像形成部17で画像形成する画像データを描画する。
デバイス操作サービス222は、各部のデバイスを制御するためのサービス等を提供する。デバイス操作サービス222は、例えば、原稿読取部12から取得した画像データを記憶部19に記憶し、操作パネル部16の表示部に表示されるブラウザー上に画像を描画し、描画された画像データを画像形成部17に送信して画像形成させ、記憶部19に記憶された画像データをFAX送受信部18でファクシミリ送信させる。また、デバイス操作サービス222は、例えば搬送部のモーターの一つを駆動させるといった、より機器のハードウェアの構成に近い制御を行ってもよい。ネットワーク通信サービス223は、ネットワークの送受信に関するサービス等を提供する。
汎用OS230は、画像形成装置1の各部を制御する。汎用OS230としては、例えば、Linux(登録商標)等の汎用OS、組み込み(Embedded)向けのOS、リアルタイムOS等を使用することができる。また、汎用OS230のカーネルやコア等のスケジュール管理や基本ハードウェアを管理するプログラムやデータ等はファームウェアに含まれていてもよい。
次に、図3を参照し、図1の画像形成装置1でのAPI処理について説明する。なお、以下では、JAVA(登録商標)アプリ400が記憶部19のHDDに記憶されているものとする。
(ステップS101)
制御部10が起動を開始する。
この場合、操作パネル部16を介し、例えば電源OFFモードから電源ONモードへの移行が指示されると、制御部10が起動を開始する。
(ステップS102)
JAVA(登録商標)プラットフォーム300のJAVA(登録商標)アプリ管理部330がJAVA(登録商標)アプリ400を起動させる。
この場合、JAVA(登録商標)アプリ管理部330がHDDに記憶されているJAVA(登録商標)アプリ400を読み出して起動させる。
(ステップS103)
JAVA(登録商標)プラットフォーム300がPC等の外部端末からのHttpリクエストを受け取ったかどうかを判断する。
この場合、JAVA(登録商標)プラットフォーム300のJAVA(登録商標)VM310が汎用OS230を介して外部端末からのHttpリクエストを受け取っていなければ、Httpリクエストを受け取っていないと判断する(ステップS103:No)。
これに対し、JAVA(登録商標)プラットフォーム300のJAVA(登録商標)VM310が汎用OS230を介して外部端末からのHttpリクエストを受け取っていれば、Httpリクエストを受け取ったと判断し(ステップS103:Yes)、ステップS104に移行する。
(ステップS104)
JAVA(登録商標)プラットフォーム300がAPIを呼び出す。
この場合、JAVA(登録商標)プラットフォーム300のJAVA(登録商標)VM310は、PC等の外部端末から受け取った呼出対象のAPI情報が示すAPIをリフレクション機能部320から呼び出す。
(ステップS105)
JAVA(登録商標)プラットフォーム300がAPIの処理を実行する。
この場合、JAVA(登録商標)プラットフォーム300のJAVA(登録商標)VM310がリフレクション機能部320から呼び出したAPIの処理をJAVA(登録商標)アプリ400の手順に従い実行する。
(ステップS106)
JAVA(登録商標)プラットフォーム300がAPIの処理の実行結果を送信する。
この場合、JAVA(登録商標)プラットフォーム300のJAVA(登録商標)VM310が実行結果をHttpリクエストを送信したPC等の外部端末に返す。
このように、本実施形態では、機器制御プラットフォーム200により、汎用OS230(オペレーティングシステム)上でハードウェア資源を管理し、標準アプリケーション実行部100により、機器制御プラットフォーム200で管理されるハードウェア資源を利用する標準アプリケーションを実行し、JAVA(登録商標)プラットフォーム00のJAVA(登録商標)アプリケーション管理部330により、JAVA(登録商標)アプリケーション400を管理し、JAVA(登録商標)プラットフォーム300のリフレクション機能部320により、JAVA(登録商標)に標準で搭載されているAPIを保持するとともに、クラス名やメソッド名を指定しクラスを動的に実行し、JAVA(登録商標)プラットフォーム300のJAVA(登録商標)VM310により、外部端末から呼出対象のAPI情報を含むHttpリクエストを受け取ると、API情報が示すAPIをリフレクション機能部320から呼び出し、JAVA(登録商標)アプリケーションの手順に従い、APIの処理を実行する。また、JAVA(登録商標)VM310は、APIの実行結果をHttpリクエストを送信した外部端末に返す。
これにより、JAVA(登録商標)プラットフォーム300は、外部端末から受け取ったHttpリクエストの呼出対象のAPI情報を元に、API情報が示すAPIをリフレクション機能部320から呼び出すことで、APIの処理を実行できる。このことから、APIの処理を実行するに先立ち、従来のように、所定の処理を実行する一又は二以上の単位オブジェクトを生成するためのクラスを記憶させたり、クラスを呼び出すためのルールを前もって決めておいたりする準備作業が不要となり、アプリケーション開発等をさらに効率良く行うことができる。また、Httpリクエストの呼出対象のAPI情報を変えることで、アプリケーション開発等の内容の変更に対応させることができ、汎用性を高めることができる。
1 画像形成装置
10 制御部
11 画像処理部
12 原稿読取部
13 原稿給送部
14 搬送部
15 ネットワーク送受信部
16 操作パネル部
17 画像形成部
18 FAX送受信部
19 記憶部
20 拡張デバイス
100 標準アプリ実行部
110 標準アプリサービスIF部
120 標準アプリ
121 コピーアプリ
122 プリンターアプリ
123 FAXアプリ
124 各種標準アプリ
200 機器制御プラットフォーム
210 プラットフォームサービスIF部
220 各部制御用サービス
221 画像処理サービス
222 デバイス操作サービス
223 ネットワーク通信サービス
230 汎用OS
300 JAVA(登録商標)プラットフォーム
310 JAVA(登録商標)VM
320 リフレクション機能部
330 JAVA(登録商標)アプリ管理部
400 JAVA(登録商標)アプリ

Claims (1)

  1. ハードウェア資源を備えた画像形成装置を制御するコンピューターにより実行されるAPI呼出プログラムであって、
    機器制御プラットフォームにより、オペレーティングシステム上でハードウェア資源を管理する工程と、
    標準アプリケーション実行部により、前記機器制御プラットフォームで管理される前記ハードウェア資源を利用する標準アプリケーションを実行する工程と、
    JAVA(登録商標)プラットフォームのJAVA(登録商標)アプリケーション管理部により、JAVA(登録商標)アプリケーションを管理する工程と、
    前記JAVA(登録商標)プラットフォームのリフレクション機能部により、JAVA(登録商標)に標準で搭載されているAPIを保持するとともに、クラス名やメソッド名を指定しクラスを動的に実行する工程と、
    前記JAVA(登録商標)プラットフォームのJAVA(登録商標)VMにより、外部端末から呼出対象のAPI情報を含むHttpリクエストを受け取ると、前記API情報が示すAPIを前記リフレクション機能部から呼び出し、前記JAVA(登録商標)アプリケーションの手順に従い、前記APIの処理を実行する工程とを有し、
    前記JAVA(登録商標)VMは、前記APIの実行結果を前記Httpリクエストを送信した前記外部端末に返す
    ことを特徴とするAPI呼出プログラム。
JP2018103130A 2018-05-30 2018-05-30 Api呼出プログラム Pending JP2019207595A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018103130A JP2019207595A (ja) 2018-05-30 2018-05-30 Api呼出プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018103130A JP2019207595A (ja) 2018-05-30 2018-05-30 Api呼出プログラム

Publications (1)

Publication Number Publication Date
JP2019207595A true JP2019207595A (ja) 2019-12-05

Family

ID=68767738

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018103130A Pending JP2019207595A (ja) 2018-05-30 2018-05-30 Api呼出プログラム

Country Status (1)

Country Link
JP (1) JP2019207595A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021177304A1 (ja) * 2020-03-06 2021-09-10 京セラドキュメントソリューションズ株式会社 電子機器およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021177304A1 (ja) * 2020-03-06 2021-09-10 京セラドキュメントソリューションズ株式会社 電子機器およびプログラム
JP7409477B2 (ja) 2020-03-06 2024-01-09 京セラドキュメントソリューションズ株式会社 電子機器およびプログラム

Similar Documents

Publication Publication Date Title
KR101377468B1 (ko) 화상처리장치, 화상처리장치의 제어 방법 및 컴퓨터 프로그램을 격납한 기록 매체
JP4987950B2 (ja) 複合機、プログラムおよび記録媒体
US9218224B2 (en) Electronic apparatus, information processing method, and recording medium storing information processing program
JP5972311B2 (ja) 画像形成装置、画像形成方法及び画像形成プログラム
US20110134456A1 (en) Multifunction printer, multifunction printer control system, and recording medium
JP6206586B2 (ja) 画像形成装置及び画像形成方法
JP6260458B2 (ja) 画像形成装置、画像形成方法、及び制御プログラム
JP6658654B2 (ja) 画像形成システム、サーバー、画像形成装置、及び画像形成方法
JP6022508B2 (ja) 画像形成装置、画像形成方法及び画像形成プログラム
US10585631B2 (en) Portable multi-function printing extension computing device
JP2013138284A (ja) 画像形成装置及びプログラム
US9110962B2 (en) Data providing apparatus for implementing script, electronic apparatus for implementing script, data processing system for implementing script, and method of data processing for implementing script
JP5564323B2 (ja) 表示画面生成プログラム、表示画面生成装置、及び表示画面生成方法
JP6248814B2 (ja) 画像形成装置、画像形成方法、及び制御プログラム
US20120033258A1 (en) Image processing apparatus, control method of image processing apparatus, and storage medium
JP6287880B2 (ja) 画像形成装置、画像形成方法、及び画像形成プログラム
JP2019207595A (ja) Api呼出プログラム
JP2019070969A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP6244937B2 (ja) 画像形成装置、画像形成システムおよびプログラム
JP7020082B2 (ja) 画像形成装置及び機器構成管理プログラム
JP2019207594A (ja) Api呼出プログラム
JP5157867B2 (ja) 画像形成装置、表示制御方法、及び表示制御プログラム
JP6204281B2 (ja) 画像形成装置、画像形成方法及び画像形成プログラム
JP2018101915A (ja) アプリケーションを搭載可能な画像形成装置およびその制御方法
JP2013030117A (ja) 情報処理装置、アプリケーション生成システム、及びアプリケーション生成プログラム