プラグインマニフェストファイルリファレンス

1. 概要

xfyプラグインJARファイルを作成するときに必要なプラグインマニフェストファイルに関する仕様を説明します。このプラグインマニフェストファイルは、XARファイルのマニフェストファイルとしても利用されます。

1.1. プラグインマニフェストファイル

プラグインマニフェストファイルは、xfyプラグインJARファイルの実行に必要なプログラム情報を記述するファイルです。JavaでJARファイルを作成するときに使用するマニフェストファイルとは別に作成します。

プラグインマニフェストファイルには、次のような情報が記述されます。

  • xfyプラグイン名、ベンダー、バージョンなど、xfyプラグインJARファイル自体に関する情報
  • 実行に必要な外部のコンポーネントやライブラリ
  • xfyプラグインJARファイルに含まれるサービスプロバイダ

プラグインマニフェストファイルは、プラグインマニフェスト記述用に定義されたボキャブラリに属する要素・属性を使用して、XML形式で作成します。

プラグインマニフェストファイルの配置場所やファイル名は、次のとおりです。

ファイルの配置場所
JARファイルのデフォルトパッケージ内に含まれるようにします。
ファイル名
必ず、manifest.xmlとします。

2. プラグインマニフェスト記述

プラグインマニフェストファイルを記述するときに使用するXMLボキャブラリについて説明します。

2.1. 名前空間URI参照

プラグインマニフェスト記述用のXMLボキャブラリの名前空間URI参照は、http://xmlns.xfy.com/plugin-manifestです。以下の説明でプラグインマニフェスト記述に使用する要素を記述するときは、manifest:という名前空間接頭辞を使用します。

2.2. プラグインマニフェスト記述に使用する要素・属性

プラグインマニフェスト記述に使用する要素や属性を説明します。

2.2.1. プラグインマニフェストファイル全体

プラグインマニフェストファイルの内容全体を含む要素は、manifest:manifest要素です。

manifest:manifest 要素

プラグインマニフェストファイルの内容をすべて含む要素です。この要素の属性で、xfyプラグインJARファイル自体に関する情報を記述します。

属性:
name (必須)

xfyプラグインの名前を記述する属性です。xfyプラグインの名前は、JARファイルの名前と同じにします。81文字以内で設定します。プラグイン名の規約については、「xfyプラグイン情報仕様書」をご覧ください。

vendor (必須)

xfyプラグインのベンダーを示す、ベンダー名を記述する属性です。ベンダー名は、xfyユーザーエージェントの実行環境にあるpluginsフォルダ内に、xfyプラグインJARファイルを配置するときのフォルダ名と同じです。85文字以内で設定します。 ベンダー記述の規約については、「xfyプラグイン情報仕様書」をご覧ください。

version (必須)

xfyプラグインのバージョンを記述する属性です。バージョン設定の仕様については、「xfy technologyでのバージョン管理仕様」をご覧ください。

targetXfyVersion (必須)

xfyプラグインが対象とするxfyユーザーエージェントのバージョンを記述する属性です。xfyユーザーエージェントのバージョンは、メジャーバージョンとマイナーバージョンを半角ピリオド(.)で区切って記述します。

この属性で指定されたバージョンと、実行環境のxfyユーザーエージェントに含まれるxfyプラットフォームのバージョンが一致すると、xfyプラグインを使用できます。現在のxfyプラットフォームのバージョンは1.3です。

targetXfyVersionの記述方法については、「xfyプラグイン情報仕様書」をご覧ください。

displayName

xfyプラグインの表示用の名前を記述する属性です。

省略された場合、name属性と同じ値と見なされます。

description

xfyプラグインの説明を記述する属性です。

省略された場合、空文字列と見なされます。

copyright

xfyプラグインの著作権を記述する属性です。

省略された場合、空文字列と見なされます。

locale

XARファイルのロケールを記述します。xfyプラグインJARファイルのプラグインニフェストファイルにロケールを記述することはできますが、利用されません。値は以下の構成からなるロケールIDで指定します。

Language_Country_Variant
Languageは言語コード、Countryは国コード、Variantはバリアントを表し、アンダースコア(_)区切りとなります。言語コードは2 桁の小文字からなるISO-639コードで指定し、国コードは2 桁の大文字からなるISO-3166コードで指定します。バリアントはベンダーやブラウザに固有のコードで、言語や国で定義された複数のロケール間に違いを持たせるために利用します。
例えば、 "en","ja_JP","ja_JP_KANSAI"などです。

省略された場合、値が設定されていないと見なされます。

内容:

manifest:manifest要素内に記述できる要素は、以下の通りです。

2.2.2. 外部ファイル

xfyプラグインを利用するときに必要な、外部のJARファイルやライブラリの情報を記述する要素を説明します。

manifest:import 要素

xfyプラグインを利用するときに必要な、外部のJARファイルを指定する要素です。

属性:
plugin (必須)

インポートするJARファイルを記述する属性です。xfyユーザーエージェントの実行環境にあるpluginsフォルダからの相対URLで記述します。 JARファイル名を記述するときに、ファイルの拡張子は必要ありません。

内容:

manifest:import要素は空要素です。

manifest:library 要素

xfyプラグインを利用するときに必要な、外部のネイティブライブラリが存在するフォルダを指定する要素です。

属性:
dir (必須)

外部のネイティブライブラリが存在するフォルダを記述する属性です。xfyユーザーエージェントの実行環境にあるpluginsフォルダからの相対URLで記述します。

内容:

manifest:library要素は空要素です。

2.2.3. サービスプロバイダ定義

xfyプラグインに含まれるサービスプロバイダに関する情報を記述するときに使用する要素を説明します。

manifest:provider 要素

xfyプラグインに含まれるサービスプロバイダに関する情報を記述する要素です。

属性:
class (必須)

サービスプロバイダのクラス名を記述する属性です。クラス名はフルパッケージ名で記述します。

内容:

manifest:provider要素内に記述できる要素は、以下の通りです。

  • manifest:category要素
    少なくとも1つは記述します。それ以上は、必要に応じて任意の数だけ記述できます。
  • manifest:requires要素
    必要に応じて、記述しないか1つだけ記述するかを選択できます。

manifest:category 要素

サービスプロバイダが所属するサービスカテゴリーを記述する要素です。

属性:
class (必須)

サービスカテゴリーのクラス名を記述する属性です。クラス名はフルパッケージ名で記述します。

内容:

manifest:category要素は空要素です。

manifest:requires 要素

サービスプロバイダが動作するときに、必要とされるサービスカテゴリーを記述する要素です。この要素で指定されたサービスカテゴリーが存在しない場合は、サービスプロバイダは無視されます。

属性:

属性はありません。

内容:

manifest:requires要素内に記述できる要素は、以下の通りです。

  • manifest:category要素
    少なくとも1つは記述します。 それ以上は、必要に応じて任意の数だけ記述できます。