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
3 changes: 2 additions & 1 deletion sdk/peering/azure-resourcemanager-peering/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
# Release History

## 1.0.0-beta.2 (Unreleased)
## 1.0.0-beta.1 (2021-07-28)

- Azure Resource Manager Peering client library for Java. This package contains Microsoft Azure SDK for Peering Management SDK. Peering Client. Package tag package-2019-08-01-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).

## 1.0.0-beta.1 (2021-04-19)

Expand Down
6 changes: 4 additions & 2 deletions sdk/peering/azure-resourcemanager-peering/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Azure Resource Manager Peering client library for Java.

This package contains Microsoft Azure SDK for Peering Management SDK. Peering Client. Package tag package-2021-01-01. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
This package contains Microsoft Azure SDK for Peering Management SDK. Peering Client. Package tag package-2019-08-01-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).

## We'd love to hear your feedback

Expand Down Expand Up @@ -32,7 +32,7 @@ Various documentation is available to help you get started
<dependency>
<groupId>com.azure.resourcemanager</groupId>
<artifactId>azure-resourcemanager-peering</artifactId>
<version>1.0.0-beta.1</version>
<version>1.0.0-beta.2</version>
</dependency>
```
[//]: # ({x-version-update-end})
Expand Down Expand Up @@ -74,6 +74,8 @@ See [API design][design] for general introduction on design and key concepts on

## Examples



## Troubleshooting

## Next steps
Expand Down
141 changes: 80 additions & 61 deletions sdk/peering/azure-resourcemanager-peering/pom.xml
Original file line number Diff line number Diff line change
@@ -1,67 +1,86 @@
<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>
<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.resourcemanager</groupId>
<artifactId>azure-resourcemanager-peering</artifactId>
<version>1.0.0-beta.2</version> <!-- {x-version-update;com.azure.resourcemanager:azure-resourcemanager-peering;current} -->
<packaging>jar</packaging>
<groupId>com.azure.resourcemanager</groupId>
<artifactId>azure-resourcemanager-peering</artifactId>
<version>1.0.0-beta.2</version> <!-- {x-version-update;com.azure.resourcemanager:azure-resourcemanager-peering;current} -->
<packaging>jar</packaging>

<name>Microsoft Azure SDK for Peering Management</name>
<description>This package contains Microsoft Azure SDK for Peering Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Peering Client. Package tag package-2021-01-01.</description>
<url>https://github.com/Azure/azure-sdk-for-java</url>
<name>Microsoft Azure SDK for Peering Management</name>
<description>This package contains Microsoft Azure SDK for Peering Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Peering Client. Package tag package-2019-08-01-preview.</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>
<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>
<legal><![CDATA[[INFO] Any downloads listed may be third party software. Microsoft grants you no rights for third party software.]]></legal>
</properties>
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core</artifactId>
<version>1.18.0</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core-management</artifactId>
<version>1.3.1</version> <!-- {x-version-update;com.azure:azure-core-management;dependency} -->
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.5</version> <!-- {x-version-update;org.jacoco:jacoco-maven-plugin;external_dependency} -->
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
<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>
<legal><![CDATA[[INFO] Any downloads listed may be third party software. Microsoft grants you no rights for third party software.]]></legal>
</properties>
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core</artifactId>
<version>1.18.0</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core-management</artifactId>
<version>1.3.1</version> <!-- {x-version-update;com.azure:azure-core-management;dependency} -->
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.5</version> <!-- {x-version-update;org.jacoco:jacoco-maven-plugin;external_dependency} -->
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.revapi</groupId>
<artifactId>revapi-maven-plugin</artifactId>
<version>0.11.2</version> <!-- {x-version-update;org.revapi:revapi-maven-plugin;external_dependency} -->
<configuration>
<analysisConfiguration>
<revapi.ignore>
<item>
<code>java.method.addedToInterface</code>
</item>
<item>
<regex>true</regex>
<code>.*</code>
<package>com\.azure\.resourcemanager(\.[^.]+)+\.fluent(\.[^.]+)*</package>
</item>
</revapi.ignore>
</analysisConfiguration>
</configuration>
</plugin>
</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -9,48 +9,40 @@
import com.azure.core.http.HttpPipeline;
import com.azure.core.http.HttpPipelineBuilder;
import com.azure.core.http.policy.AddDatePolicy;
import com.azure.core.http.policy.BearerTokenAuthenticationPolicy;
import com.azure.core.http.policy.HttpLogOptions;
import com.azure.core.http.policy.HttpLoggingPolicy;
import com.azure.core.http.policy.HttpPipelinePolicy;
import com.azure.core.http.policy.HttpPolicyProviders;
import com.azure.core.http.policy.RequestIdPolicy;
import com.azure.core.http.policy.RetryPolicy;
import com.azure.core.http.policy.UserAgentPolicy;
import com.azure.core.management.http.policy.ArmChallengeAuthenticationPolicy;
import com.azure.core.management.profile.AzureProfile;
import com.azure.core.util.Configuration;
import com.azure.core.util.logging.ClientLogger;
import com.azure.resourcemanager.peering.fluent.PeeringManagementClient;
import com.azure.resourcemanager.peering.implementation.CdnPeeringPrefixesImpl;
import com.azure.resourcemanager.peering.implementation.LegacyPeeringsImpl;
import com.azure.resourcemanager.peering.implementation.OperationsImpl;
import com.azure.resourcemanager.peering.implementation.PeerAsnsImpl;
import com.azure.resourcemanager.peering.implementation.PeeringLocationsImpl;
import com.azure.resourcemanager.peering.implementation.PeeringManagementClientBuilder;
import com.azure.resourcemanager.peering.implementation.PeeringServiceCountriesImpl;
import com.azure.resourcemanager.peering.implementation.PeeringServiceLocationsImpl;
import com.azure.resourcemanager.peering.implementation.PeeringServicePrefixesImpl;
import com.azure.resourcemanager.peering.implementation.PeeringServiceProvidersImpl;
import com.azure.resourcemanager.peering.implementation.PeeringServicesImpl;
import com.azure.resourcemanager.peering.implementation.PeeringsImpl;
import com.azure.resourcemanager.peering.implementation.PrefixesImpl;
import com.azure.resourcemanager.peering.implementation.ReceivedRoutesImpl;
import com.azure.resourcemanager.peering.implementation.RegisteredAsnsImpl;
import com.azure.resourcemanager.peering.implementation.RegisteredPrefixesImpl;
import com.azure.resourcemanager.peering.implementation.ResourceProvidersImpl;
import com.azure.resourcemanager.peering.models.CdnPeeringPrefixes;
import com.azure.resourcemanager.peering.models.LegacyPeerings;
import com.azure.resourcemanager.peering.models.Operations;
import com.azure.resourcemanager.peering.models.PeerAsns;
import com.azure.resourcemanager.peering.models.PeeringLocations;
import com.azure.resourcemanager.peering.models.PeeringServiceCountries;
import com.azure.resourcemanager.peering.models.PeeringServiceLocations;
import com.azure.resourcemanager.peering.models.PeeringServicePrefixes;
import com.azure.resourcemanager.peering.models.PeeringServiceProviders;
import com.azure.resourcemanager.peering.models.PeeringServices;
import com.azure.resourcemanager.peering.models.Peerings;
import com.azure.resourcemanager.peering.models.Prefixes;
import com.azure.resourcemanager.peering.models.ReceivedRoutes;
import com.azure.resourcemanager.peering.models.RegisteredAsns;
import com.azure.resourcemanager.peering.models.RegisteredPrefixes;
import com.azure.resourcemanager.peering.models.ResourceProviders;
import java.time.Duration;
import java.time.temporal.ChronoUnit;
Expand All @@ -60,8 +52,6 @@

/** Entry point to PeeringManager. Peering Client. */
public final class PeeringManager {
private CdnPeeringPrefixes cdnPeeringPrefixes;

private ResourceProviders resourceProviders;

private LegacyPeerings legacyPeerings;
Expand All @@ -72,18 +62,12 @@ public final class PeeringManager {

private PeeringLocations peeringLocations;

private RegisteredAsns registeredAsns;

private RegisteredPrefixes registeredPrefixes;

private Peerings peerings;

private ReceivedRoutes receivedRoutes;

private PeeringServiceCountries peeringServiceCountries;

private PeeringServiceLocations peeringServiceLocations;

private PeeringServicePrefixes peeringServicePrefixes;

private Prefixes prefixes;

private PeeringServiceProviders peeringServiceProviders;
Expand Down Expand Up @@ -133,6 +117,7 @@ public static final class Configurable {
private HttpClient httpClient;
private HttpLogOptions httpLogOptions;
private final List<HttpPipelinePolicy> policies = new ArrayList<>();
private final List<String> scopes = new ArrayList<>();
private RetryPolicy retryPolicy;
private Duration defaultPollInterval;

Expand Down Expand Up @@ -172,6 +157,17 @@ public Configurable withPolicy(HttpPipelinePolicy policy) {
return this;
}

/**
* Adds the scope to permission sets.
*
* @param scope the scope.
* @return the configurable object itself.
*/
public Configurable withScope(String scope) {
this.scopes.add(Objects.requireNonNull(scope, "'scope' cannot be null."));
return this;
}

/**
* Sets the retry policy to the HTTP pipeline.
*
Expand Down Expand Up @@ -228,6 +224,9 @@ public PeeringManager authenticate(TokenCredential credential, AzureProfile prof
userAgentBuilder.append(" (auto-generated)");
}

if (scopes.isEmpty()) {
scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
}
if (retryPolicy == null) {
retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
}
Expand All @@ -237,10 +236,7 @@ public PeeringManager authenticate(TokenCredential credential, AzureProfile prof
HttpPolicyProviders.addBeforeRetryPolicies(policies);
policies.add(retryPolicy);
policies.add(new AddDatePolicy());
policies
.add(
new BearerTokenAuthenticationPolicy(
credential, profile.getEnvironment().getManagementEndpoint() + "/.default"));
policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
policies.addAll(this.policies);
HttpPolicyProviders.addAfterRetryPolicies(policies);
policies.add(new HttpLoggingPolicy(httpLogOptions));
Expand All @@ -253,14 +249,6 @@ public PeeringManager authenticate(TokenCredential credential, AzureProfile prof
}
}

/** @return Resource collection API of CdnPeeringPrefixes. */
public CdnPeeringPrefixes cdnPeeringPrefixes() {
if (this.cdnPeeringPrefixes == null) {
this.cdnPeeringPrefixes = new CdnPeeringPrefixesImpl(clientObject.getCdnPeeringPrefixes(), this);
}
return cdnPeeringPrefixes;
}

/** @return Resource collection API of ResourceProviders. */
public ResourceProviders resourceProviders() {
if (this.resourceProviders == null) {
Expand Down Expand Up @@ -301,22 +289,6 @@ public PeeringLocations peeringLocations() {
return peeringLocations;
}

/** @return Resource collection API of RegisteredAsns. */
public RegisteredAsns registeredAsns() {
if (this.registeredAsns == null) {
this.registeredAsns = new RegisteredAsnsImpl(clientObject.getRegisteredAsns(), this);
}
return registeredAsns;
}

/** @return Resource collection API of RegisteredPrefixes. */
public RegisteredPrefixes registeredPrefixes() {
if (this.registeredPrefixes == null) {
this.registeredPrefixes = new RegisteredPrefixesImpl(clientObject.getRegisteredPrefixes(), this);
}
return registeredPrefixes;
}

/** @return Resource collection API of Peerings. */
public Peerings peerings() {
if (this.peerings == null) {
Expand All @@ -325,23 +297,6 @@ public Peerings peerings() {
return peerings;
}

/** @return Resource collection API of ReceivedRoutes. */
public ReceivedRoutes receivedRoutes() {
if (this.receivedRoutes == null) {
this.receivedRoutes = new ReceivedRoutesImpl(clientObject.getReceivedRoutes(), this);
}
return receivedRoutes;
}

/** @return Resource collection API of PeeringServiceCountries. */
public PeeringServiceCountries peeringServiceCountries() {
if (this.peeringServiceCountries == null) {
this.peeringServiceCountries =
new PeeringServiceCountriesImpl(clientObject.getPeeringServiceCountries(), this);
}
return peeringServiceCountries;
}

/** @return Resource collection API of PeeringServiceLocations. */
public PeeringServiceLocations peeringServiceLocations() {
if (this.peeringServiceLocations == null) {
Expand All @@ -351,6 +306,15 @@ public PeeringServiceLocations peeringServiceLocations() {
return peeringServiceLocations;
}

/** @return Resource collection API of PeeringServicePrefixes. */
public PeeringServicePrefixes peeringServicePrefixes() {
if (this.peeringServicePrefixes == null) {
this.peeringServicePrefixes =
new PeeringServicePrefixesImpl(clientObject.getPeeringServicePrefixes(), this);
}
return peeringServicePrefixes;
}

/** @return Resource collection API of Prefixes. */
public Prefixes prefixes() {
if (this.prefixes == null) {
Expand Down
Loading