listMetadata()
このコールは組織のメタデータコンポーネントに関するプロパティ情報を取得します。queries パラメータで指定されている条件に一致したコンポーネントのデータが返されます。queries 配列には各コールに対する最大 3 つの ListMetadataQuery クエリを含めることができます。このコールは、CustomObject や ApexClass などの最上位の型、および CustomField や RecordType などの子の型の両方のすべてのメタデータ型をサポートします。
構文
1FileProperties[] = metadataConnection.listMetadata(ListMetadataQuery[] queries, double asOfVersion);使用方法
このコールは、retrieve() コールの package.xml の個々のコンポーネントを識別する場合、または組織の特定のメタデータ型の概要が必要な場合に役立ちます。たとえば、組織の CustomObject コンポーネントまたは Layout コンポーネントのすべての名前のリストが返されるようにこのコールを使用できます。さらに、この情報を使用して後続の retrieve() コールを実行し、これらのコ��ポーネントのサブセットが返されるようにすることができます。package.xml の使用についての詳細は、「メタデータのリリースと取得」を参照してください。
サンプルコード —Java
以下のサンプルコードでは、カスタムオブジェクトの情報を表示します。このコードは、SOAP バインドがすでに確立されていることを前提としています。
1public void listMetadata() {
2 try {
3 ListMetadataQuery query = new ListMetadataQuery();
4 query.setType("CustomObject");
5 //query.setFolder(null);
6 double asOfVersion = 35.0;
7 // Assuming that the SOAP binding has already been established.
8 FileProperties[] lmr = metadataConnection.listMetadata(
9 new ListMetadataQuery[] {query}, asOfVersion);
10 if (lmr != null) {
11 for (FileProperties n : lmr) {
12 System.out.println("Component fullName: " + n.getFullName());
13 System.out.println("Component type: " + n.getType());
14 }
15 }
16 } catch (ConnectionException ce) {
17 ce.printStackTrace();
18 }
19}引数
| 名前 | 型 | 説明 |
|---|---|---|
| queries | ListMetadataQuery[] | 目的のコンポーネントを指定するオブジェクトのリスト。 |
| asOfVersion | double | 要求のリストを表示するメタデータの API バージョン。この項目に値を指定しない場合、ログイン時に指定したデフォルトの API バージョンになります。この項目を使用してデフォルトを上書きし、他の API バージョンを設定できます。これにより、たとえば、ログイン時に指定した API バージョンより後のバージョンで追加されたメタデータ型のメタデータのリストを表示できます。この項目は API バージョン 18.0 以降で使用できます。 |