カスタムアイテムセレクタエンティティの作成
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、こちらまでご連絡ください。
アプリでは、アイテムセレクターが構成されていないアイテムをユーザーが選択する必要がありますか? 問題ない。 新しいエンティティを作成できます。
このチュートリアルでは、アイテムセレクタの新しいエンティティを作成する方法について説明します。
アイテムセレクタ条件の作成
最初に、エンティティの新しい基準を作成する必要があります。
-
BaseItemSelectorCriterion
クラスを拡張するクラスを作成します。 このクラスは、ユーザーが選択するエンティティの種類と、アイテムセレクタが返す情報を指定します。BaseItemSelectorCriterion
から継承されたメソッドは、この情報を取得するためのロジックを提供します。必要に応じて、このクラスを使用してビューに情報を渡すことができます。 たとえば、
JournalItemSelectorCriterion
クラス は、ビューが使用できるように主キーに関する情報を渡します。public class JournalItemSelectorCriterion extends BaseItemSelectorCriterion { public JournalItemSelectorCriterion() { } public JournalItemSelectorCriterion(long resourcePrimKey) { _resourcePrimKey = resourcePrimKey; } public long getResourcePrimKey() { return _resourcePrimKey; } public void setResourcePrimKey(long resourcePrimKey) { _resourcePrimKey = resourcePrimKey; } private long _resourcePrimKey; }
-
BaseItemSelectorCriterionHandler
クラスを実装するOSGiコンポーネントクラスを作成します。 各基準には、適切な選択ビューの取得を担当する基準ハンドラーが必要です。この例では、
TaskItemSelectorCriterion
クラスの基準ハンドラーを作成します。@Component(service = ItemSelectorCriterionHandler.class) public class TaskItemSelectorCriterionHandler extends BaseItemSelectorCriterionHandler<TaskItemSelectorCriterion> { public Class <TaskItemSelectorCriterion> getItemSelectorCriterionClass() { return TasksItemSelectorCriterionHandler.class; } @Activate @Override protected void activate(BundleContext bundleContext) { super.activate(bundleContext); } }
このOSGiコンポーネントをアクティブ化するには、
@Activate
および@Override
トークンが必要です。
アプリのニーズによっては、戻り値の型を作成する必要がない場合があります。 エンティティが既存の戻り値の型で既に定義されている情報を返す場合、代わりにその戻り値の型を使用できます。 参照ドキュメント Item Selector Criterion and Return Types利用可能なデフォルトの基準を表示できます。 ただし、既存の戻り値型でカバーされていない情報をエンティティが返す場合は、次に新しい戻り値型を作成する必要があります。
アイテムセレクターの戻り値の型の作成
戻り値の型を作成するには、 ItemSelectorReturnType
インターフェイスを実装するクラスを作成する必要があります。 このようなクラスには、そのエンティティにちなんで名前を付け、 ItemSelectorReturnType
接尾辞を付ける必要があります。 たとえば、タスクアイテムの戻り値の型を作成する場合、その戻り値の型クラスは TaskItemSelectorReturnType
ます。 このような * ItemSelectorReturnType
クラスは、アイテムセレクターによって識別子として使用され、情報自体を返しません。 戻り型クラスは、戻り型をアイテムセレクタビューに接続するAPIです。 戻り値の型が使用されるたびに、ビューは適切な情報が返されることを保証する必要があります。 Javadocとして、戻り値の型が返す情報と形式を指定することをお勧めします。 たとえば、戻り型クラス TaskItemSelectorReturnType
例を次に示します。
/**
* This return type should return the task ID and the user who
* created the task as a string.
*
* @author Joe Bloggs
*/
public class TaskItemSelectorReturnType implements ItemSelectorReturnType{
}
よくやった\! 新しいエンティティの基準クラスと戻り値型クラスをアプリで使用して、アイテムセレクターのURLを作成できます。 アイテムセレクターURLを取得する方法については、チュートリアル アイテムセレクターを使用したエンティティの選択を参照してください。
アイテムセレクターのURLを取得すると、選択ビューは、戻り値の型で指定された適切なエンティティ情報を返す役割を果たします。 エンティティのこのような選択ビューを作成するには、チュートリアル カスタムアイテムセレクタビューの作成参照してください。