JP5184472B2 - Bundle control system and bundle control method - Google Patents

Bundle control system and bundle control method Download PDF

Info

Publication number
JP5184472B2
JP5184472B2 JP2009208106A JP2009208106A JP5184472B2 JP 5184472 B2 JP5184472 B2 JP 5184472B2 JP 2009208106 A JP2009208106 A JP 2009208106A JP 2009208106 A JP2009208106 A JP 2009208106A JP 5184472 B2 JP5184472 B2 JP 5184472B2
Authority
JP
Japan
Prior art keywords
bundle
list
information
ideal state
osgi
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.)
Expired - Fee Related
Application number
JP2009208106A
Other languages
Japanese (ja)
Other versions
JP2011059926A (en
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009208106A priority Critical patent/JP5184472B2/en
Publication of JP2011059926A publication Critical patent/JP2011059926A/en
Application granted granted Critical
Publication of JP5184472B2 publication Critical patent/JP5184472B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、OSGi技術においてバンドルを制御する技術に関する。   The present invention relates to a technique for controlling a bundle in the OSGi technique.

現在、ソフトウェアのモジュール化を実現するミドルウェア技術の一つに、OSGi(Open Service Gateway Initiative)が存在している。OSGiでは、バンドルというソフトウェアモジュールをセンタシステムから各OSGi機器に配信・ダウンロードすることによって、新たなサービスの追加や、ユーザ毎のカスタマイズ、バグへの対応等を容易に行うことが可能となっている。   Currently, OSGi (Open Service Gateway Initiative) exists as one of middleware technologies for realizing modularization of software. In OSGi, it is possible to easily add new services, customize for each user, handle bugs, etc. by distributing and downloading software modules called bundles from the center system to each OSGi device. .

OSGi機器の一例としては、サービスゲートウェイ、ルータ、AV機器、自動車、携帯電話、PDA、PC、ネットワーク機器等が挙げられ、バンドルを実行するための実行環境であるOSGiフレームワークが実装されている。センタシステムから配信等されたバンドルは、各OSGi機器におけるそれぞれ固有機能(例えば、携帯電話であれば通信機能や電子メール機能等)や他のサービス機能を実現し、OSGiフレームワーク上で起動・実行されることになる。   Examples of OSGi devices include service gateways, routers, AV devices, automobiles, mobile phones, PDAs, PCs, network devices, and the like, and an OSGi framework that is an execution environment for executing bundles is implemented. Bundles distributed from the center system implement unique functions (for example, communication functions and e-mail functions for mobile phones) and other service functions for each OSGi device, and are activated and executed on the OSGi framework. Will be.

ここで、特許文献1には、SGW(上記OSGi機器に対応)にインストールされたバンドル(プログラム動作状態リスト)が、管理システム(上記センタシステムに対応)で管理されているバンドル(プログラム理想動作状態リスト)に一致するか否かを確認する方法として、プログラム動作状態リストを管理システムに送信し、それら2つの動作状態リストを管理システム側で比較する技術が開示されている。   Here, in Patent Document 1, a bundle (program operation state list) installed in an SGW (corresponding to the OSGi device) is managed by a management system (corresponding to the center system) (program ideal operation state). As a method for confirming whether or not the list matches, a technique for transmitting a program operation state list to the management system and comparing the two operation state lists on the management system side is disclosed.

特開2007−213438号公報JP 2007-213438 A

しかしながら、動作状態リストの比較処理や、更にはプログラム理想動作状態リストが示す動作状態に変更する(戻す)プログラム動作状態変更命令の生成処理を管理システム側で行うため、OSGi機器の増加に伴って管理システムの負荷が増加するという問題があった。すなわち、管理システムで管理可能なOSGi機器の数が極端に制限されるという問題があった。   However, since the management system side performs the operation state list comparison process and the generation process of the program operation state change command for changing (returning) to the operation state indicated by the program ideal operation state list, the number of OSGi devices increases. There was a problem that the load on the management system increased. That is, there is a problem that the number of OSGi devices that can be managed by the management system is extremely limited.

本発明は、上記課題を鑑みてなされたものであり、通信ネットワークを介して管理システムからOSGi機器にバンドルを配信するバンドル配信システムにおいて、管理システムにおける負荷増大を防止することを課題とする。   The present invention has been made in view of the above problems, and an object of the present invention is to prevent an increase in load in the management system in a bundle distribution system that distributes a bundle from the management system to the OSGi device via a communication network.

請求項1に記載の本発明は、通信ネットワークを介して管理システムからOSGi機器にバンドルを配信可能なバンドル制御システムにおいて、前記管理システムは、契約情報に基づいて生成された理想状態バンドルリストを前記OSGi機器の識別情報に対応付けて記憶しておく記憶手段と、前記通信ネットワークを介して前記OSGi機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得する取得手段と、取得した当該理想状態バンドルリストを前記OSGi機器に送信する送信手段と、を有し、前記OSGi機器は、前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信する受信手段と、バンドルの実行環境であるOSGiフレームワーク上にインストールされている動作中バンドルリストを取得する取得手段と、受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御する制御手段と、前記バンドルを一つも制御しなかった場合であっても、現在動作中のバンドル情報をバンドル制御結果報告として生成する報告生成手段と、前記バンドル制御結果報告を前記管理システムに送信する送信手段と、を有し、前記管理システムは、前記通信ネットワークを介して前記バンドル制御結果報告を受信する受信手段と、受信した前記バンドル制御結果報告をバンドル現状情報として前記記憶手段に保存させる保存手段と、を更に有することを特徴とする。 The present invention according to claim 1 is a bundle control system capable of distributing a bundle from a management system to an OSGi device via a communication network, wherein the management system receives an ideal state bundle list generated based on contract information. A storage unit that stores the identification information of the OSGi device in association with the identification information transmitted from the OSGi device via the communication network, and an ideal state bundle list corresponding to the identification information is received from the storage unit. An acquisition means for searching and acquiring, and a transmission means for transmitting the acquired ideal state bundle list to the OSGi device, wherein the OSGi device is transmitted from the management system via the communication network. Receiving means for receiving the ideal state bundle list and O that is the execution environment of the bundle Control for acquiring the operating bundle list installed on the Gi framework, comparing the received ideal state bundle list with the operating bundle list, and controlling the bundle based on the comparison result A means for generating a bundle control result report as a bundle control result report, and a transmission for sending the bundle control result report to the management system, even if no bundle is controlled Means for receiving the bundle control result report via the communication network, and storing means for storing the received bundle control result report as bundle current information in the storage means And further comprising .

請求項2に記載の本発明は、前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、前記制御手段は、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールして、インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させることを特徴とする。   According to the second aspect of the present invention, in the ideal state bundle list, bundle information in which a bundle symbolic name, a bundle version, and a bundle acquisition address are associated is described. Bundle information in which a symbolic name and a bundle version are associated is described, and the control means is a bundle having the same bundle symbolic name and bundle version among the bundle information described in the ideal state bundle list. For bundle information whose information is not included in the operating bundle list, a bundle is installed from the bundle acquisition address in the bundle information, and among the bundle information described in the operating bundle list, a bundle symbolic Name and bundle For bundle information that does not include bundle information with the same version in the ideal state bundle list, uninstall the bundle of the bundle information, refresh the package of the installed bundle, and then start All bundles are activated.

請求項3に記載の本発明は、前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、前記制御手段は、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールし、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一としバンドルバージョンが異なるバンドル情報が前記動作中バンドルリストに含まれているバンドル情報に対しては、当該バンドル情報のバンドルを停止させた後に、バンドル取得アドレスからバンドルを取得して更新して、インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させることを特徴とする。   According to the third aspect of the present invention, bundle information in which a bundle symbolic name, a bundle version, and a bundle acquisition address are associated is described in the ideal state bundle list. Bundle information in which a symbolic name and a bundle version are associated is described, and the control means includes bundle information having the same bundle symbolic name among the bundle information described in the ideal state bundle list. For bundle information that is not included in the operating bundle list, install the bundle from the bundle acquisition address in the bundle information, and the bundle symbolic name is the same among the bundle information described in the operating bundle list Bundle information is said ideal For bundle information not included in the state bundle list, the bundle of the bundle information is uninstalled, and among the bundle information described in the ideal state bundle list, the bundle symbolic name is the same and the bundle version is different. For bundle information whose bundle information is included in the active bundle list, after stopping the bundle of the bundle information, obtain and update the bundle from the bundle acquisition address, and update the bundle information. After the package is refreshed, all unstarted bundles are activated.

請求項4に記載の本発明は、前記理想状態バンドルリストのバンドル情報にバンドル取得アドレスが記載されていない代わりに、前記OSGi機器は、前記バンドルシンボリック名及び前記バンドルバージョンから前記バンドル取得アドレスを生成するアドレス生成手段を更に有することを特徴とする。   According to a fourth aspect of the present invention, the OSGi device generates the bundle acquisition address from the bundle symbolic name and the bundle version instead of a bundle acquisition address not being described in the bundle information of the ideal state bundle list. It further has an address generating means.

請求項に記載の本発明は、前記管理システムの取得手段が、前記記憶手段から前記バンドル現状情報を読み出して、前記理想状態バンドルリストとの比較の結果差異がある場合に、報告要求指示を前記理想状態バンドルリストに含め、前記OSGi機器の報告生成手段は、バンドルが制御された場合、又は前記理想状態バンドルリストに前記報告要求指示が含まれている場合に、前記バンドル制御結果報告を生成することを特徴とする。 According to the present invention of claim 5 , the acquisition unit of the management system reads the bundle current state information from the storage unit and outputs a report request instruction when there is a difference as a result of comparison with the ideal state bundle list. The OSGi device report generation means included in the ideal state bundle list generates the bundle control result report when a bundle is controlled or when the report request instruction is included in the ideal state bundle list. It is characterized by doing.

請求項に記載の本発明は、通信ネットワークを介して管理システムからOSGi機器にバンドルを配信可能なバンドル制御システムで処理するバンドル制御方法において、前記管理システムにより、契約情報に基づいて生成された理想状態バンドルリストを前記OSGi機器の識別情報に対応付けて記憶手段に記憶しておくステップと、前記通信ネットワークを介して前記OSGi機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得するステップと、取得した当該理想状態バンドルリストを前記OSGi機器に送信するステップと、を有し、前記OSGi機器により、前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信するステップと、バンドルの実行環境であるOSGiフレームワーク上にインストールされている動作中バンドルリストを取得するステップと、受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御するステップと、前記バンドルを一つも制御しなかった場合であっても、現在動作中のバンドル情報をバンドル制御結果報告として生成するステップと、前記バンドル制御結果報告を前記管理システムに送信するステップと、を有し、前記管理システムにより、前記通信ネットワークを介して前記バンドル制御結果報告を受信するステップと、受信した前記バンドル制御結果報告をバンドル現状情報として前記記憶手段に保存させるステップと、を更に有することを特徴とする。
請求項7に記載の本発明は、通信ネットワークを介して管理システムからOSGi機器にバンドルを配信可能なバンドル制御システムにおいて、前記管理システムは、契約情報に基づいて生成された理想状態バンドルリストを前記OSGi機器の識別情報に対応付けて記憶しておく記憶手段と、前記通信ネットワークを介して前記OSGi機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得する取得手段と、取得した当該理想状態バンドルリストを前記OSGi機器に送信する送信手段と、を有し、前記OSGi機器は、前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信する受信手段と、バンドルの実行環境であるOSGiフレームワーク上にインストールされている動作中バンドルリストを取得する取得手段と、受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御する制御手段と、を有し、前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、前記制御手段は、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールして、インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させ、前記理想状態バンドルリストのバンドル情報にバンドル取得アドレスが記載されていない代わりに、前記OSGi機器は、前記バンドルシンボリック名及び前記バンドルバージョンから前記バンドル取得アドレスを生成するアドレス生成手段を更に有することを特徴とする。
請求項8に記載の本発明は、通信ネットワークを介して管理システムからOSGi機器にバンドルを配信可能なバンドル制御システムにおいて、前記管理システムは、契約情報に基づいて生成された理想状態バンドルリストを前記OSGi機器の識別情報に対応付けて記憶しておく記憶手段と、前記通信ネットワークを介して前記OSGi機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得する取得手段と、取得した当該理想状態バンドルリストを前記OSGi機器に送信する送信手段と、を有し、前記OSGi機器は、前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信する受信手段と、バンドルの実行環境であるOSGiフレームワーク上にインストールされている動作中バンドルリストを取得する取得手段と、受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御する制御手段と、を有し、前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、前記制御手段は、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールし、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一としバンドルバージョンが異なるバンドル情報が前記動作中バンドルリストに含まれているバンドル情報に対しては、当該バンドル情報のバンドルを停止させた後に、バンドル取得アドレスからバンドルを取得して更新して、インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させ、前記理想状態バンドルリストのバンドル情報にバンドル取得アドレスが記載されていない代わりに、前記OSGi機器は、前記バンドルシンボリック名及び前記バンドルバージョンから前記バンドル取得アドレスを生成するアドレス生成手段を更に有することを特徴とする。
The present invention described in claim 6 is a bundle control method for processing a bundle control system capable of delivering a bundle from the management system to the OSGi device via a communication network, and generated by the management system based on contract information. Storing the ideal state bundle list in the storage means in association with the identification information of the OSGi device; receiving the identification information transmitted from the OSGi device via the communication network; and receiving the ideal information corresponding to the identification information. Retrieving the state bundle list from the storage means, and transmitting the acquired ideal state bundle list to the OSGi device. The OSGi device performs the management via the communication network. The ideal state bundle list sent from the system is received. Comparing the received bundle list that is installed on the OSGi framework, which is the bundle execution environment, the received ideal state bundle list and the active bundle list. A step of controlling a bundle based on a result, a step of generating bundle information of a currently operating bundle as a bundle control result report even when no bundle is controlled, and the bundle control result report Transmitting to the management system, and receiving the bundle control result report via the communication network by the management system and storing the received bundle control result report as bundle current information in the storage means a step of saving, and further comprising a That.
The present invention according to claim 7 is a bundle control system capable of distributing a bundle from a management system to an OSGi device via a communication network, wherein the management system receives the ideal state bundle list generated based on contract information. A storage unit that stores the identification information of the OSGi device in association with the identification information transmitted from the OSGi device via the communication network, and an ideal state bundle list corresponding to the identification information is received from the storage unit. An acquisition means for searching and acquiring, and a transmission means for transmitting the acquired ideal state bundle list to the OSGi device, wherein the OSGi device is transmitted from the management system via the communication network. Receiving means for receiving the ideal state bundle list and O that is the execution environment of the bundle Control for acquiring the operating bundle list installed on the Gi framework, comparing the received ideal state bundle list with the operating bundle list, and controlling the bundle based on the comparison result A bundle symbolic name associated with a bundle symbolic name, a bundle version, and a bundle acquisition address, and the operating bundle list includes a bundle symbolic name and a bundle symbolic name. , Bundle information associated with a bundle version is described, and the control means includes bundle information having the same bundle symbolic name and bundle version among the bundle information described in the ideal state bundle list. Included in active bundle list For bundle information not installed, bundle information is installed from the bundle acquisition address in the bundle information, and bundle information having the same bundle symbolic name and bundle version among the bundle information described in the active bundle list is included. For bundle information not included in the ideal state bundle list, after uninstalling the bundle of the bundle information and refreshing the package of the installed bundle, all unstarted bundles are started, Instead of the bundle acquisition address being described in the bundle information of the ideal state bundle list, the OSGi device further includes address generation means for generating the bundle acquisition address from the bundle symbolic name and the bundle version. It is characterized by having.
The present invention according to claim 8 is a bundle control system capable of distributing a bundle from a management system to an OSGi device via a communication network, wherein the management system receives the ideal state bundle list generated based on contract information. A storage unit that stores the identification information of the OSGi device in association with the identification information transmitted from the OSGi device via the communication network, and an ideal state bundle list corresponding to the identification information is received from the storage unit. An acquisition means for searching and acquiring, and a transmission means for transmitting the acquired ideal state bundle list to the OSGi device, wherein the OSGi device is transmitted from the management system via the communication network. Receiving means for receiving the ideal state bundle list and O that is the execution environment of the bundle Control for acquiring the operating bundle list installed on the Gi framework, comparing the received ideal state bundle list with the operating bundle list, and controlling the bundle based on the comparison result A bundle symbolic name associated with a bundle symbolic name, a bundle version, and a bundle acquisition address, and the operating bundle list includes a bundle symbolic name and a bundle symbolic name. , Bundle information associated with a bundle version is described, and the control means includes bundle information having the same bundle symbolic name among the bundle information described in the ideal state bundle list. Bundle information not included in the list Then, a bundle is installed from the bundle acquisition address in the bundle information, and among the bundle information described in the operating bundle list, bundle information having the same bundle symbolic name is included in the ideal state bundle list. For bundle information not yet installed, the bundle information of the bundle information is uninstalled, and bundle information with the same bundle symbolic name and different bundle version among the bundle information described in the ideal state bundle list is the operation described above. For bundle information included in the middle bundle list, after stopping the bundle of the bundle information, obtaining and updating the bundle from the bundle acquisition address, and refreshing the package of the installed bundle , Not started Address generation means for starting all bundles and generating the bundle acquisition address from the bundle symbolic name and the bundle version, instead of the bundle acquisition address being described in the bundle information of the ideal state bundle list It further has these.

本発明によれば、通信ネットワークを介して管理システムからOSGi機器にバンドルを配信するバンドル配信システムにおいて、管理システムにおける負荷増大を防止することができる。   According to the present invention, in a bundle distribution system that distributes a bundle from a management system to an OSGi device via a communication network, an increase in load on the management system can be prevented.

実施例1に係るバンドル制御システムの機能ブロック構成を示す図である。It is a figure which shows the functional block structure of the bundle control system which concerns on Example 1. FIG. 実施例1に係る理想状態バンドルリストの一例を示す図である。It is a figure which shows an example of the ideal state bundle list which concerns on Example 1. FIG. 実施例1に係るバンドル制御システムの処理フローを示す図である。It is a figure which shows the processing flow of the bundle control system which concerns on Example 1. FIG. 理想状態バンドルリストと動作中バンドルリストとの比較に基づくバンドルの制御処理例1を示す図である。It is a figure which shows the control processing example 1 of a bundle based on the comparison with an ideal state bundle list and an operation bundle list. 理想状態バンドルリストと動作中バンドルリストとの比較に基づくバンドルの制御処理例2を示す図である。It is a figure which shows the control processing example 2 of a bundle based on the comparison with an ideal state bundle list and an operation | movement bundle list. 実施例2に係るバンドル制御システムの機能ブロック構成を示す図である。It is a figure which shows the functional block structure of the bundle control system which concerns on Example 2. FIG. 実施例2に係る理想状態バンドルリストの一例を示す図である。It is a figure which shows an example of the ideal state bundle list which concerns on Example 2. FIG. 実施例3に係るバンドル制御システムの機能ブロック構成を示す図である。It is a figure which shows the functional block structure of the bundle control system which concerns on Example 3. FIG. 実施例3に係るバンドル制御システムの処理フローを示す図である。It is a figure which shows the processing flow of the bundle control system which concerns on Example 3. FIG.

以下、本発明を実施する4つの実施例(実施例1乃至実施例4)について図面を用いて説明する。   Hereinafter, four examples (Examples 1 to 4) for carrying out the present invention will be described with reference to the drawings.

最初に、実施例1に係るバンドル制御システムについて説明する。図1は、実施例1に係るバンドル制御システムの機能ブロック構成を示す図である。実施例1のバンドル制御システムは、バンドルを配信・管理可能な管理システム3と、通信ネットワーク1を介して管理システム3から配信されたバンドルやダウンロードしたバンドルを受信して実行可能なOSGi端末5とで構成されている。以下、このバンドル制御システムの各構成装置の機能について個別具体的に説明すると共に、システム全体の処理フローについて説明する。   First, the bundle control system according to the first embodiment will be described. FIG. 1 is a diagram illustrating a functional block configuration of the bundle control system according to the first embodiment. The bundle control system according to the first embodiment includes a management system 3 that can distribute and manage bundles, and an OSGi terminal 5 that can receive and execute bundles distributed or downloaded from the management system 3 via the communication network 1. It consists of Hereinafter, functions of each component device of the bundle control system will be described individually and specifically, and a processing flow of the entire system will be described.

まず、管理システム3の機能について説明する。この管理システム3は、管理データベース部30と、端末ID受信部31と、ユーザID取得部32と、理想状態バンドルリスト取得部33と、理想状態バンドルリスト送信部34とで構成されている。   First, the function of the management system 3 will be described. The management system 3 includes a management database unit 30, a terminal ID reception unit 31, a user ID acquisition unit 32, an ideal state bundle list acquisition unit 33, and an ideal state bundle list transmission unit 34.

管理データベース部30は、OSGi端末5を識別する端末IDとOSGi端末5の利用ユーザのユーザIDとを結び付けた管理リストを記憶しておく機能を有している。また、ユーザが契約している契約情報に結び付けられたバンドルのリスト(理想状態バンドルリスト)を記憶しておく機能を有している。この理想状態バンドルリストは上記契約情報に基づいて予め生成されており、理想状態バンドルリストには、ユーザによって契約されたサービスを提供するためにOSGi端末5で動作させなければならないバンドルのバンドル情報が、契約したユーザID毎に対応付けて記載されている。なお、実施例1におけるバンドル情報には、図2に示すように、バンドルシンボリック名(Budle Symbolic Name)と、バンドルバージョン(Bundle Version)と、バンドルを取得可能なURLが関連付けて記載されている。   The management database unit 30 has a function of storing a management list in which a terminal ID for identifying the OSGi terminal 5 and a user ID of a user using the OSGi terminal 5 are linked. In addition, it has a function of storing a list of bundles (ideal state bundle list) associated with the contract information with which the user has contracted. This ideal state bundle list is generated in advance based on the contract information, and the ideal state bundle list includes bundle information of bundles that must be operated on the OSGi terminal 5 in order to provide a service contracted by the user. Are described in association with each contracted user ID. In the bundle information in the first embodiment, as shown in FIG. 2, a bundle symbolic name (Budle Symbolic Name), a bundle version (Bundle Version), and a URL from which a bundle can be acquired are described in association with each other.

なお、バンドルとは、OSGi技術におけるソフトウェアモジュールであり、OSGi端末5に実装されているOSGiフレームワーク上で複数のバンドルが組み合わされて実行(ダウンロード→インストール→実行)されることにより、そのOSGi端末5で所定のサービスを提供可能にするものである。   The bundle is a software module in the OSGi technology, and a plurality of bundles are combined and executed (download → installation → execution) on the OSGi framework implemented in the OSGi terminal 5, whereby the OSGi terminal 5, a predetermined service can be provided.

端末ID受信部31は、通信ネットワーク1を介してOSGi端末5から送信された(送られた)端末IDを受信する機能を有している。   The terminal ID receiving unit 31 has a function of receiving a terminal ID transmitted (sent) from the OSGi terminal 5 via the communication network 1.

ユーザID取得部32は、管理データベース部30から管理リストを読み出して、端末ID受信部31で受信したOSGi端末5の端末IDに結び付けられたユーザIDを検索して取得する機能を有している。   The user ID acquisition unit 32 has a function of reading a management list from the management database unit 30 and searching for and acquiring a user ID associated with the terminal ID of the OSGi terminal 5 received by the terminal ID reception unit 31. .

理想状態バンドルリスト取得部33は、ユーザID取得部32で取得したユーザIDを受け取り、受け取ったユーザIDに対応する理想状態バンドルリストを管理データベース部30から検索して取得する機能を有している。   The ideal state bundle list acquisition unit 33 has a function of receiving the user ID acquired by the user ID acquisition unit 32 and searching for and acquiring the ideal state bundle list corresponding to the received user ID from the management database unit 30. .

理想状態バンドルリスト送信部34は、理想状態バンドルリスト取得部33で取得した理想状態バンドルリストをOSGi端末5に送信する(返す)機能を有している。   The ideal state bundle list transmission unit 34 has a function of transmitting (returning) the ideal state bundle list acquired by the ideal state bundle list acquisition unit 33 to the OSGi terminal 5.

次に、OSGi端末5の機能について説明する。このOSGi端末5は、端末ID取得部50と、端末ID送信部51と、理想状態バンドルリスト受信部52と、動作中バンドルリスト取得部53と、バンドル制御部54とで構成されている。   Next, functions of the OSGi terminal 5 will be described. The OSGi terminal 5 includes a terminal ID acquisition unit 50, a terminal ID transmission unit 51, an ideal state bundle list reception unit 52, an operating bundle list acquisition unit 53, and a bundle control unit 54.

端末ID取得部50は、OSGi端末5を識別する端末IDを記憶部(図示せず)から読み出して取得する機能を有している。   The terminal ID acquisition unit 50 has a function of reading and acquiring a terminal ID for identifying the OSGi terminal 5 from a storage unit (not shown).

端末ID送信部51は、端末ID取得部50で取得した端末IDを管理システム3に送信する(送る)機能を有している。   The terminal ID transmission unit 51 has a function of transmitting (sending) the terminal ID acquired by the terminal ID acquisition unit 50 to the management system 3.

理想状態バンドルリスト受信部52は、通信ネットワーク1を介して管理システム3から送信された(返された)理想状態バンドルリストを受信する機能を有している。   The ideal state bundle list receiving unit 52 has a function of receiving the ideal state bundle list transmitted (returned) from the management system 3 via the communication network 1.

動作中バンドルリスト取得部53は、OSGiフレームワーク上にインストールされているバンドルのリスト(動作中バンドルリスト)を取得する機能を有している。   The active bundle list acquisition unit 53 has a function of acquiring a list of bundles installed on the OSGi framework (active bundle list).

バンドル制御部54は、受信した理想状態バンドルリストと、取得した動作中バンドルリストとを比較して、その比較の結果に基づいてバンドルを制御(バンドルのインストール、アンインストール、起動、停止、更新等)する機能を有している。   The bundle control unit 54 compares the received ideal state bundle list with the acquired operating bundle list and controls the bundle based on the comparison result (bundle installation, uninstallation, activation, stop, update, etc. ) Function.

なお、OSGi端末5とは、CPU等のハードウェアやOS(Operating System)から構成され、Java(登録商標)バーチャルマシン上にバンドルの実行環境であるOSGiフレームワークが搭載されている。そして、そのOSGiフレームワーク上で各バンドルが制御(起動、停止、バンドル間サービス、セキュリティ制御、イベント処理等)されることにより、所定のサービスがユーザに提供されることになる。このようなOSGi端末5の一例として、例えば、サービスゲートウェイ、ルータ、AV機器、自動車、携帯電話、PDA、PC、ネットワーク機器を挙げることができる。   The OSGi terminal 5 includes hardware such as a CPU and an OS (Operating System), and an OSGi framework that is a bundle execution environment is mounted on a Java (registered trademark) virtual machine. Then, each bundle is controlled (start, stop, inter-bundle service, security control, event processing, etc.) on the OSGi framework, whereby a predetermined service is provided to the user. Examples of such OSGi terminals 5 include service gateways, routers, AV devices, automobiles, mobile phones, PDAs, PCs, and network devices.

続いて、実施例1に係るバンドル制御システムの処理フローについて説明する。図3は、実施例1に係るバンドル制御システムの処理フローを示す図である。   Subsequently, a processing flow of the bundle control system according to the first embodiment will be described. FIG. 3 is a diagram illustrating a processing flow of the bundle control system according to the first embodiment.

最初に、OSGi端末5において、端末ID取得部50が、記憶部(図1において図示せず)から端末IDを取得し(Sa1)、端末ID送信部51が、取得した端末IDを管理システムに送る(Sa2)。   First, in the OSGi terminal 5, the terminal ID acquisition unit 50 acquires the terminal ID from the storage unit (not shown in FIG. 1) (Sa1), and the terminal ID transmission unit 51 uses the acquired terminal ID as a management system. Send (Sa2).

次に、管理システム3において、端末ID受信部31が、OSGi端末5から送られた端末IDを受信し(Sa3)、ユーザID取得部32が、受信した端末IDに対応するユーザIDを管理データベース部30に記憶されている管理リストから検索して取得する(Sa4)。   Next, in the management system 3, the terminal ID reception unit 31 receives the terminal ID sent from the OSGi terminal 5 (Sa3), and the user ID acquisition unit 32 stores the user ID corresponding to the received terminal ID in the management database. It searches and acquires from the management list memorize | stored in the part 30 (Sa4).

そして、理想状態バンドルリスト取得部33が、取得したユーザIDに対応する理想状態バンドルリストを管理データベース部30から検索して取得して(Sa5)、理想状態バンドルリスト送信部34が、取得した理想状態バンドルリストをOSGi端末5に返す(Sa6)。   Then, the ideal state bundle list acquisition unit 33 searches and acquires the ideal state bundle list corresponding to the acquired user ID from the management database unit 30 (Sa5), and the ideal state bundle list transmission unit 34 acquires the ideal. The status bundle list is returned to the OSGi terminal 5 (Sa6).

その後、OSGi端末5において、理想状態バンドルリスト受信部52が、管理システム3から返された理想状態バンドルリストを受信する(Sa7)。   Thereafter, in the OSGi terminal 5, the ideal state bundle list receiving unit 52 receives the ideal state bundle list returned from the management system 3 (Sa7).

一方、動作中バンドルリスト取得部53は、OSGiフレームワーク上にインストールされている動作中バンドルリストを取得する(Sa8)。   On the other hand, the operating bundle list acquisition unit 53 acquires the operating bundle list installed on the OSGi framework (Sa8).

その後、バンドル制御部54が、理想状態バンドルリストと動作中バンドルリストとを比較して、その比較の結果に基づいてバンドルを制御する(Sa9)。   Thereafter, the bundle control unit 54 compares the ideal state bundle list and the operating bundle list, and controls the bundle based on the comparison result (Sa9).

なお、OSGi端末5が端末IDを管理システム3に送り、管理システム3が理想状態バンドルリストを返す方法としては、例えば、HTTPやHTTPSプロトコルを使用して、端末IDをHTTP POST等で管理システム3に伝え、その戻り値として理想状態バンドルリストを返す方法を利用することができる。   As a method for the OSGi terminal 5 to send the terminal ID to the management system 3 and for the management system 3 to return the ideal state bundle list, for example, the management system 3 uses HTTP or HTTPS protocol, and the terminal ID is HTTP POST or the like. And returning the ideal state bundle list as its return value can be used.

実施例1によれば、理想状態バンドルリストと動作中バンドルリストとを比較処理と、その比較の結果に基づくバンドル制御とをOSGi端末5で実現するので、OSGi端末5が増加した場合であっても管理システム3における負荷増大を防止することが可能となる。すなわち、従来技術では、管理システム3において、理想状態バンドルリストと動作中バンドルリストとを比較し、その比較結果に応じたプログラム動作状態変更命令を生成する必要であったが、それら比較処理及び生成処理が不要となり、データベースに対する検索処理のみが主な処理になるので、管理システム3の処理負荷を低減することが可能となる。   According to the first embodiment, since the OSGi terminal 5 implements the comparison process between the ideal state bundle list and the operating bundle list and the bundle control based on the comparison result, the OSGi terminal 5 is increased. Also, it becomes possible to prevent an increase in load in the management system 3. That is, in the prior art, the management system 3 needs to compare the ideal state bundle list and the operating bundle list and generate a program operation state change instruction according to the comparison result. Since no processing is required and only the search processing for the database is the main processing, the processing load on the management system 3 can be reduced.

続いて、上記構成及び処理フローを有するOSGi端末5におけるバンドル制御部54の2つの具体的な制御処理例(制御処理例1および制御処理例2)について説明する。   Subsequently, two specific control processing examples (control processing example 1 and control processing example 2) of the bundle control unit 54 in the OSGi terminal 5 having the above-described configuration and processing flow will be described.

〔制御処理例1〕
理想状態バンドルリストには、OSGi端末上で動作しているべきバンドルに関するバンドル情報(但し、ユーザによる新規契約や解約、それに基づくバンドルの変更等により更新され得る)が含まれ、そのバンドル情報には、図2に示したように、バンドルシンボリック名と、バンドルバージョンと、URLとが含まれている。
[Control processing example 1]
The ideal state bundle list includes bundle information related to the bundle that should be operating on the OSGi terminal (however, it can be updated by a new contract or cancellation by the user, a bundle change based on the bundle information, etc.), As shown in FIG. 2, the bundle symbolic name, the bundle version, and the URL are included.

一方、動作中バンドルリストには、OSGi端末5のOSGiフレームワーク上にインストールされているバンドルのバンドル情報が含まれ、そのバンドル情報には、バンドルシンボリック名と、バンドルバージョンとが関連付けられて記載されて(含まれて)いる。   On the other hand, the operating bundle list includes bundle information of bundles installed on the OSGi framework of the OSGi terminal 5, and the bundle information is described in association with the bundle symbolic name and the bundle version. (Included).

そこで、バンドル制御部54は、理想状態バンドルリストに記載されているバンドル情報のバンドルのみが起動した状態となるよう、図4に示すように、以下の制御を行う。なお、図4に示す各バンドルリストのフォーマットは一例であってこれに限定されるものではない。一般的には、カンマ区切りやXML文書等を用いることができる。   Therefore, the bundle control unit 54 performs the following control as shown in FIG. 4 so that only bundles of bundle information described in the ideal state bundle list are activated. In addition, the format of each bundle list shown in FIG. 4 is an example, and is not limited to this. In general, comma delimiters, XML documents, and the like can be used.

最初に、以下Sb1−1〜Sb1−3の処理を順不同で行う(Sb1)。なお、理想状態バンドルリスト又は動作中バンドルリストに含まれているバンドル情報の内容によっては、Sb1−1〜Sb1−3の全ての処理ではなく、例えば、Sb1−1のみ、Sb1−1及びSb1−2のみ等、Sb1−1〜Sb1−3の各処理うちいずれか1つ以上の処理を行う。   First, the processes of Sb1-1 to Sb1-3 are performed in random order (Sb1). Depending on the contents of the bundle information included in the ideal state bundle list or the in-operation bundle list, not all the processes of Sb1-1 to Sb1-3, for example, only Sb1-1, Sb1-1 and Sb1- One or more of the processes of Sb1-1 to Sb1-3, such as only 2, are performed.

まず、理想状態バンドルリストに含まれているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が動作中バンドルリストに含まれているバンドル情報に対しては、インストール処理・更新処理・アンインストール処理を行わない(Sb1−1)。   First, among bundle information included in the ideal state bundle list, installation processing / update processing is performed for bundle information in which bundle information having the same bundle symbolic name and bundle version is included in the operating bundle list. -Uninstall processing is not performed (Sb1-1).

一方、理想状態バンドルリストに含まれているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が動作中バンドルリストに含まれていないバンドル情報に対しては、理想状態バンドルリストのバンドル情報内に指定されているURLからバンドルをインストールする(Sb1−2)。   On the other hand, among bundle information included in the ideal state bundle list, bundle information whose bundle symbolic name and bundle version are the same is not included in the operating bundle list. The bundle is installed from the URL specified in the bundle information (Sb1-2).

一方、動作中バンドルリストに含まれているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が理想状態バンドルリストに含まれていないバンドル情報に対しては、そのバンドル情報のバンドルをアンインストールする(Sb1−3)。   On the other hand, among bundle information included in the operating bundle list, bundle information whose bundle symbolic name and bundle version are the same is not included in the ideal state bundle list. Is uninstalled (Sb1-3).

その後、インストールされたバンドルのパッケージをリフレッシュする(Sb2)。例えば、OSGi仕様で定められたPackageAdminサービスのAPIを利用することにより、パッケージのリフレッシュを行うことができる。   Thereafter, the package of the installed bundle is refreshed (Sb2). For example, the package can be refreshed by using the API of the PackageAdmin service defined in the OSGi specification.

最後に、理想状態バンドルリストに含まれているバンドル情報のバンドルであって、OSGiフレームワーク上にインストールされているバンドルのうち、未起動のバンドルを全て起動させる(Sb3)。   Finally, all bundles that are bundled in the ideal state bundle list and that are not activated among bundles installed on the OSGi framework are activated (Sb3).

なお、前述したようにSb1−1〜Sb1−3の各処理は順不同であるが、Sb1〜Sb3の各処理は、上記の順番(Sb1→Sb2→Sb3)で行うことが必要である。OSGiでは、例えば、あるバンドルAがExportするパッケージをバンドルBがImportする必要がある場合、バンドルBは、バンドルAがインストールされて該当パッケージがExportされていなければ、バンドルステートをRESOLVEDにすることができず、起動することができない。例えば、図4のバンドルシンボリック名1のバンドルがExportするパッケージをバンドルシンボリック名2のバンドルがImportする必要がある場合、後者のバンドルを前者よりも先にインストールして、前者のバンドルをインストールしない状態で後者のバンドルを起動しようとしても、後者のバンドルは起動することができない。よって、Sb3のバンドル起動処理は、Sb1の処理が全て終了した後に行う必要がある。   As described above, the processes of Sb1-1 to Sb1-3 are in no particular order, but the processes of Sb1 to Sb3 need to be performed in the above order (Sb1 → Sb2 → Sb3). In OSGi, for example, when bundle B needs to import a package exported by a certain bundle A, bundle B may set the bundle state to RESOLVED if bundle A is installed and the corresponding package is not exported. I can't start. For example, when the bundle of bundle symbolic name 2 in FIG. 4 needs to import a package exported by bundle symbolic name 1, the latter bundle is installed before the former, and the former bundle is not installed. If you try to activate the latter bundle, you cannot activate the latter bundle. Therefore, the bundle activation process of Sb3 needs to be performed after all the processes of Sb1 are completed.

また、アンインストールしたバンドルシンボリック名3のバンドルの旧バージョンがExportしていたパッケージをバンドルシンボリック名1のバンドルがImportしていた場合、パッケージのリフレッシュを行わなければ、バンドルシンボリック名1のバンドルはアンインストールしたバンドルシンボリック名3のバンドルの旧バージョンがExportしていたパッケージを使用し続けることになる(これは、OSGiの仕様に基づく)。よって、Sb3のバンドル起動処理前に、パッケージをリフレッシュする処理が必要となる。   In addition, if the bundle with bundle symbolic name 1 imports the package that was exported by the old version of the bundle with bundle symbolic name 3 that was uninstalled, the bundle with bundle symbolic name 1 is unloaded unless the package is refreshed. The package that was exported by the old version of the bundle with the bundle symbolic name 3 installed will continue to be used (this is based on the OSGi specification). Therefore, a process for refreshing the package is required before the bundle activation process of Sb3.

従って、Sb1→Sc2→Sb3の順番で処理を行うことが必要となる。   Therefore, it is necessary to perform processing in the order of Sb1 → Sc2 → Sb3.

〔制御処理例2〕
続いて、制御処理例1で説明した制御処理方法とは異なる制御処理例2について説明する。制御処理例2の場合であっても制御処理例1と同様に、バンドル制御部54は、一連の処理の終了時点において、理想状態バンドルリストに記載されているバンドル情報のバンドルのみが起動した状態となるよう、図5に示すように、以下の制御を行う。
[Control processing example 2]
Subsequently, a control processing example 2 different from the control processing method described in the control processing example 1 will be described. Even in the case of the control processing example 2, as in the case of the control processing example 1, the bundle control unit 54 is in a state in which only the bundle of bundle information described in the ideal state bundle list is activated at the end of the series of processing. As shown in FIG. 5, the following control is performed.

最初に、以下Sc1−1〜Sc1−4の処理を順不同で行う(Sc1)。なお、理想状態バンドルリスト又は動作中バンドルリストに含まれているバンドル情報の内容によっては、Sc1−1〜Sc1−4の全ての処理ではなく、例えば、Sc1−1のみ、Sc1−1及びSc1−2のみ、Sc1−1〜Sc1−3のみ等、Sc1−1〜Sc1−4の各処理うちいずれか1つ以上の処理を行う。   First, the processes of Sc1-1 to Sc1-4 are performed in random order (Sc1). Depending on the contents of the bundle information included in the ideal state bundle list or the in-operation bundle list, not all of the processes of Sc1-1 to Sc1-4, for example, only Sc1-1, Sc1-1 and Sc1- Only one of the processes of Sc1-1 to Sc1-4, such as only 2, Sc1-1 to Sc1-3, or the like is performed.

まず、理想状態バンドルリストに含まれているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が動作中バンドルリストに含まれているバンドル情報に対しては、インストール処理・更新処理・アンインストール処理を行わない(Sc1−1)。   First, among bundle information included in the ideal state bundle list, installation processing / update processing is performed for bundle information in which bundle information having the same bundle symbolic name and bundle version is included in the operating bundle list. -The uninstallation process is not performed (Sc1-1).

一方、理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が動作中バンドルリストに含まれていないバンドル情報に対しては、理想状態バンドルリストのバンドル情報内に指定されているURLからバンドルをインストールする(Sc1−2)。   On the other hand, among bundle information described in the ideal state bundle list, bundle information that does not include bundle information with the same bundle symbolic name in the operating bundle list is included in the bundle information of the ideal state bundle list. The bundle is installed from the URL specified in (Sc1-2).

一方、動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が理想状態バンドルリストに含まれていないバンドル情報に対しては、そのバンドル情報のバンドルをアンインストールする(Sc1−3)。   On the other hand, for bundle information that is not included in the ideal state bundle list among bundle information that is listed in the active bundle list and that has the same bundle symbolic name, uninstall that bundle information bundle. (Sc1-3).

一方、理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名が同一であってバンドルバージョンが異なるバンドル情報が動作中バンドルリストに含まれているバンドル情報に対しては、動作中バンドルリストのバンドル情報のバンドルを停止させた後に、理想状態バンドルリストのバンドル情報内に指定されているURLから新しいバンドルをダウンロードして更新する(Sc1−4)。   On the other hand, among the bundle information described in the ideal state bundle list, the bundle information with the same bundle symbolic name and different bundle version is included in the active bundle list. After stopping the bundle of the bundle information in the list, a new bundle is downloaded and updated from the URL specified in the bundle information of the ideal state bundle list (Sc1-4).

その後、インストールされたバンドルのパッケージをリフレッシュする(Sc2)。   Thereafter, the package of the installed bundle is refreshed (Sc2).

最後に、理想状態バンドルリストに含まれているバンドル情報のバンドルであって、OSGiフレームワーク上にインストールされているバンドルのうち、未起動のバンドルを全て起動させる(Sc3)。   Finally, all bundles that are bundle information included in the ideal state bundle list and are installed on the OSGi framework are activated (Sc3).

なお、制御処理例1で説明したのと同様の理由から、Sc1−1〜Sc1−4の各処理は順不同であるが、Sc1〜Sc3の各処理は、上記の順番(Sc1→Sc2→Sc3)で行うことが必要である。   For the same reason as described in the control processing example 1, the processes of Sc1-1 to Sc1-4 are in no particular order, but the processes of Sc1 to Sc3 are performed in the above order (Sc1 → Sc2 → Sc3). It is necessary to do in.

制御処理例2におけるSc1−4の処理に該当するバンドル情報に関し、制御処理例1では旧バージョンのバンドルをアンインストールして新バージョンのバンドルがインストールされたが、制御処理例2ではバンドルが更新されることになる。すなわち、OSGi仕様に従い、制御処理例1の場合には、該当バンドルのバンドルIDは変更されるが、制御処理例2の場合には、そのバンドルIDは変更されることはないという違いがある。また、BundleContext#getDataFile(String)メソッドで返されるバンドル個別永続ストレージが、制御処理例1では新旧バンドル間で引き継がれないものの、制御処理例2では引き継がれるという違いもある。   Regarding the bundle information corresponding to the process of Sc1-4 in the control process example 2, in the control process example 1, the old version bundle is uninstalled and the new version bundle is installed, but in the control process example 2, the bundle is updated. Will be. That is, according to the OSGi specification, in the case of the control processing example 1, the bundle ID of the corresponding bundle is changed, but in the case of the control processing example 2, there is a difference that the bundle ID is not changed. In addition, the bundle individual persistent storage returned by the BundleContext # getDataFile (String) method is not inherited between the old and new bundles in the control processing example 1, but is also inherited in the control processing example 2.

次に、実施例2に係るバンドル制御システムについて説明する。図6は、実施例2に係るバンドル制御システムの機能ブロック構成を示す図である。実施例2のバンドル制御システムは、実施例1におけるOSGi端末5の構成のみが異なり、URL生成部55を更に備えている。   Next, a bundle control system according to the second embodiment will be described. FIG. 6 is a diagram illustrating a functional block configuration of the bundle control system according to the second embodiment. The bundle control system according to the second embodiment is different only in the configuration of the OSGi terminal 5 according to the first embodiment, and further includes a URL generation unit 55.

URL生成部55は、バンドルシンボリック名及びバンドルバージョンからバンドルを取得可能なURLを生成する機能を有している。一方、管理システム3の各部、及びOSGi端末5の他の各部の機能については実施例1で説明したものと同様であるが、管理データベース部30で記憶している理想状態バンドルリストのバンドル情報には、図7に示すように、バンドルシンボリック名およびバンドルバージョンのみが関連付けて記載され、バンドルを取得する際に必要となるURLについての記載がない。   The URL generation unit 55 has a function of generating a URL from which a bundle can be acquired from the bundle symbolic name and the bundle version. On the other hand, the functions of each part of the management system 3 and the other parts of the OSGi terminal 5 are the same as those described in the first embodiment. However, the bundle information of the ideal state bundle list stored in the management database part 30 is included in the bundle information. As shown in FIG. 7, only the bundle symbolic name and the bundle version are described in association with each other, and there is no description about the URL necessary for obtaining the bundle.

そこで、URL生成部55は、URLを用いてバンドルをインストール又はダウンロードする必要がある場合(実施例1における制御処理例1のSb1−2の処理や、制御処理例2のSc1−2やSc1−4の各処理の場合)に、バンドルシンボリック名及びバンドルバージョンからバンドルを取得可能なURLを生成し、バンドル制御部54に返す機能を有している。例えば、予め決定されている文字列とバンドルシンボリック名とバンドルバージョンとを組み合わせることにより、URLを生成する。具体的な一例としては、“http://www.acme.com/jar/”という文字列を事前に決定しておき、バンドルシンボリック名が“symbolicName”で、バンドルバージョンが“1.0.0”であった場合には、“http://www.acme.com/jar/symbolicName_1.0.0.jar”というURLを生成する。なお、この予め決定される文字列がOSGi端末5にどのように与えられるかについては限定されない。   Therefore, when the URL needs to be installed or downloaded using the URL, the URL generation unit 55 (Sb1-2 in the control processing example 1 in the first embodiment, Sc1-2 or Sc1- in the control processing example 2). In the case of each processing of 4), a URL that can acquire a bundle from the bundle symbolic name and the bundle version is generated and returned to the bundle control unit 54. For example, a URL is generated by combining a predetermined character string, a bundle symbolic name, and a bundle version. As a specific example, the character string “http://www.acme.com/jar/” is determined in advance, the bundle symbolic name is “symbolicName”, and the bundle version is “1.0.0”. If there is, a URL "http://www.acme.com/jar/symbolicName_1.0.0.jar" is generated. It is not limited how the predetermined character string is given to the OSGi terminal 5.

実施例2によれば、OSGi端末5に送信される理想状態バンドルリストにURLが含まれていないので、通信ネットワーク1を介して送信するデータ量が小さくなり、消費ネットワーク帯域や管理システム側での理想状態バンドルリストの生成処理やOSGi端末側のパース処理の負荷を低減することが可能となる。   According to the second embodiment, since the URL is not included in the ideal state bundle list transmitted to the OSGi terminal 5, the amount of data transmitted via the communication network 1 is reduced, and the consumption network bandwidth and the management system side It is possible to reduce the load of the ideal state bundle list generation process and the parsing process on the OSGi terminal side.

次に、実施例3に係るバンドル制御システムについて説明する。実施例1や実施例2によれば、管理システム3の管理データベース部30に登録されている契約情報等に基づいて、各OSGi端末5で動作するべき必要なバンドルをOSGi端末5に配信し、起動させることが可能となる。しかし、管理システム3では、最終的にバンドル配信が成功したかどうかを把握することができない。そのため、実施例3では、OSGi端末5で実施したバンドルの制御結果を管理システム側で把握可能なシステムを提供する。   Next, a bundle control system according to the third embodiment will be described. According to the first embodiment and the second embodiment, based on the contract information registered in the management database unit 30 of the management system 3, a necessary bundle to be operated on each OSGi terminal 5 is distributed to the OSGi terminal 5, It can be activated. However, the management system 3 cannot grasp whether the bundle distribution has finally succeeded. Therefore, in the third embodiment, a system is provided in which the management system side can grasp the control result of the bundle performed by the OSGi terminal 5.

図8は、実施例3に係るバンドル制御システムの機能ブロック構成を示す図である。実施例3のバンドル制御システムは、実施例2のバンドル制御システムに対して、バンドル制御結果報告受信部35と、バンドル制御結果報告保存部36とを管理システム3に更に備え、バンドル制御結果報告生成部56と、バンドル制御結果報告送信部57とをOSGi端末5に更に備えている。   FIG. 8 is a diagram illustrating a functional block configuration of the bundle control system according to the third embodiment. The bundle control system according to the third embodiment further includes a bundle control result report receiving unit 35 and a bundle control result report storage unit 36 in the management system 3 with respect to the bundle control system according to the second embodiment, and generates a bundle control result report. The OSGi terminal 5 further includes a unit 56 and a bundle control result report transmission unit 57.

バンドル制御結果報告生成部56は、バンドル制御部54でバンドルを制御したバンドル制御結果報告を、たとえ何らバンドル制御を行なっていない場合であっても生成する機能を有している。なお、生成されるバンドル制御結果報告には、OSGi端末5の端末IDと、そのOSGi端末5で動作中となっているバンドルの情報(バンドル現状情報)とが含まれている。   The bundle control result report generation unit 56 has a function of generating a bundle control result report in which a bundle is controlled by the bundle control unit 54 even if no bundle control is performed. The generated bundle control result report includes the terminal ID of the OSGi terminal 5 and information on the bundle that is operating on the OSGi terminal 5 (bundle current information).

バンドル制御結果報告送信部57は、バンドル制御結果報告生成部56で生成されたバンドル制御結果報告を管理システム3に送信する機能を有している。   The bundle control result report transmission unit 57 has a function of transmitting the bundle control result report generated by the bundle control result report generation unit 56 to the management system 3.

バンドル制御結果報告受信部35は、通信ネットワーク1を介してOSGi端末5から送信されたバンドル制御結果報告を受信する機能を有している。   The bundle control result report receiving unit 35 has a function of receiving a bundle control result report transmitted from the OSGi terminal 5 via the communication network 1.

バンドル制御結果報告保存部36は、バンドル制御結果報告受信部35で受信したOSGi端末5でのバンドル制御結果報告を管理データベース部30に登録する機能を有している。   The bundle control result report storage unit 36 has a function of registering the bundle control result report at the OSGi terminal 5 received by the bundle control result report receiving unit 35 in the management database unit 30.

続いて、実施例3に係るバンドル制御システムの処理フローについて説明する。図9は、実施例3に係るバンドル制御システムの処理フローを示す図である。   Subsequently, a processing flow of the bundle control system according to the third embodiment will be described. FIG. 9 is a diagram illustrating a processing flow of the bundle control system according to the third embodiment.

最初に、実施例1で説明したSa1〜Sa8の処理と同様の処理を行い(Sd1)、OSGi端末5において、バンドル制御結果報告生成部56が、バンドル制御部54におけるバンドル制御に基づいてバンドル制御結果報告を生成し(Sd2)、バンドル制御結果報告送信部57が、生成されたバンドル制御結果報告を管理システム3に送信する(Sd3)。   First, processing similar to the processing of Sa1 to Sa8 described in the first embodiment is performed (Sd1), and in the OSGi terminal 5, the bundle control result report generation unit 56 performs bundle control based on the bundle control in the bundle control unit 54. A result report is generated (Sd2), and the bundle control result report transmission unit 57 transmits the generated bundle control result report to the management system 3 (Sd3).

その後、管理システム3において、バンドル制御結果報告受信部35が、OSGi端末5から送信されたバンドル制御結果報告を受信し(Sd4)、バンドル制御結果報告保存部36が、受信したバンドル制御結果報告(OSGi端末5の端末IDと、そのOSGi端末5で動作中となっているバンドル現状情報とを含む)を管理データベース部30に登録する(Sd5)。   Thereafter, in the management system 3, the bundle control result report reception unit 35 receives the bundle control result report transmitted from the OSGi terminal 5 (Sd4), and the bundle control result report storage unit 36 receives the received bundle control result report ( The terminal ID of the OSGi terminal 5 and the bundle current information that is operating on the OSGi terminal 5 are registered in the management database unit 30 (Sd5).

ここで、通信ネットワーク1や管理システム3やOSGi端末5は、常に正常に動作しているとは限らないと言える。例えば、OSGi端末5がバンドル制御結果報告を管理システム3に送信しようとした時点で通信ネットワーク1が切断されている可能性や、管理システム3がシステムダウンしている可能性がある。   Here, it can be said that the communication network 1, the management system 3, and the OSGi terminal 5 are not always operating normally. For example, there is a possibility that the communication network 1 is disconnected when the OSGi terminal 5 tries to transmit a bundle control result report to the management system 3, or the management system 3 may be down.

バンドル制御部54での処理において、何らかのバンドルの制御を行った場合のみ、バンドル制御結果報告を管理システム3に送信することも可能である。しかし、バンドル制御部54が何らかのバンドル制御を終了した後に、上記のようなトラブルにより管理システム3の管理データベース部30にバンドル制御結果報告が登録されなかった場合であって、後にそのトラブルの原因が取り除かれて正常動作が可能となったとしても、以降管理システム3の管理データベース部30に登録されたバンドル制御結果報告は、永遠にOSGi端末5の実情と異なる可能性がある。これは、再度一連の処理が行われたとしても、既にOSGi端末5ではバンドル制御が成功しており、取得した理想状態バンドルリストと動作中バンドルリストとが一致しているため、何ら処理がされないため、バンドル制御結果報告が管理システム3に送信されないからである。   It is also possible to send a bundle control result report to the management system 3 only when some bundle control is performed in the processing in the bundle control unit 54. However, after the bundle control unit 54 finishes some bundle control, the bundle control result report is not registered in the management database unit 30 of the management system 3 due to the trouble as described above. Even if it is removed and normal operation is possible, the bundle control result report registered in the management database unit 30 of the management system 3 may be different from the actual situation of the OSGi terminal 5 forever. This is because even if a series of processes are performed again, the bundle control has already been successful in the OSGi terminal 5, and the acquired ideal state bundle list matches the operating bundle list, so no processing is performed. For this reason, the bundle control result report is not transmitted to the management system 3.

そこで、実施例3では、OSGi端末5のバンドル制御部54で一つのバンドルも制御しなかった場合であっても、すなわち、理想状態バンドルリストと動作中バンドルリストとが一致している場合であっても、バンドル制御結果報告をOSGi端末5から管理システム3に送信することにより、OSGi端末5でのバンドル制御結果を確実に管理システム側で把握することが可能となる。これにより、少なくとも再度一連の処理が行われて通信不全や管理システム3の停止等のトラブルが無ければ、管理システム3の管理データベース部30にOSGi端末上の最終的なバンドル状態が蓄積されることになる。このように、管理システム3の管理データベース部30に最終的なバンドル状態が蓄積されていれば、別途端末IDをキーとして管理データベース部30に登録された報告済みバンドル現状情報を検索することにより、OSGi端末5における最終的なバンドル状態を把握するこが可能となる。つまり、OSGi端末5における最終的なバンドル状態を知るために、管理システム3から通信ネットワーク1を介してOSGi端末5に対してバンドル状態の取得制御を改めて行う処理が不要となり、非常に有用である。   Therefore, in the third embodiment, even when one bundle is not controlled by the bundle control unit 54 of the OSGi terminal 5, that is, when the ideal state bundle list matches the active bundle list. However, by sending the bundle control result report from the OSGi terminal 5 to the management system 3, it is possible to reliably grasp the bundle control result at the OSGi terminal 5 on the management system side. As a result, the final bundle state on the OSGi terminal is accumulated in the management database unit 30 of the management system 3 if at least a series of processes are performed again and there is no trouble such as communication failure or suspension of the management system 3. become. As described above, if the final bundle state is accumulated in the management database unit 30 of the management system 3, by separately searching the reported bundle current status information registered in the management database unit 30 using the terminal ID as a key, It becomes possible to grasp the final bundle state in the OSGi terminal 5. That is, in order to know the final bundle state in the OSGi terminal 5, it is not necessary to perform processing for performing bundle state acquisition control again on the OSGi terminal 5 from the management system 3 via the communication network 1, which is very useful. .

次に、実施例4に係るバンドル制御システムについて説明する。実施例3に係るバンドル制御システムの機能ブロック構成は実施例3と同様であるが、管理システム3の理想状態バンドルリスト取得部33と、OSGi端末5のバンドル制御結果報告生成部56との機能が異なっている。   Next, a bundle control system according to the fourth embodiment will be described. The functional block configuration of the bundle control system according to the third embodiment is the same as that of the third embodiment, but the functions of the ideal state bundle list acquisition unit 33 of the management system 3 and the bundle control result report generation unit 56 of the OSGi terminal 5 are the same. Is different.

理想状態バンドルリスト取得部33は、実施例1乃至実施例3では、OSGi端末5のユーザIDに対応する理想状態バンドルリストを管理データベース部30から検索して取得する機能のみであったが、実施例4では、OSGi端末5から受け取った端末IDをキーとして報告済みバンドル現状情報を管理データベース部30から検索して取得し、理想状態バンドルリストとバンドル現状情報とを比較して、その比較の結果差異がある場合には、OSGi端末5からの報告が必要であることを示す要報告フラグの情報を理想状態バンドルリストに含める機能を更に有している。   In the first to third embodiments, the ideal state bundle list acquisition unit 33 has only a function of searching and acquiring the ideal state bundle list corresponding to the user ID of the OSGi terminal 5 from the management database unit 30. In Example 4, the reported bundle current state information is searched and acquired from the management database unit 30 using the terminal ID received from the OSGi terminal 5 as a key, the ideal state bundle list is compared with the bundle current state information, and the comparison result is obtained. If there is a difference, it further has a function of including, in the ideal state bundle list, information on a report required flag indicating that a report from the OSGi terminal 5 is necessary.

また、バンドル制御結果報告生成部56は、バンドル制御部54で何らかのバンドルが制御された場合、又は管理システム3から受信した理想状態バンドルリストに要報告フラグが含まれている場合に、バンドル制御の後に、バンドル制御結果報告を生成する機能を更に有している。   In addition, the bundle control result report generation unit 56 performs the bundle control when the bundle control unit 54 controls any bundle or when the ideal state bundle list received from the management system 3 includes a report required flag. Later, it further has a function of generating a bundle control result report.

実施例3では、OSGi端末5のバンドル制御部54において、理想状態バンドルリストと動作中バンドルリストとが一致しているために一つのバンドルもインストール処理・更新処理・アンインストール処理を行わなかった場合であっても、バンドル制御結果報告がOSGi端末5から管理システム3に送信されるが、実施例4では送信されることはない。これにより、管理システム3に送信されるバンドル制御結果報告の数が減少し、管理システム3における管理データベース部30への登録処理が低減され、通信ネットワーク消費帯域を減らすことが可能となる。   In the third embodiment, when the bundle control unit 54 of the OSGi terminal 5 matches the ideal state bundle list and the operating bundle list, one bundle has not been installed, updated, or uninstalled. Even so, the bundle control result report is transmitted from the OSGi terminal 5 to the management system 3, but is not transmitted in the fourth embodiment. As a result, the number of bundle control result reports transmitted to the management system 3 is reduced, registration processing in the management database unit 30 in the management system 3 is reduced, and the communication network consumption band can be reduced.

一方、実施例4の場合には、実施例3の場合と比較して、理想状態バンドルリストの生成処理において、管理データベース部30からバンドル現状情報を読み込む処理と、理想状態バンドルリストとの比較処理とが増加し、更に理想状態バンドルリストにフラグ情報が付与されることによる通信ネットワーク消費帯域の増加が考えられる。しかしながら、通常、データベースからの読み込み処理よりも書込み処理(上記登録処理)の方が重い処理であり、管理システム3からOSGi端末5に送信される理想状態バンドルリストにおいて増加したフラグ情報が消費するネットワーク帯域よりも、OSGi端末5から管理システム3に送信されるバンドル制御結果報告が消費するネットワーク帯域の方が大きいことから、総合的に実施例4の方が管理システム3の処理負荷やネットワーク消費帯域を少なくすることが可能となる。   On the other hand, in the case of the fourth embodiment, as compared with the case of the third embodiment, in the generation process of the ideal state bundle list, the process of reading the bundle current state information from the management database unit 30 and the comparison process of the ideal state bundle list It is conceivable that the communication network consumption band is increased by adding flag information to the ideal state bundle list. However, normally, the write process (the registration process) is heavier than the read process from the database, and the network in which the flag information increased in the ideal state bundle list transmitted from the management system 3 to the OSGi terminal 5 is consumed. Since the network bandwidth consumed by the bundle control result report transmitted from the OSGi terminal 5 to the management system 3 is larger than the bandwidth, the processing load of the management system 3 and the network consumption bandwidth are comprehensively increased in the fourth embodiment. Can be reduced.

最後に、実施例1乃至実施例4のバンドル制御システムを構成している管理システム3及びOSGi端末5は、CPU等の演算処理装置やメモリ等の記憶装置を備えたコンピュータにより構成可能なものであり、各機能処理はプログラムによって実行される。また、このようなプログラムは記憶装置に記憶されており、記録媒体に記録することも、ネットワークを通して提供することも可能である。   Finally, the management system 3 and the OSGi terminal 5 constituting the bundle control system according to the first to fourth embodiments can be configured by a computer having an arithmetic processing device such as a CPU and a storage device such as a memory. Yes, each function process is executed by a program. Such a program is stored in a storage device, and can be recorded on a recording medium or provided through a network.

1…通信ネットワーク
3…管理システム
30…管理データベース部
31…端末ID受信部
32…ユーザID取得部
33…理想状態バンドルリスト取得部
34…理想状態バンドルリスト送信部
35…バンドル制御結果報告受信部
36…バンドル制御結果報告保存部
5…OSGi端末
50…端末ID取得部
51…端末ID送信部
52…理想状態バンドルリスト受信部
53…動作中バンドルリスト取得部
54…バンドル制御部
55…URL生成部
56…バンドル制御結果報告生成部
57…バンドル制御結果報告送信部
Sa1〜Sa8、Sb1〜Sb3、Sc1〜Sc3、Sd1〜Sd5…ステップ
DESCRIPTION OF SYMBOLS 1 ... Communication network 3 ... Management system 30 ... Management database part 31 ... Terminal ID receiving part 32 ... User ID acquisition part 33 ... Ideal state bundle list acquisition part 34 ... Ideal state bundle list transmission part 35 ... Bundle control result report reception part 36 ... bundle control result report storage unit 5 ... OSGi terminal 50 ... terminal ID acquisition unit 51 ... terminal ID transmission unit 52 ... ideal state bundle list reception unit 53 ... active bundle list acquisition unit 54 ... bundle control unit 55 ... URL generation unit 56 ... bundle control result report generation unit 57 ... bundle control result report transmission unit Sa1 to Sa8, Sb1 to Sb3, Sc1 to Sc3, Sd1 to Sd5 ... step

Claims (8)

通信ネットワークを介して管理システムからOSGi機器にバンドルを配信可能なバンドル制御システムにおいて、
前記管理システムは、
契約情報に基づいて生成された理想状態バンドルリストを前記OSGi機器の識別情報に対応付けて記憶しておく記憶手段と、
前記通信ネットワークを介して前記OSGi機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得する取得手段と、
取得した当該理想状態バンドルリストを前記OSGi機器に送信する送信手段と、を有し、
前記OSGi機器は、
前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信する受信手段と、
バンドルの実行環境であるOSGiフレームワーク上にインストールされている動作中バンドルリストを取得する取得手段と、
受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御する制御手段と、
前記バンドルを一つも制御しなかった場合であっても、現在動作中のバンドル情報をバンドル制御結果報告として生成する報告生成手段と、
前記バンドル制御結果報告を前記管理システムに送信する送信手段と、を有し、
前記管理システムは、
前記通信ネットワークを介して前記バンドル制御結果報告を受信する受信手段と、
受信した前記バンドル制御結果報告をバンドル現状情報として前記記憶手段に保存させる保存手段と、
を更に有することを特徴とするバンドル制御システム。
In a bundle control system capable of distributing a bundle from a management system to an OSGi device via a communication network,
The management system includes:
Storage means for storing an ideal state bundle list generated based on contract information in association with identification information of the OSGi device;
Receiving means for receiving identification information transmitted from the OSGi device via the communication network, and retrieving and acquiring an ideal state bundle list corresponding to the identification information from the storage means;
Transmitting means for transmitting the acquired ideal state bundle list to the OSGi device,
The OSGi device is
Receiving means for receiving the ideal state bundle list transmitted from the management system via the communication network;
An acquisition means for acquiring an operating bundle list installed on the OSGi framework which is a bundle execution environment;
A control means for comparing the received ideal state bundle list with the active bundle list and controlling the bundle based on a result of the comparison;
Report generation means for generating bundle information that is currently in operation as a bundle control result report even if no bundle is controlled,
Transmission means for transmitting the bundle control result report to the management system,
The management system includes:
Receiving means for receiving the bundle control result report via the communication network;
Storage means for storing the received bundle control result report in the storage means as bundle current status information;
A bundle control system further comprising:
前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、
前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、
前記制御手段は、
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、
前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールして、
インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させることを特徴とする請求項1に記載のバンドル制御システム。
In the ideal state bundle list, bundle information in which a bundle symbolic name, a bundle version, and a bundle acquisition address are associated is described.
In the operating bundle list, bundle information in which a bundle symbolic name and a bundle version are associated is described.
The control means includes
Among bundle information described in the ideal state bundle list, for bundle information that does not include bundle information having the same bundle symbolic name and bundle version in the operating bundle list, Install the bundle from the bundle acquisition address,
Among bundle information described in the operating bundle list, for bundle information that does not include bundle information having the same bundle symbolic name and bundle version in the ideal state bundle list, the bundle information of the bundle information Uninstall
The bundle control system according to claim 1, wherein all bundles that have not been activated are activated after the package of the installed bundle is refreshed.
前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、
前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、
前記制御手段は、
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、
前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールし、
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一としバンドルバージョンが異なるバンドル情報が前記動作中バンドルリストに含まれているバンドル情報に対しては、当該バンドル情報のバンドルを停止させた後に、バンドル取得アドレスからバンドルを取得して更新して、
インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させることを特徴とする請求項1に記載のバンドル制御システム。
In the ideal state bundle list, bundle information in which a bundle symbolic name, a bundle version, and a bundle acquisition address are associated is described.
In the operating bundle list, bundle information in which a bundle symbolic name and a bundle version are associated is described.
The control means includes
Among bundle information described in the ideal state bundle list, for bundle information in which bundle information having the same bundle symbolic name is not included in the operating bundle list, a bundle acquisition address in the bundle information Install the bundle from
Among bundle information described in the operating bundle list, for bundle information that does not include bundle information with the same bundle symbolic name in the ideal state bundle list, uninstall the bundle of the bundle information. And
Among bundle information described in the ideal state bundle list, bundle information with the same bundle symbolic name but different bundle versions is included in the operating bundle list. , Get the bundle from the bundle acquisition address and update it,
The bundle control system according to claim 1, wherein all bundles that have not been activated are activated after the package of the installed bundle is refreshed.
前記理想状態バンドルリストのバンドル情報にバンドル取得アドレスが記載されていない代わりに、
前記OSGi機器は、
前記バンドルシンボリック名及び前記バンドルバージョンから前記バンドル取得アドレスを生成するアドレス生成手段を更に有することを特徴とする請求項2又は3に記載のバンドル制御システム。
Instead of the bundle acquisition address being described in the bundle information of the ideal state bundle list,
The OSGi device is
4. The bundle control system according to claim 2, further comprising address generation means for generating the bundle acquisition address from the bundle symbolic name and the bundle version.
前記管理システムの取得手段は、
前記記憶手段から前記バンドル現状情報を読み出して、前記理想状態バンドルリストとの比較の結果差異がある場合に、報告要求指示を前記理想状態バンドルリストに含め、
前記OSGi機器の報告生成手段は、
バンドルが制御された場合、又は前記理想状態バンドルリストに前記報告要求指示が含まれている場合に、前記バンドル制御結果報告を生成することを特徴とする請求項1乃至4のいずれかに記載のバンドル制御システム。
The acquisition means of the management system includes:
When the bundle current information is read from the storage means and there is a difference as a result of comparison with the ideal state bundle list, a report request instruction is included in the ideal state bundle list,
The OSGi device report generation means includes:
If the bundle is controlled, or the if the report request instruction to the ideal state bundle list contains, according to any one of claims 1 to 4, characterized in that to produce the bundle control result report Bundle control system.
通信ネットワークを介して管理システムからOSGi機器にバンドルを配信可能なバンドル制御システムで処理するバンドル制御方法において、
前記管理システムにより、
契約情報に基づいて生成された理想状態バンドルリストを前記OSGi機器の識別情報に対応付けて記憶手段に記憶しておくステップと、
前記通信ネットワークを介して前記OSGi機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得するステップと、
取得した当該理想状態バンドルリストを前記OSGi機器に送信するステップと、を有し、
前記OSGi機器により、
前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信するステップと、
バンドルの実行環境であるOSGiフレームワーク上にインストールされている動作中バンドルリストを取得するステップと、
受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御するステップと、
前記バンドルを一つも制御しなかった場合であっても、現在動作中のバンドル情報をバンドル制御結果報告として生成するステップと、
前記バンドル制御結果報告を前記管理システムに送信するステップと、を有し、
前記管理システムにより、
前記通信ネットワークを介して前記バンドル制御結果報告を受信するステップと、
受信した前記バンドル制御結果報告をバンドル現状情報として前記記憶手段に保存させるステップと、
を更に有することを特徴とするバンドル制御方法。
In a bundle control method of processing by a bundle control system capable of delivering a bundle from a management system to an OSGi device via a communication network,
By the management system,
Storing an ideal state bundle list generated based on contract information in storage means in association with identification information of the OSGi device;
Receiving identification information transmitted from the OSGi device via the communication network, searching the storage means for an ideal state bundle list corresponding to the identification information, and obtaining the list;
Transmitting the acquired ideal state bundle list to the OSGi device,
With the OSGi device,
Receiving the ideal state bundle list transmitted from the management system via the communication network;
Obtaining a running bundle list installed on the OSGi framework, which is the bundle execution environment;
Comparing the received ideal state bundle list with the active bundle list and controlling the bundle based on the result of the comparison;
Generating bundle information as a bundle control result report even if the bundle is not controlled at all;
Transmitting the bundle control result report to the management system,
By the management system,
Receiving the bundle control result report via the communication network;
Storing the received bundle control result report as bundle current information in the storage means;
A bundle control method further comprising:
通信ネットワークを介して管理システムからOSGi機器にバンドルを配信可能なバンドル制御システムにおいて、In a bundle control system capable of distributing a bundle from a management system to an OSGi device via a communication network,
前記管理システムは、The management system includes:
契約情報に基づいて生成された理想状態バンドルリストを前記OSGi機器の識別情報に対応付けて記憶しておく記憶手段と、Storage means for storing an ideal state bundle list generated based on contract information in association with identification information of the OSGi device;
前記通信ネットワークを介して前記OSGi機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得する取得手段と、Receiving means for receiving identification information transmitted from the OSGi device via the communication network, and retrieving and acquiring an ideal state bundle list corresponding to the identification information from the storage means;
取得した当該理想状態バンドルリストを前記OSGi機器に送信する送信手段と、を有し、Transmitting means for transmitting the acquired ideal state bundle list to the OSGi device,
前記OSGi機器は、The OSGi device is
前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信する受信手段と、Receiving means for receiving the ideal state bundle list transmitted from the management system via the communication network;
バンドルの実行環境であるOSGiフレームワーク上にインストールされている動作中バンドルリストを取得する取得手段と、An acquisition means for acquiring an operating bundle list installed on the OSGi framework which is a bundle execution environment;
受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御する制御手段と、を有し、Control means for comparing the received ideal state bundle list with the operating bundle list and controlling the bundle based on the comparison result;
前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、In the ideal state bundle list, bundle information in which a bundle symbolic name, a bundle version, and a bundle acquisition address are associated is described.
前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、In the operating bundle list, bundle information in which a bundle symbolic name and a bundle version are associated is described.
前記制御手段は、The control means includes
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、Among bundle information described in the ideal state bundle list, for bundle information that does not include bundle information having the same bundle symbolic name and bundle version in the operating bundle list, Install the bundle from the bundle acquisition address,
前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールして、Among bundle information described in the operating bundle list, for bundle information that does not include bundle information having the same bundle symbolic name and bundle version in the ideal state bundle list, the bundle information of the bundle information Uninstall
インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させ、After refreshing the package of the installed bundle, start all the unstarted bundles,
前記理想状態バンドルリストのバンドル情報にバンドル取得アドレスが記載されていない代わりに、Instead of the bundle acquisition address being described in the bundle information of the ideal state bundle list,
前記OSGi機器は、The OSGi device is
前記バンドルシンボリック名及び前記バンドルバージョンから前記バンドル取得アドレスを生成するアドレス生成手段を更に有することを特徴とするバンドル制御システム。The bundle control system further comprising address generation means for generating the bundle acquisition address from the bundle symbolic name and the bundle version.
通信ネットワークを介して管理システムからOSGi機器にバンドルを配信可能なバンドル制御システムにおいて、In a bundle control system capable of distributing a bundle from a management system to an OSGi device via a communication network,
前記管理システムは、The management system includes:
契約情報に基づいて生成された理想状態バンドルリストを前記OSGi機器の識別情報に対応付けて記憶しておく記憶手段と、Storage means for storing an ideal state bundle list generated based on contract information in association with identification information of the OSGi device;
前記通信ネットワークを介して前記OSGi機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得する取得手段と、Receiving means for receiving identification information transmitted from the OSGi device via the communication network, and retrieving and acquiring an ideal state bundle list corresponding to the identification information from the storage means;
取得した当該理想状態バンドルリストを前記OSGi機器に送信する送信手段と、を有し、Transmitting means for transmitting the acquired ideal state bundle list to the OSGi device,
前記OSGi機器は、The OSGi device is
前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信する受信手段と、Receiving means for receiving the ideal state bundle list transmitted from the management system via the communication network;
バンドルの実行環境であるOSGiフレームワーク上にインストールされている動作中バンドルリストを取得する取得手段と、An acquisition means for acquiring an operating bundle list installed on the OSGi framework which is a bundle execution environment;
受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御する制御手段と、を有し、Control means for comparing the received ideal state bundle list with the operating bundle list and controlling the bundle based on the comparison result;
前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、In the ideal state bundle list, bundle information in which a bundle symbolic name, a bundle version, and a bundle acquisition address are associated is described.
前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、In the operating bundle list, bundle information in which a bundle symbolic name and a bundle version are associated is described.
前記制御手段は、The control means includes
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、Among bundle information described in the ideal state bundle list, for bundle information in which bundle information having the same bundle symbolic name is not included in the operating bundle list, a bundle acquisition address in the bundle information Install the bundle from
前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールし、Among bundle information described in the operating bundle list, for bundle information that does not include bundle information with the same bundle symbolic name in the ideal state bundle list, uninstall the bundle of the bundle information. And
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一としバンドルバージョンが異なるバンドル情報が前記動作中バンドルリストに含まれているバンドル情報に対しては、当該バンドル情報のバンドルを停止させた後に、バンドル取得アドレスからバンドルを取得して更新して、Among bundle information described in the ideal state bundle list, bundle information with the same bundle symbolic name but different bundle versions is included in the operating bundle list. , Get the bundle from the bundle acquisition address and update it,
インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させ、After refreshing the package of the installed bundle, start all the unstarted bundles,
前記理想状態バンドルリストのバンドル情報にバンドル取得アドレスが記載されていない代わりに、Instead of the bundle acquisition address being described in the bundle information of the ideal state bundle list,
前記OSGi機器は、The OSGi device is
前記バンドルシンボリック名及び前記バンドルバージョンから前記バンドル取得アドレスを生成するアドレス生成手段を更に有することを特徴とするバンドル制御システム。The bundle control system further comprising address generation means for generating the bundle acquisition address from the bundle symbolic name and the bundle version.
JP2009208106A 2009-09-09 2009-09-09 Bundle control system and bundle control method Expired - Fee Related JP5184472B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009208106A JP5184472B2 (en) 2009-09-09 2009-09-09 Bundle control system and bundle control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009208106A JP5184472B2 (en) 2009-09-09 2009-09-09 Bundle control system and bundle control method

Publications (2)

Publication Number Publication Date
JP2011059926A JP2011059926A (en) 2011-03-24
JP5184472B2 true JP5184472B2 (en) 2013-04-17

Family

ID=43947489

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009208106A Expired - Fee Related JP5184472B2 (en) 2009-09-09 2009-09-09 Bundle control system and bundle control method

Country Status (1)

Country Link
JP (1) JP5184472B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013186572A (en) * 2012-03-06 2013-09-19 Sharp Corp Information processing apparatus

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1021061A (en) * 1996-07-05 1998-01-23 Nec Corp Automatic version-up system for client software
JP2003067192A (en) * 2001-08-24 2003-03-07 Ntt Data Corp Program configuration management system
JP2004021638A (en) * 2002-06-17 2004-01-22 Toshiba Corp Information management device and information management method
JP4684118B2 (en) * 2006-02-10 2011-05-18 日本電信電話株式会社 Program operation state control method and program operation state control system

Also Published As

Publication number Publication date
JP2011059926A (en) 2011-03-24

Similar Documents

Publication Publication Date Title
US11003423B2 (en) System and method for autowiring of a microservice architecture
Spiess et al. SOA-based integration of the internet of things in enterprise services
US9516394B2 (en) Methods for monitoring and control of electronic devices
US9485134B2 (en) Managing configurations of system management agents in a distributed environment
US7836439B2 (en) System and method for extending a component-based application platform with custom services
US20110016199A1 (en) System for electronic device monitoring
Martins et al. Modelling IoT behaviour within BPMN business processes
EP2328088A1 (en) Home network system, gateway device, and firmware update method
CN100399268C (en) Computer system not relying on operation system renewing software data and method
US20070201655A1 (en) System and method for installing custom services on a component-based application platform
JP5542796B2 (en) Method and apparatus for managing mobile device software
CN101160563A (en) Method and system for hosting and executing a component application
US20070282801A1 (en) Dynamically creating and executing an application lifecycle management operation
CN102855152A (en) Method and system for upgrading resource files in application programs
US20130124693A1 (en) System, method, and device for executing a composite service
JPWO2002078385A1 (en) Device setting update system
WO2017185883A1 (en) Dynamic expansion software-process method and system
CN114296835B (en) Application program starting method and device
US20100287552A1 (en) Method for providing integrated application management
CN101277221A (en) Method for disposition and application of network management application program
JP5184472B2 (en) Bundle control system and bundle control method
CN114489711A (en) Terminal upgrading method and device and storage medium
US8914512B2 (en) Method and system for defining additional resources in a user management system of a manufacturing execution system
CN115878154A (en) System and method for upgrading container mirror image version
US7895267B2 (en) Extensible method and system for performing management operations on known and unknown targets

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111012

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120510

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121213

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130116

R150 Certificate of patent or registration of utility model

Ref document number: 5184472

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160125

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees