Maps Datasets API V1(Java)を使用して、
GoogleMapsの地理空間データのデータセットを取得する方法
についてご紹介します。
APIを利用する環境の準備から始める場合や、コードを実行する際は、
⧉[Google Maps Datasets API(V1)] Javaで地理空間データを利用する
を参照ください。
| No | 目次 | |
|---|---|---|
| 1 | データセット一覧を取得 | |
| 1 | IAM権限 | |
| 2 | スコープ | |
| 3 | 実行 | |
| 4 | レスポンスの内容 | |
| 2 | データセットを取得 | |
| 1 | IAM権限 | |
| 2 | スコープ | |
| 3 | 実行 | |
| 4 | レスポンスの内容 |
1. データセット一覧を取得
指定したプロジェクトのデータセットを取得します。
1.1. IAM権限
APIを実行するには次の権限を指定してください。
Maps Platform データセット閲覧者
(roles/mapsplatformdatasets.viewer)
1.2. スコープ
このAPIを実行するには、以下のスコープを指定してください。
https://www.googleapis.com/auth/cloud-platform
1.3. 実行
public static void main(String[] args) throws Exception{
try(MapsPlatformDatasetsClient client = getMapsPlatformDatasetsClient2()){
ListDatasetsRequest.Builder builder = ListDatasetsRequest.newBuilder();
builder.setParent(String.format("projects/%s", "プロジェクトID"));
MapsPlatformDatasetsClient.ListDatasetsPagedResponse response = client.listDatasets(builder.build());
for(Dataset dataset : response.iterateAll()) {
System.out.println(dataset);
}
}
}
1.3.1. HTTPリクエスト
GET: https://mapsplatformdatasets.googleapis.com/v1/projects/{プロジェクトID}/datasets
が実行されます。
1.3.2. クエリパラメータ
ListDatasetsRequest.Builderのsetメソッドにより、クエリパラメータを追加できます。
build()メソッドでListDatasetsRequestインスタンスを取得し、
listDatasets()に渡します。
| メソッド | 引数 | 説明 |
|---|---|---|
| setPageSize | Integer | 受け取る結果の数 |
| setPageToken | String | 次のページトークン |
1.4. レスポンスの内容
MapsPlatformDatasetsClient.ListDatasetsPagedResponse
| メソッド | 戻り値 | 説明 |
|---|---|---|
| iterateAll | Iterable<Dataset> | データセットのリスト |
| getNextPageToken | String | 次のページのトークン |
Dataset
| メソッド | 戻り値 | 説明 |
|---|---|---|
| getName | String | リソース名 形式:projects/{プロジェクトID}/datasets/{データセットID} |
| getDisplayName | String | コンソールUIに表示される名前 |
| getDescription | String | 説明 |
| getVersionId | String | データセットのバージョンID |
| getUsage | List<Usage(enum)> | ユースケース |
| getStatus | Status | バージョンのステータス |
| getCreateTime | Timestamp | データセットの作成時刻 |
| getUpdateTime | Timestamp | データセットの更新時刻 |
| getVersionCreateTime | Timestamp | このバージョンのデータセットの作成時刻 |
| getVersionDescription | String | このバージョンのデータセットの説明 |
| getLocalFileSource | LocalFileSource | 1回のアップロードで使用するデータセットのローカルファイルソース |
| getGcsSource | GcsSource | 1回のアップロードで使用するデータセットの Google Cloud Storageファイルソース |
Status
| メソッド | 戻り値 | 説明 |
|---|---|---|
| getState | State(enum) | ステータスの列挙型 |
| getErrorMessage | String | 失敗の理由を示すエラーメッセージ |
LocalFileSource
| メソッド | 戻り値 | 説明 |
|---|---|---|
| getFilename | String | アップロードしたファイルの名前と拡張子 |
| getFileFormat | FileFormat(enum) | アップロードするファイルの形式 |
GcsSource
| メソッド | 戻り値 | 説明 |
|---|---|---|
| getInputUri | String | ソースデータURI |
| getFileFormat | FileFormat(enum) | アップロードするファイルの形式 |
Usage
| 定義値 | 内容 |
|---|---|
| USAGE_UNSPECIFIED | 未使用 |
| USAGE_DATA_DRIVEN_STYLING | このデータセットはデータドリブンのスタイル設定に使用 |
State
| 定義値 | 内容 |
|---|---|
| STATE_UNSPECIFIED | 未設定 |
| STATE_IMPORTING | データをデータセットにインポート |
| STATE_IMPORT_SUCCEEDED | データセットへのデータのインポートが完了 |
| STATE_IMPORT_FAILED | データセットにデータのインポート失敗 |
| STATE_DELETING | データセットを削除中 |
| STATE_DELETION_FAILED | 削除の失敗状態 |
| STATE_PROCESSING | データを処理中 |
| STATE_PROCESSING_FAILED | 処理の失敗状態 |
| STATE_NEEDS_REVIEW | 未使用 |
| STATE_PUBLISHING | 公開状態 |
| STATE_PUBLISHING_FAILED | 公開エラーの状態 |
| STATE_COMPLETED | 完了状態 |
FileFormat
| 定義値 | 内容 |
|---|---|
| FILE_FORMAT_UNSPECIFIED | 未設定 |
| FILE_FORMAT_GEOJSON | GeoJsonファイル |
| FILE_FORMAT_KML | KMLファイル |
| FILE_FORMAT_CSV | CSVファイル |
2. データセットを取得
指定したデータセットのメタデータを取得します。
2.1. IAM権限
APIを実行するには次の権限を指定してください。
Maps Platform データセット閲覧者
(roles/mapsplatformdatasets.viewer)
2.2. スコープ
このAPIを実行するには、以下のスコープを指定してください。
https://www.googleapis.com/auth/cloud-platform
2.3. 実行
パラメータには、DatasetのgetName()で取得できるリソース名を設定します。
リソース名 = projects/{プロジェクトID}/datasets/{データセットID}
public static void main(String[] args) throws Exception{
try(MapsPlatformDatasetsClient client = getMapsPlatformDatasetsClient()){
String name = String.format(
"projects/%s/datasets/%s",
"プロジェクトID", "データセットID");
Dataset response = client.getDataset(name);
System.out.println(response);
}
}
2.3.1. HTTPリクエスト
GET: https://mapsplatformdatasets.googleapis.com/v1/projects/{プロジェクトID}/datasets/{データセットID}
が実行されます。
2.3.2. クエリパラメータ
クエリパラメータはありません。
2.4. レスポンスの内容
Dataset
1.4. レスポンスの内容(Dataset)と同じです。
おしまい。。