changes;
+
+ /*
+ * Skip token that encodes the skip information while executing the current request
+ */
+ @JsonProperty(value = "$skipToken")
+ private Object skipToken;
+
+ /** Creates an instance of ResourceChangeListInner class. */
+ public ResourceChangeListInner() {
+ }
+
+ /**
+ * Get the changes property: The pageable value returned by the operation, i.e. a list of changes to the resource.
+ *
+ * - The list is ordered from the most recent changes to the least recent changes. - This list will be empty if
+ * there were no changes during the requested interval. - The `Before` snapshot timestamp value of the oldest change
+ * can be outside of the specified time interval.
+ *
+ * @return the changes value.
+ */
+ public List changes() {
+ return this.changes;
+ }
+
+ /**
+ * Set the changes property: The pageable value returned by the operation, i.e. a list of changes to the resource.
+ *
+ * - The list is ordered from the most recent changes to the least recent changes. - This list will be empty if
+ * there were no changes during the requested interval. - The `Before` snapshot timestamp value of the oldest change
+ * can be outside of the specified time interval.
+ *
+ * @param changes the changes value to set.
+ * @return the ResourceChangeListInner object itself.
+ */
+ public ResourceChangeListInner withChanges(List changes) {
+ this.changes = changes;
+ return this;
+ }
+
+ /**
+ * Get the skipToken property: Skip token that encodes the skip information while executing the current request.
+ *
+ * @return the skipToken value.
+ */
+ public Object skipToken() {
+ return this.skipToken;
+ }
+
+ /**
+ * Set the skipToken property: Skip token that encodes the skip information while executing the current request.
+ *
+ * @param skipToken the skipToken value to set.
+ * @return the ResourceChangeListInner object itself.
+ */
+ public ResourceChangeListInner withSkipToken(Object skipToken) {
+ this.skipToken = skipToken;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (changes() != null) {
+ changes().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/OperationsClientImpl.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/OperationsClientImpl.java
index 92e4e6c050be..d399a829cb41 100644
--- a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/OperationsClientImpl.java
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/OperationsClientImpl.java
@@ -54,7 +54,7 @@ public final class OperationsClientImpl implements OperationsClient {
*/
@Host("{$host}")
@ServiceInterface(name = "ResourceGraphClientO")
- private interface OperationsService {
+ public interface OperationsService {
@Headers({"Content-Type: application/json"})
@Get("/providers/Microsoft.ResourceGraph/operations")
@ExpectedResponses({200})
@@ -82,10 +82,10 @@ private Mono> listSinglePageAsync() {
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
+ final String apiVersion = "2023-09-01-preview";
final String accept = "application/json";
return FluxUtil
- .withContext(
- context -> service.list(this.client.getEndpoint(), this.client.getApiVersion(), accept, context))
+ .withContext(context -> service.list(this.client.getEndpoint(), apiVersion, accept, context))
.>map(
res ->
new PagedResponseBase<>(
@@ -111,10 +111,11 @@ private Mono> listSinglePageAsync(Context context)
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
+ final String apiVersion = "2023-09-01-preview";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
- .list(this.client.getEndpoint(), this.client.getApiVersion(), accept, context)
+ .list(this.client.getEndpoint(), apiVersion, accept, context)
.map(
res ->
new PagedResponseBase<>(
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueriesClientImpl.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueriesClientImpl.java
new file mode 100644
index 000000000000..bc2f0a658728
--- /dev/null
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueriesClientImpl.java
@@ -0,0 +1,168 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.resourcegraph.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.Post;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.resourcemanager.resourcegraph.fluent.QueriesClient;
+import com.azure.resourcemanager.resourcegraph.fluent.models.QueryGenerationResponseInner;
+import com.azure.resourcemanager.resourcegraph.models.QueryGenerationRequest;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in QueriesClient. */
+public final class QueriesClientImpl implements QueriesClient {
+ /** The proxy service used to perform REST calls. */
+ private final QueriesService service;
+
+ /** The service client containing this operation class. */
+ private final ResourceGraphClientImpl client;
+
+ /**
+ * Initializes an instance of QueriesClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ QueriesClientImpl(ResourceGraphClientImpl client) {
+ this.service = RestProxy.create(QueriesService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ResourceGraphClientQueries to be used by the proxy service to perform
+ * REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ResourceGraphClientQ")
+ public interface QueriesService {
+ @Headers({"Content-Type: application/json"})
+ @Post("/providers/Microsoft.ResourceGraph/generateQuery")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> generateQuery(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") QueryGenerationRequest body,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Generates ARG query for a given user prompt.
+ *
+ * @param body Query Generation Request.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return query Generation Response along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> generateQueryWithResponseAsync(QueryGenerationRequest body) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (body == null) {
+ return Mono.error(new IllegalArgumentException("Parameter body is required and cannot be null."));
+ } else {
+ body.validate();
+ }
+ final String apiVersion = "2023-09-01-preview";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.generateQuery(this.client.getEndpoint(), apiVersion, body, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Generates ARG query for a given user prompt.
+ *
+ * @param body Query Generation Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return query Generation Response along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> generateQueryWithResponseAsync(
+ QueryGenerationRequest body, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (body == null) {
+ return Mono.error(new IllegalArgumentException("Parameter body is required and cannot be null."));
+ } else {
+ body.validate();
+ }
+ final String apiVersion = "2023-09-01-preview";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.generateQuery(this.client.getEndpoint(), apiVersion, body, accept, context);
+ }
+
+ /**
+ * Generates ARG query for a given user prompt.
+ *
+ * @param body Query Generation Request.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return query Generation Response on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono generateQueryAsync(QueryGenerationRequest body) {
+ return generateQueryWithResponseAsync(body).flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Generates ARG query for a given user prompt.
+ *
+ * @param body Query Generation Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return query Generation Response along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response generateQueryWithResponse(
+ QueryGenerationRequest body, Context context) {
+ return generateQueryWithResponseAsync(body, context).block();
+ }
+
+ /**
+ * Generates ARG query for a given user prompt.
+ *
+ * @param body Query Generation Request.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return query Generation Response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public QueryGenerationResponseInner generateQuery(QueryGenerationRequest body) {
+ return generateQueryWithResponse(body, Context.NONE).getValue();
+ }
+}
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueriesImpl.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueriesImpl.java
new file mode 100644
index 000000000000..b13f44bbe57d
--- /dev/null
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueriesImpl.java
@@ -0,0 +1,59 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.resourcegraph.implementation;
+
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.resourcegraph.fluent.QueriesClient;
+import com.azure.resourcemanager.resourcegraph.fluent.models.QueryGenerationResponseInner;
+import com.azure.resourcemanager.resourcegraph.models.Queries;
+import com.azure.resourcemanager.resourcegraph.models.QueryGenerationRequest;
+import com.azure.resourcemanager.resourcegraph.models.QueryGenerationResponse;
+
+public final class QueriesImpl implements Queries {
+ private static final ClientLogger LOGGER = new ClientLogger(QueriesImpl.class);
+
+ private final QueriesClient innerClient;
+
+ private final com.azure.resourcemanager.resourcegraph.ResourceGraphManager serviceManager;
+
+ public QueriesImpl(
+ QueriesClient innerClient, com.azure.resourcemanager.resourcegraph.ResourceGraphManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public Response generateQueryWithResponse(QueryGenerationRequest body, Context context) {
+ Response inner = this.serviceClient().generateQueryWithResponse(body, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new QueryGenerationResponseImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public QueryGenerationResponse generateQuery(QueryGenerationRequest body) {
+ QueryGenerationResponseInner inner = this.serviceClient().generateQuery(body);
+ if (inner != null) {
+ return new QueryGenerationResponseImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ private QueriesClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.resourcegraph.ResourceGraphManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueryGenerationResponseImpl.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueryGenerationResponseImpl.java
new file mode 100644
index 000000000000..401efd643b49
--- /dev/null
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/QueryGenerationResponseImpl.java
@@ -0,0 +1,38 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.resourcegraph.implementation;
+
+import com.azure.resourcemanager.resourcegraph.fluent.models.QueryGenerationResponseInner;
+import com.azure.resourcemanager.resourcegraph.models.QueryGenerationResponse;
+import com.azure.resourcemanager.resourcegraph.models.StatusResponse;
+
+public final class QueryGenerationResponseImpl implements QueryGenerationResponse {
+ private QueryGenerationResponseInner innerObject;
+
+ private final com.azure.resourcemanager.resourcegraph.ResourceGraphManager serviceManager;
+
+ QueryGenerationResponseImpl(
+ QueryGenerationResponseInner innerObject,
+ com.azure.resourcemanager.resourcegraph.ResourceGraphManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String query() {
+ return this.innerModel().query();
+ }
+
+ public StatusResponse status() {
+ return this.innerModel().status();
+ }
+
+ public QueryGenerationResponseInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.resourcegraph.ResourceGraphManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceChangeDataImpl.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceChangeDataImpl.java
new file mode 100644
index 000000000000..56cd4365f0f3
--- /dev/null
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceChangeDataImpl.java
@@ -0,0 +1,64 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.resourcegraph.implementation;
+
+import com.azure.resourcemanager.resourcegraph.fluent.models.ResourceChangeDataInner;
+import com.azure.resourcemanager.resourcegraph.models.ChangeType;
+import com.azure.resourcemanager.resourcegraph.models.ResourceChangeData;
+import com.azure.resourcemanager.resourcegraph.models.ResourceChangeDataAfterSnapshot;
+import com.azure.resourcemanager.resourcegraph.models.ResourceChangeDataBeforeSnapshot;
+import com.azure.resourcemanager.resourcegraph.models.ResourcePropertyChange;
+import java.util.Collections;
+import java.util.List;
+
+public final class ResourceChangeDataImpl implements ResourceChangeData {
+ private ResourceChangeDataInner innerObject;
+
+ private final com.azure.resourcemanager.resourcegraph.ResourceGraphManager serviceManager;
+
+ ResourceChangeDataImpl(
+ ResourceChangeDataInner innerObject,
+ com.azure.resourcemanager.resourcegraph.ResourceGraphManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String resourceId() {
+ return this.innerModel().resourceId();
+ }
+
+ public String changeId() {
+ return this.innerModel().changeId();
+ }
+
+ public ResourceChangeDataBeforeSnapshot beforeSnapshot() {
+ return this.innerModel().beforeSnapshot();
+ }
+
+ public ResourceChangeDataAfterSnapshot afterSnapshot() {
+ return this.innerModel().afterSnapshot();
+ }
+
+ public ChangeType changeType() {
+ return this.innerModel().changeType();
+ }
+
+ public List propertyChanges() {
+ List inner = this.innerModel().propertyChanges();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public ResourceChangeDataInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.resourcegraph.ResourceGraphManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceChangeListImpl.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceChangeListImpl.java
new file mode 100644
index 000000000000..e0e7c8dca71a
--- /dev/null
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceChangeListImpl.java
@@ -0,0 +1,52 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.resourcegraph.implementation;
+
+import com.azure.resourcemanager.resourcegraph.fluent.models.ResourceChangeDataInner;
+import com.azure.resourcemanager.resourcegraph.fluent.models.ResourceChangeListInner;
+import com.azure.resourcemanager.resourcegraph.models.ResourceChangeData;
+import com.azure.resourcemanager.resourcegraph.models.ResourceChangeList;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+public final class ResourceChangeListImpl implements ResourceChangeList {
+ private ResourceChangeListInner innerObject;
+
+ private final com.azure.resourcemanager.resourcegraph.ResourceGraphManager serviceManager;
+
+ ResourceChangeListImpl(
+ ResourceChangeListInner innerObject,
+ com.azure.resourcemanager.resourcegraph.ResourceGraphManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public List changes() {
+ List inner = this.innerModel().changes();
+ if (inner != null) {
+ return Collections
+ .unmodifiableList(
+ inner
+ .stream()
+ .map(inner1 -> new ResourceChangeDataImpl(inner1, this.manager()))
+ .collect(Collectors.toList()));
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public Object skipToken() {
+ return this.innerModel().skipToken();
+ }
+
+ public ResourceChangeListInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.resourcegraph.ResourceGraphManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceGraphClientBuilder.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceGraphClientBuilder.java
index 5620f7fc0065..be6ce8ba4820 100644
--- a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceGraphClientBuilder.java
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceGraphClientBuilder.java
@@ -33,6 +33,22 @@ public ResourceGraphClientBuilder endpoint(String endpoint) {
return this;
}
+ /*
+ * server parameter
+ */
+ private String endpoint;
+
+ /**
+ * Sets server parameter.
+ *
+ * @param endpoint the endpoint value.
+ * @return the ResourceGraphClientBuilder.
+ */
+ public ResourceGraphClientBuilder endpoint(String endpoint) {
+ this.endpoint = endpoint;
+ return this;
+ }
+
/*
* The environment to connect to
*/
@@ -103,6 +119,7 @@ public ResourceGraphClientBuilder serializerAdapter(SerializerAdapter serializer
* @return an instance of ResourceGraphClientImpl.
*/
public ResourceGraphClientImpl buildClient() {
+ String localEndpoint = (endpoint != null) ? endpoint : "";
String localEndpoint = (endpoint != null) ? endpoint : "https://management.azure.com";
AzureEnvironment localEnvironment = (environment != null) ? environment : AzureEnvironment.AZURE;
HttpPipeline localPipeline =
@@ -117,7 +134,12 @@ public ResourceGraphClientImpl buildClient() {
: SerializerFactory.createDefaultManagementSerializerAdapter();
ResourceGraphClientImpl client =
new ResourceGraphClientImpl(
- localPipeline, localSerializerAdapter, localDefaultPollInterval, localEnvironment, localEndpoint);
+ localPipeline,
+ localSerializerAdapter,
+ localDefaultPollInterval,
+ localEnvironment,
+ localEndpoint,
+ localEndpoint);
return client;
}
}
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceGraphClientImpl.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceGraphClientImpl.java
index 1a59844481ff..5f1c2d6d119d 100644
--- a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceGraphClientImpl.java
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceGraphClientImpl.java
@@ -23,6 +23,7 @@
import com.azure.core.util.serializer.SerializerAdapter;
import com.azure.core.util.serializer.SerializerEncoding;
import com.azure.resourcemanager.resourcegraph.fluent.OperationsClient;
+import com.azure.resourcemanager.resourcegraph.fluent.QueriesClient;
import com.azure.resourcemanager.resourcegraph.fluent.ResourceGraphClient;
import com.azure.resourcemanager.resourcegraph.fluent.ResourceProvidersClient;
import java.io.IOException;
@@ -49,16 +50,16 @@ public String getEndpoint() {
return this.endpoint;
}
- /** Api Version. */
- private final String apiVersion;
+ /** server parameter. */
+ private final String endpoint;
/**
- * Gets Api Version.
+ * Gets server parameter.
*
- * @return the apiVersion value.
+ * @return the endpoint value.
*/
- public String getApiVersion() {
- return this.apiVersion;
+ public String getEndpoint() {
+ return this.endpoint;
}
/** The HTTP pipeline to send requests through. */
@@ -97,6 +98,18 @@ public Duration getDefaultPollInterval() {
return this.defaultPollInterval;
}
+ /** The QueriesClient object to access its operations. */
+ private final QueriesClient queries;
+
+ /**
+ * Gets the QueriesClient object to access its operations.
+ *
+ * @return the QueriesClient object.
+ */
+ public QueriesClient getQueries() {
+ return this.queries;
+ }
+
/** The ResourceProvidersClient object to access its operations. */
private final ResourceProvidersClient resourceProviders;
@@ -129,18 +142,21 @@ public OperationsClient getOperations() {
* @param defaultPollInterval The default poll interval for long-running operation.
* @param environment The Azure environment.
* @param endpoint server parameter.
+ * @param endpoint server parameter.
*/
ResourceGraphClientImpl(
HttpPipeline httpPipeline,
SerializerAdapter serializerAdapter,
Duration defaultPollInterval,
AzureEnvironment environment,
+ String endpoint,
String endpoint) {
this.httpPipeline = httpPipeline;
this.serializerAdapter = serializerAdapter;
this.defaultPollInterval = defaultPollInterval;
this.endpoint = endpoint;
- this.apiVersion = "2021-03-01";
+ this.endpoint = endpoint;
+ this.queries = new QueriesClientImpl(this);
this.resourceProviders = new ResourceProvidersClientImpl(this);
this.operations = new OperationsClientImpl(this);
}
diff --git a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceProvidersClientImpl.java b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceProvidersClientImpl.java
index dbeb1f57f27d..3ff5af2db6f2 100644
--- a/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceProvidersClientImpl.java
+++ b/sdk/resourcegraph/azure-resourcemanager-resourcegraph/src/main/java/com/azure/resourcemanager/resourcegraph/implementation/ResourceProvidersClientImpl.java
@@ -23,7 +23,14 @@
import com.azure.core.util.FluxUtil;
import com.azure.resourcemanager.resourcegraph.fluent.ResourceProvidersClient;
import com.azure.resourcemanager.resourcegraph.fluent.models.QueryResponseInner;
+import com.azure.resourcemanager.resourcegraph.fluent.models.ResourceChangeDataInner;
+import com.azure.resourcemanager.resourcegraph.fluent.models.ResourceChangeListInner;
import com.azure.resourcemanager.resourcegraph.models.QueryRequest;
+import com.azure.resourcemanager.resourcegraph.models.ResourceChangeDetailsRequestParameters;
+import com.azure.resourcemanager.resourcegraph.models.ResourceChangesRequestParameters;
+import com.azure.resourcemanager.resourcegraph.models.ResourcesHistoryRequest;
+import java.util.List;
+import java.util.Map;
import reactor.core.publisher.Mono;
/** An instance of this class provides access to all the operations defined in ResourceProvidersClient. */
@@ -51,7 +58,7 @@ public final class ResourceProvidersClientImpl implements ResourceProvidersClien
*/
@Host("{$host}")
@ServiceInterface(name = "ResourceGraphClientR")
- private interface ResourceProvidersService {
+ public interface ResourceProvidersService {
@Headers({"Content-Type: application/json"})
@Post("/providers/Microsoft.ResourceGraph/resources")
@ExpectedResponses({200})
@@ -62,6 +69,39 @@ Mono> resources(
@BodyParam("application/json") QueryRequest query,
@HeaderParam("Accept") String accept,
Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post("/providers/Microsoft.ResourceGraph/resourcesHistory")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> resourcesHistory(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") ResourcesHistoryRequest request,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post("/providers/Microsoft.ResourceGraph/resourceChanges")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> resourceChanges(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") ResourceChangesRequestParameters parameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Post("/providers/Microsoft.ResourceGraph/resourceChangeDetails")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> resourceChangeDetails(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") ResourceChangeDetailsRequestParameters parameters,
+ @HeaderParam("Accept") String accept,
+ Context context);
}
/**
@@ -86,11 +126,10 @@ private Mono> resourcesWithResponseAsync(QueryReque
} else {
query.validate();
}
+ final String apiVersion = "2023-09-01-preview";
final String accept = "application/json";
return FluxUtil
- .withContext(
- context ->
- service.resources(this.client.getEndpoint(), this.client.getApiVersion(), query, accept, context))
+ .withContext(context -> service.resources(this.client.getEndpoint(), apiVersion, query, accept, context))
.contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
}
@@ -117,9 +156,10 @@ private Mono> resourcesWithResponseAsync(QueryReque
} else {
query.validate();
}
+ final String apiVersion = "2023-09-01-preview";
final String accept = "application/json";
context = this.client.mergeContext(context);
- return service.resources(this.client.getEndpoint(), this.client.getApiVersion(), query, accept, context);
+ return service.resources(this.client.getEndpoint(), apiVersion, query, accept, context);
}
/**
@@ -164,4 +204,323 @@ public Response resourcesWithResponse(QueryRequest query, Co
public QueryResponseInner resources(QueryRequest query) {
return resourcesWithResponse(query, Context.NONE).getValue();
}
+
+ /**
+ * List all snapshots of a resource for a given time interval.
+ *
+ * @param request Request specifying the query and its options.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return dictionary of <any> along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> resourcesHistoryWithResponseAsync(ResourcesHistoryRequest request) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (request == null) {
+ return Mono.error(new IllegalArgumentException("Parameter request is required and cannot be null."));
+ } else {
+ request.validate();
+ }
+ final String apiVersion = "2021-06-01-preview";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.resourcesHistory(this.client.getEndpoint(), apiVersion, request, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * List all snapshots of a resource for a given time interval.
+ *
+ * @param request Request specifying the query and its options.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return dictionary of <any> along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> resourcesHistoryWithResponseAsync(
+ ResourcesHistoryRequest request, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (request == null) {
+ return Mono.error(new IllegalArgumentException("Parameter request is required and cannot be null."));
+ } else {
+ request.validate();
+ }
+ final String apiVersion = "2021-06-01-preview";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.resourcesHistory(this.client.getEndpoint(), apiVersion, request, accept, context);
+ }
+
+ /**
+ * List all snapshots of a resource for a given time interval.
+ *
+ * @param request Request specifying the query and its options.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return dictionary of <any> on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono