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
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-08-13)

- Azure Resource Manager DataBoxEdge client library for Java. This package contains Microsoft Azure SDK for DataBoxEdge Management SDK. Package tag package-2021-06-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-09)

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

Azure Resource Manager DataBoxEdge client library for Java.

This package contains Microsoft Azure SDK for DataBoxEdge Management SDK. Package tag package-2019-08. 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 DataBoxEdge Management SDK. Package tag package-2021-06-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-databoxedge</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/databoxedge/azure-resourcemanager-databoxedge/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-databoxedge</artifactId>
<version>1.0.0-beta.2</version> <!-- {x-version-update;com.azure.resourcemanager:azure-resourcemanager-databoxedge;current} -->
<packaging>jar</packaging>
<groupId>com.azure.resourcemanager</groupId>
<artifactId>azure-resourcemanager-databoxedge</artifactId>
<version>1.0.0-beta.2</version> <!-- {x-version-update;com.azure.resourcemanager:azure-resourcemanager-databoxedge;current} -->
<packaging>jar</packaging>

<name>Microsoft Azure SDK for DataBoxEdge Management</name>
<description>This package contains Microsoft Azure SDK for DataBoxEdge Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Package tag package-2019-08.</description>
<url>https://github.com/Azure/azure-sdk-for-java</url>
<name>Microsoft Azure SDK for DataBoxEdge Management</name>
<description>This package contains Microsoft Azure SDK for DataBoxEdge Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Package tag package-2021-06-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:git@github.com:Azure/azure-sdk-for-java.git</connection>
<developerConnection>scm:git:git@github.com: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.19.0</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core-management</artifactId>
<version>1.4.0</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:git@github.com:Azure/azure-sdk-for-java.git</connection>
<developerConnection>scm:git:git@github.com: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.19.0</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core-management</artifactId>
<version>1.4.0</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,47 +9,51 @@
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.databoxedge.fluent.DataBoxEdgeManagementClient;
import com.azure.resourcemanager.databoxedge.implementation.AddonsImpl;
import com.azure.resourcemanager.databoxedge.implementation.AlertsImpl;
import com.azure.resourcemanager.databoxedge.implementation.AvailableSkusImpl;
import com.azure.resourcemanager.databoxedge.implementation.BandwidthSchedulesImpl;
import com.azure.resourcemanager.databoxedge.implementation.ContainersImpl;
import com.azure.resourcemanager.databoxedge.implementation.DataBoxEdgeManagementClientBuilder;
import com.azure.resourcemanager.databoxedge.implementation.DevicesImpl;
import com.azure.resourcemanager.databoxedge.implementation.JobsImpl;
import com.azure.resourcemanager.databoxedge.implementation.MonitoringConfigsImpl;
import com.azure.resourcemanager.databoxedge.implementation.NodesImpl;
import com.azure.resourcemanager.databoxedge.implementation.OperationsImpl;
import com.azure.resourcemanager.databoxedge.implementation.OperationsStatusImpl;
import com.azure.resourcemanager.databoxedge.implementation.OrdersImpl;
import com.azure.resourcemanager.databoxedge.implementation.RolesImpl;
import com.azure.resourcemanager.databoxedge.implementation.SharesImpl;
import com.azure.resourcemanager.databoxedge.implementation.SkusImpl;
import com.azure.resourcemanager.databoxedge.implementation.StorageAccountCredentialsImpl;
import com.azure.resourcemanager.databoxedge.implementation.StorageAccountsImpl;
import com.azure.resourcemanager.databoxedge.implementation.TriggersImpl;
import com.azure.resourcemanager.databoxedge.implementation.UsersImpl;
import com.azure.resourcemanager.databoxedge.models.Addons;
import com.azure.resourcemanager.databoxedge.models.Alerts;
import com.azure.resourcemanager.databoxedge.models.AvailableSkus;
import com.azure.resourcemanager.databoxedge.models.BandwidthSchedules;
import com.azure.resourcemanager.databoxedge.models.Containers;
import com.azure.resourcemanager.databoxedge.models.Devices;
import com.azure.resourcemanager.databoxedge.models.Jobs;
import com.azure.resourcemanager.databoxedge.models.MonitoringConfigs;
import com.azure.resourcemanager.databoxedge.models.Nodes;
import com.azure.resourcemanager.databoxedge.models.Operations;
import com.azure.resourcemanager.databoxedge.models.OperationsStatus;
import com.azure.resourcemanager.databoxedge.models.Orders;
import com.azure.resourcemanager.databoxedge.models.Roles;
import com.azure.resourcemanager.databoxedge.models.Shares;
import com.azure.resourcemanager.databoxedge.models.Skus;
import com.azure.resourcemanager.databoxedge.models.StorageAccountCredentials;
import com.azure.resourcemanager.databoxedge.models.StorageAccounts;
import com.azure.resourcemanager.databoxedge.models.Triggers;
Expand All @@ -64,6 +68,8 @@
public final class DataBoxEdgeManager {
private Operations operations;

private AvailableSkus availableSkus;

private Devices devices;

private Alerts alerts;
Expand All @@ -80,6 +86,10 @@ public final class DataBoxEdgeManager {

private Roles roles;

private Addons addons;

private MonitoringConfigs monitoringConfigs;

private Shares shares;

private StorageAccountCredentials storageAccountCredentials;
Expand All @@ -92,8 +102,6 @@ public final class DataBoxEdgeManager {

private Users users;

private Skus skus;

private final DataBoxEdgeManagementClient clientObject;

private DataBoxEdgeManager(HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
Expand Down Expand Up @@ -137,6 +145,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 @@ -176,6 +185,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 @@ -232,6 +252,9 @@ public DataBoxEdgeManager authenticate(TokenCredential credential, AzureProfile
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 @@ -241,10 +264,7 @@ public DataBoxEdgeManager authenticate(TokenCredential credential, AzureProfile
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 @@ -265,6 +285,14 @@ public Operations operations() {
return operations;
}

/** @return Resource collection API of AvailableSkus. */
public AvailableSkus availableSkus() {
if (this.availableSkus == null) {
this.availableSkus = new AvailableSkusImpl(clientObject.getAvailableSkus(), this);
}
return availableSkus;
}

/** @return Resource collection API of Devices. */
public Devices devices() {
if (this.devices == null) {
Expand Down Expand Up @@ -329,6 +357,22 @@ public Roles roles() {
return roles;
}

/** @return Resource collection API of Addons. */
public Addons addons() {
if (this.addons == null) {
this.addons = new AddonsImpl(clientObject.getAddons(), this);
}
return addons;
}

/** @return Resource collection API of MonitoringConfigs. */
public MonitoringConfigs monitoringConfigs() {
if (this.monitoringConfigs == null) {
this.monitoringConfigs = new MonitoringConfigsImpl(clientObject.getMonitoringConfigs(), this);
}
return monitoringConfigs;
}

/** @return Resource collection API of Shares. */
public Shares shares() {
if (this.shares == null) {
Expand Down Expand Up @@ -378,14 +422,6 @@ public Users users() {
return users;
}

/** @return Resource collection API of Skus. */
public Skus skus() {
if (this.skus == null) {
this.skus = new SkusImpl(clientObject.getSkus(), this);
}
return skus;
}

/**
* @return Wrapped service client DataBoxEdgeManagementClient providing direct access to the underlying
* auto-generated API implementation, based on Azure REST API.
Expand Down
Loading