Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions eng/versioning/version_client.txt
Original file line number Diff line number Diff line change
Expand Up @@ -266,6 +266,7 @@ com.azure.spring:spring-cloud-azure-stream-binder-servicebus-core;5.23.0;5.24.0-
com.azure.spring:spring-cloud-azure-stream-binder-servicebus;5.23.0;5.24.0-beta.1
com.azure.spring:spring-cloud-azure-testcontainers;5.23.0;5.24.0-beta.1
com.azure:azure-spring-data-cosmos;5.23.0;5.24.0-beta.1
com.azure:azure-planetarycomputer;1.0.0-beta.1;1.0.0-beta.1
com.azure.resourcemanager:azure-resourcemanager;2.53.1;2.54.0-beta.1
com.azure.resourcemanager:azure-resourcemanager-appplatform;2.50.4;2.51.0-beta.1
com.azure.resourcemanager:azure-resourcemanager-appservice;2.53.1;2.54.0-beta.1
Expand Down
16 changes: 16 additions & 0 deletions sdk/planetarycomputer/azure-planetarycomputer/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Release History

## 1.0.0-beta.1 (Unreleased)

- Azure PlanetaryComputer client library for Java. This package contains Microsoft Azure PlanetaryComputer client library.

### Features Added

### Breaking Changes

### Bugs Fixed

### Other Changes
### Features Added

- Initial release for the azure-planetarycomputer Java SDK.
78 changes: 78 additions & 0 deletions sdk/planetarycomputer/azure-planetarycomputer/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Azure PlanetaryComputer client library for Java

Azure PlanetaryComputer client library for Java.

This package contains Microsoft Azure PlanetaryComputer client library.

## Documentation

Various documentation is available to help you get started

- [API reference documentation][docs]
- [Product documentation][product_documentation]

## Getting started

### Prerequisites

- [Java Development Kit (JDK)][jdk] with version 8 or above
- [Azure Subscription][azure_subscription]

### Adding the package to your product

