diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/SBVirtualNetworkRuleSetCreate.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/SBVirtualNetworkRuleSetCreate.json new file mode 100644 index 000000000000..8a55ca34ebe7 --- /dev/null +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/SBVirtualNetworkRuleSetCreate.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-6019", + "resourceGroupName": "ResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "Subscription", + "parameters": { + "properties": { + "defaultAction": "Deny", + "virtualNetworkRules": [ + { + "subnet": { + "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet2" + }, + "ignoreMissingVnetServiceEndpoint": true + }, + { + "subnet": { + "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet3" + }, + "ignoreMissingVnetServiceEndpoint": false + }, + { + "subnet": { + "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet6" + }, + "ignoreMissingVnetServiceEndpoint": false + } + ], + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourceGroups/Default-ServiceBus-AustraliaEast/providers/Microsoft.ServiceBus/namespaces/sdk-Namespace-9659/networkruleset/default", + "name": "default", + "type": "Microsoft.ServiceBus/Namespaces/NetworkRuleSet", + "properties": { + "defaultAction": "Deny", + "virtualNetworkRules": [ + { + "subnet": { "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet2" }, + "ignoreMissingVnetServiceEndpoint": true + }, + { + "subnet": { "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet3" }, + "ignoreMissingVnetServiceEndpoint": false + }, + { + "subnet": { "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet6" }, + "ignoreMissingVnetServiceEndpoint": false + } + ], + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + } + } +} diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/SBVirtualNetworkRuleSetGet.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/SBVirtualNetworkRuleSetGet.json new file mode 100644 index 000000000000..d62458a0be9f --- /dev/null +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/SBVirtualNetworkRuleSetGet.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-6019", + "resourceGroupName": "ResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "Subscription" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionid/resourceGroups/Default-ServiceBus-AustraliaEast/providers/Microsoft.ServiceBus/namespaces/sdk-Namespace-9659/networkruleset/default", + "name": "default", + "type": "Microsoft.ServiceBus/Namespaces/NetworkRuleSet", + "properties": { + "defaultAction": "Deny", + "virtualNetworkRules": [ + { + "subnet": { "id": "/subscriptions/subscriptionid/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet2" }, + "ignoreMissingVnetServiceEndpoint": true + }, + { + "subnet": { "id": "/subscriptions/subscriptionid/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet3" }, + "ignoreMissingVnetServiceEndpoint": false + }, + { + "subnet": { "id": "/subscriptions/subscriptionid/resourcegroups/alitest/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet6" }, + "ignoreMissingVnetServiceEndpoint": false + } + ], + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + } + } +} diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/SBOperations_List.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/SBOperations_List.json new file mode 100644 index 000000000000..88fcc9192f96 --- /dev/null +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/examples/SBOperations_List.json @@ -0,0 +1,301 @@ +{ + "parameters": { + "api-version": "2016-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ServiceBus/checkNameAvailability/action", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Non Resource Operation", + "operation": "Get namespace availability." + } + }, + { + "name": "Microsoft.ServiceBus/register/action", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "ServiceBus Resource Provider", + "operation": "Registers the ServiceBus Resource Provider" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Namespace", + "operation": "Create Or Update Namespace " + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Namespace", + "operation": "Get Namespace Resource" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/Delete", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Namespace", + "operation": "Delete Namespace" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/authorizationRules/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "AuthorizationRules", + "operation": "Create or Update Namespace Authorization Rules" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/authorizationRules/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "AuthorizationRules", + "operation": "Get Namespace Authorization Rules" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/authorizationRules/delete", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "AuthorizationRules", + "operation": "Delete Namespace Authorization Rule" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/authorizationRules/listkeys/action", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "AuthorizationRules", + "operation": "Get Namespace Listkeys" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/authorizationRules/regenerateKeys/action", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "AuthorizationRules", + "operation": "Resource Regeneratekeys" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/queues/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Queue", + "operation": "Create or Update Queue" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/queues/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Queue", + "operation": "Get Queue" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/queues/Delete", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Queue", + "operation": "Delete Queue" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/queues/authorizationRules/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Queue AuthorizationRules", + "operation": "Create or Update Queue Authorization Rule" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/queues/authorizationRules/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Queue AuthorizationRules", + "operation": " Get Queue Authorization Rules" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/queues/authorizationRules/delete", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Queue AuthorizationRules", + "operation": "Delete Queue Authorization Rules" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/queues/authorizationRules/listkeys/action", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Queue AuthorizationRules", + "operation": "List Queue keys" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/queues/authorizationRules/regenerateKeys/action", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Queue AuthorizationRules", + "operation": "Resource Regeneratekeys" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Topic", + "operation": "Create or Update Topic" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Topic", + "operation": "Get Topic" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/Delete", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Topic", + "operation": "Delete Topic" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/authorizationRules/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Topic AuthorizationRules", + "operation": "Create or Update Topic Authorization Rule" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/authorizationRules/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Topic AuthorizationRules", + "operation": " Get Topic Authorization Rules" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/authorizationRules/delete", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Topic AuthorizationRules", + "operation": "Delete Topic Authorization Rules" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/authorizationRules/listkeys/action", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Topic AuthorizationRules", + "operation": "List Topic keys" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/authorizationRules/regenerateKeys/action", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Topic AuthorizationRules", + "operation": "Resource Regeneratekeys" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/subscriptions/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "TopicSubscription", + "operation": "Create or Update TopicSubscription" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/subscriptions/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "TopicSubscription", + "operation": "Get TopicSubscription" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/subscriptions/Delete", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "TopicSubscription", + "operation": "Delete TopicSubscription" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/subscriptions/rules/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Rule", + "operation": "Create or Update Rule" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/subscriptions/rules/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Rule", + "operation": "Get Rule" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/topics/subscriptions/rules/Delete", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Rule", + "operation": "Delete Rule" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/metricDefinitions/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Namespace metrics", + "operation": "Get Namespace metrics" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/diagnosticSettings/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Namespace diagnostic settings", + "operation": "Get Namespace diagnostic settings" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/diagnosticSettings/write", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Namespace diagnostic settings", + "operation": "Create or Update Namespace diagnostic settings" + } + }, + { + "name": "Microsoft.ServiceBus/namespaces/logDefinitions/read", + "display": { + "provider": "Microsoft Azure ServiceBus", + "resource": "Namespace logs", + "operation": "Get Namespace logs" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/servicebus-preview.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/servicebus-preview.json index 7eddf06473b9..689deaaf6251 100644 --- a/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/servicebus-preview.json +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/preview/2018-01-01-preview/servicebus-preview.json @@ -34,6 +34,40 @@ } }, "paths": { + "/providers/Microsoft.ServiceBus/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "OperationsList": { "$ref": "./examples/SBOperations_List.json" } + }, + "description": "Lists all of the available ServiceBus REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces": { "get": { "tags": [ @@ -324,7 +358,7 @@ } } } - }, + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/ipfilterrules": { "get": { "tags": [ @@ -694,6 +728,97 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkruleset/default": { + "put": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceVirtualNetworkRuleSetCreate": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/SBVirtualNetworkRuleSetCreate.json" + } + }, + "operationId": "Namespaces_CreateNetworkRuleSet", + "description": "Gets NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + }, + "description": "The Namespace IpFilterRule." + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceVirtualNetworkRuleSetget": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/SBVirtualNetworkRuleSetGet.json" + } + }, + "operationId": "Namespaces_GetNetworkRuleSet", + "description": "Gets NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } } }, "definitions": { @@ -902,6 +1027,55 @@ ], "description": "SKU of the namespace." }, + "OperationListResult": { + "description": "Result of the request to list ServiceBus operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "description": "List of ServiceBus operations supported by the Microsoft.ServiceBus resource provider.", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "A ServiceBus REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{operation}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft.ServiceBus" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource on which the operation is performed: Invoice, etc." + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Operation type: Read, write, delete, etc." + } + } + } + } + }, "ErrorResponse": { "description": "Error reponse indicates ServiceBus service is not able to process the incoming request. The reason is provided in the error message.", "type": "object", @@ -1003,6 +1177,92 @@ } }, "description": "The response from the List namespace operation." + }, + "Subnet": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID of Virtual Network Subnet" + } + }, + "description": "Properties supplied for Subnet" + }, + "NWRuleSetIpRules": { + "x-ms-client-flatten": true, + "properties": { + "ipMask": { + "type": "string", + "description": "IP Mask" + }, + "action": { + "type": "string", + "description": "The IP Filter Action", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "NetworkRuleIPAction", + "modelAsString": true + } + } + }, + "description": "The response from the List namespace operation." + }, + "NWRuleSetVirtualNetworkRules": { + "x-ms-client-flatten": true, + "properties": { + "subnet": { + "$ref": "#/definitions/Subnet", + "description": "Subnet properties" + }, + "ignoreMissingVnetServiceEndpoint": { + "type": "boolean", + "description": "Value that indicates whether to ignore missing Vnet Service Endpoint" + } + }, + "description": "The response from the List namespace operation." + }, + "NetworkRuleSet": { + "properties": { + "properties": { + "description": "NetworkRuleSet properties", + "x-ms-client-flatten": true, + "properties": { + "defaultAction": { + "type": "string", + "description": "Default Action for Network Rule Set", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": true + } + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetVirtualNetworkRules" + }, + "description": "List VirtualNetwork Rules" + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetIpRules" + }, + "description": "List of IpRules" + } + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Description of topic resource." } }, "parameters": { diff --git a/specification/servicebus/resource-manager/readme.md b/specification/servicebus/resource-manager/readme.md index 0f15a7226ca9..12890c9ccf01 100644 --- a/specification/servicebus/resource-manager/readme.md +++ b/specification/servicebus/resource-manager/readme.md @@ -142,6 +142,11 @@ namespace: com.microsoft.azure.management.servicebus license-header: MICROSOFT_MIT_NO_CODEGEN payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-servicebus +directive: + rename-model: + from: PremiumMessagingRegions + to: PremiumMessagingRegion + ``` ### Java multi-api