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)と同じです。
おしまい。。