[//]: # ({x-version-update-start;com.azure:azure-planetarycomputer;current})
```xml
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-planetarycomputer</artifactId>
<version>1.0.0-beta.1</version>
</dependency>
```
[//]: # ({x-version-update-end})

### Authentication

[Azure Identity][azure_identity] package provides the default implementation for authenticating the client.

## Key concepts

## Examples

```java com.azure.planetarycomputer.readme
```

### Service API versions

The client library targets the latest service API version by default.
The service client builder accepts an optional service API version parameter to specify which API version to communicate.

#### Select a service API version

You have the flexibility to explicitly select a supported service API version when initializing a service client via the service client builder.
This ensures that the client can communicate with services using the specified API version.

When selecting an API version, it is important to verify that there are no breaking changes compared to the latest API version.
If there are significant differences, API calls may fail due to incompatibility.

Always ensure that the chosen API version is fully supported and operational for your specific use case and that it aligns with the service's versioning policy.

## Troubleshooting

## Next steps

## Contributing

For details on contributing to this repository, see the [contributing guide](https://github.com/Azure/azure-sdk-for-java/blob/main/CONTRIBUTING.md).

1. Fork it
1. Create your feature branch (`git checkout -b my-new-feature`)
1. Commit your changes (`git commit -am 'Add some feature'`)
1. Push to the branch (`git push origin my-new-feature`)
1. Create new Pull Request

<!-- LINKS -->
[product_documentation]: https://azure.microsoft.com/services/
[docs]: https://azure.github.io/azure-sdk-for-java/
[jdk]: https://learn.microsoft.com/azure/developer/java/fundamentals/
[azure_subscription]: https://azure.microsoft.com/free/
[azure_identity]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/identity/azure-identity
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"AssetsRepo":"Azure/azure-sdk-assets","AssetsRepoPrefixPath":"java","TagPrefix":"java/planetarycomputer/azure-planetarycomputer","Tag":""}
71 changes: 71 additions & 0 deletions sdk/planetarycomputer/azure-planetarycomputer/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
<!--
~ Copyright (c) Microsoft Corporation. All rights reserved.
~ Licensed under the MIT License.
~ Code generated by Microsoft (R) TypeSpec Code Generator.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.azure</groupId>
<artifactId>azure-client-sdk-parent</artifactId>
<version>1.7.0</version> <!-- {x-version-update;com.azure:azure-client-sdk-parent;current} -->
<relativePath>../../parents/azure-client-sdk-parent</relativePath>
</parent>

<groupId>com.azure</groupId>
<artifactId>azure-planetarycomputer</artifactId>
<version>1.0.0-beta.1</version> <!-- {x-version-update;com.azure:azure-planetarycomputer;current} -->
<packaging>jar</packaging>

<name>Microsoft Azure SDK for PlanetaryComputer</name>
<description>This package contains Microsoft Azure PlanetaryComputer client library.</description>
<url>https://github.com/Azure/azure-sdk-for-java</url>

<licenses>
<license>
<name>The MIT License (MIT)</name>
<url>http://opensource.org/licenses/MIT</url>
<distribution>repo</distribution>
</license>
</licenses>

<scm>
<url>https://github.com/Azure/azure-sdk-for-java</url>
<connection>scm:git:[email protected]:Azure/azure-sdk-for-java.git</connection>
<developerConnection>scm:git:[email protected]:Azure/azure-sdk-for-java.git</developerConnection>
<tag>HEAD</tag>
</scm>
<developers>
<developer>
<id>microsoft</id>
<name>Microsoft</name>
</developer>
</developers>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core</artifactId>
<version>1.55.5</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core-http-netty</artifactId>
<version>1.15.13</version> <!-- {x-version-update;com.azure:azure-core-http-netty;dependency} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core-test</artifactId>
<version>1.27.0-beta.10</version> <!-- {x-version-update;com.azure:azure-core-test;dependency} -->
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.16.3</version> <!-- {x-version-update;com.azure:azure-identity;dependency} -->
<scope>test</scope>
</dependency>
</dependencies>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,218 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) TypeSpec Code Generator.

package com.azure.planetarycomputer;

import com.azure.core.annotation.Generated;
import com.azure.core.annotation.ReturnType;
import com.azure.core.annotation.ServiceClient;
import com.azure.core.annotation.ServiceMethod;
import com.azure.core.exception.ClientAuthenticationException;
import com.azure.core.exception.HttpResponseException;
import com.azure.core.exception.ResourceModifiedException;
import com.azure.core.exception.ResourceNotFoundException;
import com.azure.core.http.rest.RequestOptions;
import com.azure.core.http.rest.Response;
import com.azure.core.util.BinaryData;
import com.azure.core.util.FluxUtil;
import com.azure.planetarycomputer.implementation.GeocatalogClientImpl;
import com.azure.planetarycomputer.models.AuthConfig;
import com.azure.planetarycomputer.models.AzMapsClientId;
import com.azure.planetarycomputer.models.AzMapsToken;
import reactor.core.publisher.Mono;

/**
* Initializes a new instance of the asynchronous GeocatalogClient type.
*/
@ServiceClient(builder = GeocatalogClientBuilder.class, isAsync = true)
public final class GeocatalogAsyncClient {
@Generated
private final GeocatalogClientImpl serviceClient;

/**
* Initializes an instance of GeocatalogAsyncClient class.
*
* @param serviceClient the service client implementation.
*/
@Generated
GeocatalogAsyncClient(GeocatalogClientImpl serviceClient) {
this.serviceClient = serviceClient;
}

/**
* Get Auth Config
*
* Get the app id and tenant id information to make a MSAL request for this
* GeoCatalog instance.
* <p><strong>Response Body Schema</strong></p>
*
* <pre>
* {@code
* {
* authn_app_id: String (Required)
* tenant_id: String (Required)
* instance: String (Required)
* redirect_uri: String (Optional)
* }
* }
* </pre>
*
* @param requestOptions The options to configure the HTTP request before HTTP client sends it.
* @throws HttpResponseException thrown if the request is rejected by server.
* @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
* @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
* @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
* @return auth Config
*
* Get the app id and tenant id information to make a MSAL request for this
* GeoCatalog instance along with {@link Response} on successful completion of {@link Mono}.
*/
@Generated
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<BinaryData>> getAuthConfigWithResponse(RequestOptions requestOptions) {
return this.serviceClient.getAuthConfigWithResponseAsync(requestOptions);
}

/**
* Get Azmaps Client Id
*
* Fetch the client id for the Azure Maps API service based on the current
* on the current identity. This client id is used for the Explorer to
* authenticate with the Azure Maps API service.
* <p><strong>Response Body Schema</strong></p>
*
* <pre>
* {@code
* {
* client_id: String (Required)
* }
* }
* </pre>
*
* @param requestOptions The options to configure the HTTP request before HTTP client sends it.
* @throws HttpResponseException thrown if the request is rejected by server.
* @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
* @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
* @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
* @return azmaps Client Id
*
* Fetch the client id for the Azure Maps API service based on the current
* on the current identity along with {@link Response} on successful completion of {@link Mono}.
*/
@Generated
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<BinaryData>> getAzmapsClientIdWithResponse(RequestOptions requestOptions) {
return this.serviceClient.getAzmapsClientIdWithResponseAsync(requestOptions);
}

/**
* Get Azmaps Token
*
* Fetch a token for the Azure Maps API service based on the current
* service identity. This token is used for the Explorer to authenticate
* with the Azure Maps API service.
* <p><strong>Response Body Schema</strong></p>
*
* <pre>
* {@code
* {
* token: String (Required)
* expires_on: int (Required)
* }
* }
* </pre>
*
* @param requestOptions The options to configure the HTTP request before HTTP client sends it.
* @throws HttpResponseException thrown if the request is rejected by server.
* @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
* @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
* @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
* @return azmaps Token
*
* Fetch a token for the Azure Maps API service based on the current
* service identity along with {@link Response} on successful completion of {@link Mono}.
*/
@Generated
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<BinaryData>> getAzmapsTokenWithResponse(RequestOptions requestOptions) {
return this.serviceClient.getAzmapsTokenWithResponseAsync(requestOptions);
}

/**
* Get Auth Config
*
* Get the app id and tenant id information to make a MSAL request for this
* GeoCatalog instance.
*
* @throws HttpResponseException thrown if the request is rejected by server.
* @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
* @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
* @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return auth Config
*
* Get the app id and tenant id information to make a MSAL request for this
* GeoCatalog instance on successful completion of {@link Mono}.
*/
@Generated
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<AuthConfig> getAuthConfig() {
// Generated convenience method for getAuthConfigWithResponse
RequestOptions requestOptions = new RequestOptions();
return getAuthConfigWithResponse(requestOptions).flatMap(FluxUtil::toMono)
.map(protocolMethodData -> protocolMethodData.toObject(AuthConfig.class));
}

/**
* Get Azmaps Client Id
*
* Fetch the client id for the Azure Maps API service based on the current
* on the current identity. This client id is used for the Explorer to
* authenticate with the Azure Maps API service.
*
* @throws HttpResponseException thrown if the request is rejected by server.
* @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
* @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
* @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return azmaps Client Id
*
* Fetch the client id for the Azure Maps API service based on the current
* on the current identity on successful completion of {@link Mono}.
*/
@Generated
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<AzMapsClientId> getAzmapsClientId() {
// Generated convenience method for getAzmapsClientIdWithResponse
RequestOptions requestOptions = new RequestOptions();
return getAzmapsClientIdWithResponse(requestOptions).flatMap(FluxUtil::toMono)
.map(protocolMethodData -> protocolMethodData.toObject(AzMapsClientId.class));
}

/**
* Get Azmaps Token
*
* Fetch a token for the Azure Maps API service based on the current
* service identity. This token is used for the Explorer to authenticate
* with the Azure Maps API service.
*
* @throws HttpResponseException thrown if the request is rejected by server.
* @throws ClientAuthenticationException thrown if the request is rejected by server on status code 401.
* @throws ResourceNotFoundException thrown if the request is rejected by server on status code 404.
* @throws ResourceModifiedException thrown if the request is rejected by server on status code 409.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return azmaps Token
*
* Fetch a token for the Azure Maps API service based on the current
* service identity on successful completion of {@link Mono}.
*/
@Generated
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<AzMapsToken> getAzmapsToken() {
// Generated convenience method for getAzmapsTokenWithResponse
RequestOptions requestOptions = new RequestOptions();
return getAzmapsTokenWithResponse(requestOptions).flatMap(FluxUtil::toMono)
.map(protocolMethodData -> protocolMethodData.toObject(AzMapsToken.class));
}
}
Loading
Loading