Rational Developer for System z

修飾名を持つリソースの検出

このサンプルは、Finder オブジェクトを使用して、完全修飾名を持つリモート・オブジェクトへの参照を取得する方法を示します。 このリモート・オブジェクトを使用すると、適宜、リモート成果物を操作できます。

サンプル・シナリオ

指定したリソースに関する情報を検索するには、system.name datasetname(membername) 形式の完全修飾名が現行選択に存在することを確認してから、「API サンプル」->「リソースの検索」アクションを選択します。

リソースの名前、絶対パス、変更タイム・スタンプ、およびコンパイラー・オプションは、ワークベンチに関連付けられた標準出力に表示されます。これは、ワークベンチが開始された DOS ウィンドウ、またはランタイム・ワークベンチの場合はホスティング・ワークベンチの「コンソール」ビューに表示されます。

注: 標準の Eclipse アイコンから開始されたワークベンチの標準出力は、表示されない場合があります。

findResourceResults のアートワーク

サンプル・コードのウォークスルー

名前を持つリソースの検出

以下の FindResourceAction クラスのサンプル・メソッド findResource のコード・スニペットは、データ・セット/メンバー名を持つリソース・オブジェクトを取得する方法を示します。

    ZOSResourceIdentifier identifier = ZosfactoryFactory.eINSTANCE.
		createZOSResourceIdentifier();

    identifier.setDataSetName(dataset);
    identifier.setMemberName(member);
    identifier.setSystem(systemName);
    IPhysicalResource res = ZOSPhysicalResourceFinder.eINSTANCE.
		findPhysicalResource(identifier);

このコードは、ZOSResourceIdentifier オブジェクトの作成から開始します。 ZOSResourceIdentifier は、一意的に MVS™ リソースを指定するために必要な名前の情報をカプセル化します。データ・セット名、メンバー名、およびシステム名を適切に設定した後、コードはこの情報を ZOSPhysicalResourceFinderfindPhysicalResource メソッドに渡します。このメソッドは、このリソースを表す IPhysicalResource オブジェクトを取得して返します。

リソース・オブジェクトに関する情報の取得

IPhysicalResource オブジェクトを取得したら、このオブジェクトに対してさまざまな操作を実行できます。この例では、コードは getter メソッド getNamegetFullPathgetModificationStamp、および getSystem を使用して、名前、変更タイム・スタンプ、システム名などのリソースに関する各種情報を検索します。

 System.out.println("Name of the resource is " +
		resource.getName());
	System.out.println("Fullpath of the resource is "
		+ resource.getFullPath());
	System.out.println("Modification time stamp is "
		+ resource.getModificationStamp() + " ("
		+ new Date(resource.getModificationStamp()) + ")");
	System.out.println("Name of the associated system is "
		+ resource.getSystem().getName());

Eclipse 選択イベントへの応答

このサンプルでは、Eclipse での選択変更イベントへの応答方法も示します。FindResourceAction クラスは、ISelectionListener インターフェースを実装します。その selectionChanged は、getText メソッドを使用して現行選択のテキストを抽出することで、ITextSelection に応答します。

public void selectionChanged(IAction action, ISelection selection) {
	fSelectedText = null;
	if (selection instanceof ITextSelection) {
		ITextSelection textSelection = (ITextSelection) selection;
		fSelectedText = textSelection.getText();
	}
}

ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)