From d9e3338ee3b7625e74ec9285f7d3e0ca57e3cbb2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 15 Feb 2024 19:59:03 +0000 Subject: [PATCH 1/3] sync: fetch 2024-02-15 spec and apply patches --- spec/oas3.fabric.fetched.json | 1462 +++++++++++++++++++++++++-------- spec/oas3.fabric.patched.json | 1462 +++++++++++++++++++++++++-------- 2 files changed, 2200 insertions(+), 724 deletions(-) diff --git a/spec/oas3.fabric.fetched.json b/spec/oas3.fabric.fetched.json index 35520d0a..28a9ceb8 100644 --- a/spec/oas3.fabric.fetched.json +++ b/spec/oas3.fabric.fetched.json @@ -13,7 +13,7 @@ "name": "Equinix Inc", "url": "https://developer.equinix.com/agreement" }, - "version": "4.11" + "version": "4.12" }, "externalDocs": { "description": "Find more information on Equinix Developer Portal", @@ -203,6 +203,9 @@ "Fcr2Vd": { "$ref": "#/components/examples/Fcr2Vd" }, + "Fcr2Vd-Redundant-Secondary": { + "$ref": "#/components/examples/Fcr2Vd-Redundant-Secondary" + }, "Fcr2IpWan": { "$ref": "#/components/examples/Fcr2IpWan" }, @@ -1141,7 +1144,7 @@ }, "examples": { "example": { - "$ref": "#/components/examples/400" + "$ref": "#/components/examples/400_routing_protocol" } } } @@ -5608,7 +5611,7 @@ "$ref": "#/components/schemas/GetAllConnectionRouteFiltersResponse" }, "examples": { - "connectionRouteFiltersResponse": { + "ConnectionRouteFiltersResponse": { "$ref": "#/components/examples/ConnectionRouteFiltersGetAll" } } @@ -5623,8 +5626,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -5745,7 +5751,7 @@ "$ref": "#/components/schemas/ConnectionRouteFilterData" }, "examples": { - "connectionRouteFilterAttachResponse": { + "ConnectionRouteFilterAttachResponse": { "$ref": "#/components/examples/AttachConnectionRouteFiltersResponse" } } @@ -5760,8 +5766,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -5898,7 +5907,7 @@ "$ref": "#/components/schemas/ConnectionRouteFilterData" }, "examples": { - "connectionRouteFilterAttachResponse": { + "ConnectionRouteFilterAttachResponse": { "$ref": "#/components/examples/AttachConnectionRouteFiltersResponse" } } @@ -6036,10 +6045,10 @@ "$ref": "#/components/schemas/ConnectionRouteFilterData" }, "examples": { - "connectionRouteFilterDetachInboundResponse": { + "ConnectionRouteFilterDetachInboundResponse": { "$ref": "#/components/examples/DetachConnectionRouteFilterInboundResponse" }, - "connectionRouteFilterDetachOutboundResponse": { + "ConnectionRouteFilterDetachOutboundResponse": { "$ref": "#/components/examples/DetachConnectionRouteFilterOutboundResponse" } } @@ -6157,6 +6166,9 @@ "examples": { "RouteFilterBgpIpv4Prefix": { "$ref": "#/components/examples/RouteFilterCreateBgpIpv4Prefix" + }, + "RouteFilterBgpIpv6Prefix": { + "$ref": "#/components/examples/RouteFilterCreateBgpIpv6Prefix" } } } @@ -6172,7 +6184,7 @@ "$ref": "#/components/schemas/RouteFiltersData" }, "examples": { - "getSpecificRouteFilterResponse": { + "GetSpecificRouteFilterResponse": { "$ref": "#/components/examples/RouteFilterCreateBgpIpv4PrefixResponse" } } @@ -6187,8 +6199,8 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "TransientState": { + "$ref": "#/components/examples/400_transient_state" } } } @@ -6300,7 +6312,7 @@ "$ref": "#/components/schemas/RouteFiltersData" }, "examples": { - "getSpecificRouteFilterResponse": { + "GetSpecificRouteFilterResponse": { "$ref": "#/components/examples/RouteFilterCreateBgpIpv4PrefixResponse" } } @@ -6315,8 +6327,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -6399,13 +6414,13 @@ } } }, - "put": { + "delete": { "tags": [ "Route Filters" ], - "summary": "Replace Route Filter", - "description": "This API provides capability to replace a Route Filter completely", - "operationId": "replaceRouteFilterByUuid", + "summary": "Delete Route Filter", + "description": "This API provides capability to delete a Route Filter", + "operationId": "deleteRouteFilterByUuid", "parameters": [ { "name": "routeFilterId", @@ -6417,21 +6432,6 @@ } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/RouteFiltersBase" - }, - "examples": { - "RouteFilterIpv4ReplaceExample": { - "$ref": "#/components/examples/UpdateRouteFilterIPv4" - } - } - } - }, - "required": true - }, "responses": { "202": { "description": "Successful operation", @@ -6441,8 +6441,8 @@ "$ref": "#/components/schemas/RouteFiltersData" }, "examples": { - "routeFilterIpv4ReplaceResponse": { - "$ref": "#/components/examples/RouteFilterIpv4ReplaceResponse" + "RouteFilterDeleteBgpIpv4PrefixResponse": { + "$ref": "#/components/examples/RouteFilterDeleteBgpIpv4PrefixResponse" } } } @@ -6457,7 +6457,7 @@ }, "examples": { "example": { - "$ref": "#/components/examples/400_route_filters" + "$ref": "#/components/examples/400_attached_connection" } } } @@ -6540,13 +6540,13 @@ } } }, - "delete": { + "patch": { "tags": [ "Route Filters" ], - "summary": "Delete Route Filter", - "description": "This API provides capability to delete a Route Filter", - "operationId": "deleteRouteFilterByUuid", + "summary": "Patch Route Filter", + "description": "This API provides capability to partially update a Route Filter", + "operationId": "patchRouteFilterByUuid", "parameters": [ { "name": "routeFilterId", @@ -6558,6 +6558,21 @@ } } ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RouteFiltersPatchRequest" + }, + "examples": { + "RouteFilterNamePatchExample": { + "$ref": "#/components/examples/PatchRouteFilterName" + } + } + } + }, + "required": true + }, "responses": { "202": { "description": "Successful operation", @@ -6567,8 +6582,8 @@ "$ref": "#/components/schemas/RouteFiltersData" }, "examples": { - "routeFilterDeleteBgpIpv4PrefixResponse": { - "$ref": "#/components/examples/RouteFilterDeleteBgpIpv4PrefixResponse" + "RouteFilterNamePatchResponse": { + "$ref": "#/components/examples/RouteFilterNamePatchResponse" } } } @@ -6583,7 +6598,7 @@ }, "examples": { "example": { - "$ref": "#/components/examples/400_attached_connection" + "$ref": "#/components/examples/400_invalid_operation" } } } @@ -6665,14 +6680,16 @@ } } } - }, - "patch": { + } + }, + "/fabric/v4/routeFilters/{routeFilterId}/changes": { + "get": { "tags": [ "Route Filters" ], - "summary": "Patch Route Filter", - "description": "This API provides capability to partially update a Route Filter", - "operationId": "patchRouteFilterByUuid", + "summary": "Get All Changes", + "description": "This API provides capability to retrieve all of a Route Filter's Changes", + "operationId": "getRouteFilterChanges", "parameters": [ { "name": "routeFilterId", @@ -6682,34 +6699,39 @@ "schema": { "$ref": "#/components/schemas/RouteFilterId" } + }, + { + "name": "offset", + "in": "query", + "description": "offset", + "required": false, + "schema": { + "type": "integer" + }, + "example": 1 + }, + { + "name": "limit", + "in": "query", + "description": "number of records to fetch", + "required": false, + "schema": { + "type": "integer" + }, + "example": 10 } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/RouteFiltersPatchRequest" - }, - "examples": { - "RouteFilterNamePatchExample": { - "$ref": "#/components/examples/PatchRouteFilterName" - } - } - } - }, - "required": true - }, "responses": { - "202": { - "description": "Successful operation", + "200": { + "description": "Fabric Route Filter Change object", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/RouteFiltersData" + "$ref": "#/components/schemas/RouteFilterChangeDataResponse" }, "examples": { - "RouteFilterNamePatchResponse": { - "$ref": "#/components/examples/RouteFilterNamePatchResponse" + "RouteFilterChangesResponse": { + "$ref": "#/components/examples/RouteFilterGetAllChangesResponseExample" } } } @@ -6723,8 +6745,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_invalid_operation" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -6775,21 +6800,6 @@ } } }, - "415": { - "description": "Unsupported Media Type", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorList" - }, - "examples": { - "example": { - "$ref": "#/components/examples/415" - } - } - } - } - }, "500": { "description": "Internal server error", "content": { @@ -6808,14 +6818,14 @@ } } }, - "/fabric/v4/routeFilters/{routeFilterId}/changes": { + "/fabric/v4/routeFilters/{routeFilterId}/changes/{changeId}": { "get": { "tags": [ "Route Filters" ], - "summary": "Get All Changes", - "description": "This API provides capability to retrieve all of a Route Filter's Changes", - "operationId": "getRouteFilterChanges", + "summary": "Get Change By ID", + "description": "This API provides capability to retrieve a specific Route Filter's Changes", + "operationId": "getRouteFilterChangeByUuid", "parameters": [ { "name": "routeFilterId", @@ -6827,24 +6837,13 @@ } }, { - "name": "offset", - "in": "query", - "description": "offset", - "required": false, - "schema": { - "type": "integer" - }, - "example": 1 - }, - { - "name": "limit", - "in": "query", - "description": "number of records to fetch", - "required": false, + "name": "changeId", + "in": "path", + "description": "Routing Protocol Change UUID", + "required": true, "schema": { - "type": "integer" - }, - "example": 10 + "$ref": "#/components/schemas/ChangeId_1" + } } ], "responses": { @@ -6853,11 +6852,11 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/RouteFilterChangeDataResponse" + "$ref": "#/components/schemas/RouteFilterChangeData" }, "examples": { - "RouteFilterChangesResponse": { - "$ref": "#/components/examples/RouteFilterGetAllChangesResponseExample" + "RouteFilterChangeResponse": { + "$ref": "#/components/examples/RouteFilterGetChangeResponseExample" } } } @@ -6871,7 +6870,10 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { "$ref": "#/components/examples/400_Invalid_id" } } @@ -6941,14 +6943,14 @@ } } }, - "/fabric/v4/routeFilters/{routeFilterId}/changes/{changeId}": { + "/fabric/v4/routeFilters/{routeFilterId}/connections": { "get": { "tags": [ "Route Filters" ], - "summary": "Get Change By ID", - "description": "This API provides capability to retrieve a specific Route Filter's Changes", - "operationId": "getRouteFilterChangeByUuid", + "summary": "Get Connections", + "description": "This API provides capability to view all Connections using the Route Filter", + "operationId": "getRouteFilterConnections", "parameters": [ { "name": "routeFilterId", @@ -6958,28 +6960,19 @@ "schema": { "$ref": "#/components/schemas/RouteFilterId" } - }, - { - "name": "changeId", - "in": "path", - "description": "Routing Protocol Change UUID", - "required": true, - "schema": { - "$ref": "#/components/schemas/ChangeId_1" - } } ], "responses": { "200": { - "description": "Fabric Route Filter Change object", + "description": "Successful operation", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/RouteFilterChangeData" + "$ref": "#/components/schemas/GetRouteFilterGetConnectionsResponse" }, "examples": { - "RouteFilterChangeResponse": { - "$ref": "#/components/examples/RouteFilterGetChangeResponseExample" + "RouteFilterGetConnectionsResponse": { + "$ref": "#/components/examples/RouteFilterGetConnectionsResponse" } } } @@ -6993,7 +6986,10 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { "$ref": "#/components/examples/400_Invalid_id" } } @@ -7045,6 +7041,21 @@ } } }, + "415": { + "description": "Unsupported Media Type", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/415" + } + } + } + } + }, "500": { "description": "Internal server error", "content": { @@ -7063,36 +7074,41 @@ } } }, - "/fabric/v4/routeFilters/{routeFilterId}/connections": { - "get": { + "/fabric/v4/routeFilters/search": { + "post": { "tags": [ "Route Filters" ], - "summary": "Get Connections", - "description": "This API provides capability to view all Connections using the Route Filter", - "operationId": "getRouteFilterConnections", - "parameters": [ - { - "name": "routeFilterId", - "in": "path", - "description": "Route Filters Id", - "required": true, - "schema": { - "$ref": "#/components/schemas/RouteFilterId" + "summary": "Search Route Filters", + "description": "This API provides capability to search Route Filters", + "operationId": "searchRouteFilters", + "parameters": [], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RouteFiltersSearchBase" + }, + "examples": { + "searchRouteFiltersRequest": { + "$ref": "#/components/examples/SearchRouteFiltersRequest" + } + } } - } - ], + }, + "required": true + }, "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/GetRouteFilterGetConnectionsResponse" + "$ref": "#/components/schemas/RouteFiltersSearchResponse" }, "examples": { - "routeFilterGetConnectionsResponse": { - "$ref": "#/components/examples/RouteFilterGetConnectionsResponse" + "SearchRouteFiltersResponse": { + "$ref": "#/components/examples/SearchRouteFiltersResponse" } } } @@ -7106,8 +7122,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -7247,11 +7266,16 @@ } }, "400": { - "description": "Bad request", + "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/404_invalid_id" + } } } } @@ -7340,6 +7364,9 @@ "examples": { "RouteFilterRuleBgpIpv4Prefix": { "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv4Prefix" + }, + "RouteFilterRuleBgpIpv6Prefix": { + "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv6Prefix" } } } @@ -7355,8 +7382,11 @@ "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "getSpecificRouteFilterRuleResponse": { + "GetSpecificRouteFilterRuleIpv4Response": { "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv4PrefixResponse" + }, + "GetSpecificRouteFilterRuleIpv6Response": { + "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv6PrefixResponse" } } } @@ -7370,8 +7400,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidType": { + "$ref": "#/components/examples/400_bad_request" + }, + "InvalidId": { + "$ref": "#/components/examples/404_invalid_id" } } } @@ -7487,8 +7520,11 @@ "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "getSpecificRouteFilterRuleResponse": { + "GetSpecificRouteFilterRuleIpv4Response": { "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv4PrefixResponse" + }, + "GetSpecificRouteFilterRuleIpv6Response": { + "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv6PrefixResponse" } } } @@ -7502,8 +7538,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidType": { + "$ref": "#/components/examples/400_bad_request" + }, + "InvalidId": { + "$ref": "#/components/examples/404_invalid_id" } } } @@ -7622,6 +7661,9 @@ "examples": { "RouteFilterIpv4ReplaceExample": { "$ref": "#/components/examples/UpdateRouteFilterRuleIPv4" + }, + "RouteFilterIpv6ReplaceExample": { + "$ref": "#/components/examples/UpdateRouteFilterRuleIPv6" } } } @@ -7637,8 +7679,11 @@ "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "routeFilterRuleIpv4ReplaceResponse": { - "$ref": "#/components/examples/RouteFilterRuleIpv4ReplaceResponse" + "RouteFilterRuleIpv4ReplaceResponse": { + "$ref": "#/components/examples/RouteFilterRuleReplaceIpv4Response" + }, + "routeFilterRuleIpv6ReplaceResponse": { + "$ref": "#/components/examples/RouteFilterRuleReplaceIpv6Response" } } } @@ -7652,8 +7697,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidType": { + "$ref": "#/components/examples/400_bad_request" + }, + "InvalidId": { + "$ref": "#/components/examples/404_invalid_id" } } } @@ -7772,8 +7820,11 @@ "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "routeFilterDeleteBgpIpv4PrefixResponse": { + "RouteFilterDeleteBgpIpv4PrefixResponse": { "$ref": "#/components/examples/RouteFilterRuleDeleteBgpIpv4PrefixResponse" + }, + "routeFilterDeleteBgpIpv6PrefixResponse": { + "$ref": "#/components/examples/RouteFilterRuleDeleteBgpIpv6PrefixResponse" } } } @@ -7905,7 +7956,13 @@ "$ref": "#/components/schemas/RouteFilterRulesPatchRequest" }, "examples": { - "RouteFilterRuleNamePatchExample": { + "RouteFilterRuleName": { + "$ref": "#/components/examples/PatchRouteFilterRuleName" + }, + "RouteFilterRulePrefix": { + "$ref": "#/components/examples/PatchRouteFilterRulePrefix" + }, + "RouteFilterRulePrefixMatch": { "$ref": "#/components/examples/PatchRouteFilterRulePrefixMatch" } } @@ -7919,11 +7976,14 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/RouteFiltersData" + "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "RouteFilterNamePatchResponse": { - "$ref": "#/components/examples/RouteFilterNamePatchResponse" + "RouteFilterRuleIpv4ReplaceResponse": { + "$ref": "#/components/examples/RouteFilterRuleReplaceIpv4Response" + }, + "routeFilterRuleIpv6ReplaceResponse": { + "$ref": "#/components/examples/RouteFilterRuleReplaceIpv6Response" } } } @@ -7937,8 +7997,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_invalid_operation" + "InvalidType": { + "$ref": "#/components/examples/400_bad_request" + }, + "InvalidId": { + "$ref": "#/components/examples/404_invalid_id" } } } @@ -8094,7 +8157,10 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { "$ref": "#/components/examples/400_Invalid_id" } } @@ -8225,7 +8291,10 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { "$ref": "#/components/examples/400_Invalid_id" } } @@ -8339,6 +8408,96 @@ } } } + }, + "400": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/404_invalid_id" + } + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/401" + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/403" + } + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/400" + } + } + } + } + }, + "415": { + "description": "Unsupported Media Type", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/415" + } + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/500_internal_error" + } + } + } + } } } } @@ -9814,6 +9973,9 @@ }, "CreateRegionalNetwork": { "$ref": "#/components/examples/CreateRegionalNetwork" + }, + "CreateLocalNetwork": { + "$ref": "#/components/examples/CreateLocalNetwork" } } } @@ -14187,23 +14349,12 @@ "type": "integer", "example": 0 }, + "rulesCount": { + "type": "integer", + "example": 0 + }, "project": { - "allOf": [ - { - "$ref": "#/components/schemas/Project" - }, - { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "Project URI", - "format": "uri", - "example": "https://api.equinix.com/resourceManager/v1/projects/567" - } - } - } - ] + "$ref": "#/components/schemas/RouteFiltersData_project" }, "notifications": { "type": "array", @@ -14222,7 +14373,7 @@ "type": "array", "description": "Patch Route Filters request", "items": { - "$ref": "#/components/schemas/ConnectionChangeOperation" + "$ref": "#/components/schemas/RouteFiltersPatchRequestItem" } }, "RouteFilterChangeDataResponse": { @@ -14306,6 +14457,92 @@ } } }, + "RouteFiltersSearchBase": { + "type": "object", + "properties": { + "filter": { + "$ref": "#/components/schemas/RouteFiltersSearchBase_filter" + }, + "pagination": { + "$ref": "#/components/schemas/Pagination" + }, + "sort": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortItem" + } + } + } + }, + "RouteFiltersSearchFilterItem": { + "type": "object", + "properties": { + "property": { + "type": "string", + "enum": [ + "/type", + "/name", + "/project/projectId", + "/uuid", + "/state" + ] + }, + "operator": { + "type": "string" + }, + "values": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SortItem": { + "type": "object", + "properties": { + "property": { + "type": "string", + "description": "Possible field names to use on sorting", + "default": "/changeLog/updatedDateTime", + "enum": [ + "/type", + "/uuid", + "/name", + "/project/projectId", + "/state", + "/notMatchedRuleAction", + "/connectionsCount", + "/changeLog/createdDateTime", + "/changeLog/updatedDateTime" + ] + }, + "direction": { + "type": "string", + "description": "Sorting direction", + "default": "DESC", + "enum": [ + "DESC", + "ASC" + ] + } + } + }, + "RouteFiltersSearchResponse": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/Pagination" + }, + "data": { + "type": "array", + "description": "List of Route Filters", + "items": { + "$ref": "#/components/schemas/RouteFiltersData" + } + } + } + }, "GetRouteFilterRulesResponse": { "type": "object", "properties": { @@ -14374,6 +14611,9 @@ "type": "string", "description": "Customer-provided Route Filter Rule description" }, + "state": { + "$ref": "#/components/schemas/RouteFilterRuleState" + }, "prefixMatch": { "type": "string", "description": "prefix matching operator", @@ -14409,7 +14649,7 @@ "type": "array", "description": "Patch Route Filters Rule request", "items": { - "$ref": "#/components/schemas/RouteFilterChangePrefixMatch" + "$ref": "#/components/schemas/RouteFilterRulesPatchRequestItem" } }, "RouteFilterRulesChangeDataResponse": { @@ -14959,7 +15199,7 @@ "description": "Router package code", "enum": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -15529,7 +15769,7 @@ ] }, "package": { - "$ref": "#/components/schemas/PackageResponse" + "$ref": "#/components/schemas/precisionTimePackageResponse" }, "connections": { "maxItems": 2, @@ -15617,7 +15857,7 @@ "type": "string" }, "package": { - "$ref": "#/components/schemas/packageRequest" + "$ref": "#/components/schemas/precisionTimePackageRequest" }, "connections": { "type": "array", @@ -15637,6 +15877,87 @@ }, "description": "EPT service instance" }, + "precisionTimePackageResponse": { + "title": "precisionTimePackageRespose", + "required": [ + "code" + ], + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri" + }, + "code": { + "type": "string", + "enum": [ + "NTP_STANDARD", + "NTP_ENTERPRISE", + "PTP_STANDARD", + "PTP_ENTERPRISE" + ] + }, + "type": { + "type": "string", + "enum": [ + "TIME_SERVICE_PACKAGE" + ] + }, + "bandwidth": { + "type": "integer", + "example": 10 + }, + "clientsPerSecondMax": { + "type": "integer", + "example": 100 + }, + "redundancySupported": { + "type": "boolean", + "example": true + }, + "multiSubnetSupported": { + "type": "boolean", + "example": true + }, + "accuracyUnit": { + "type": "string", + "example": "microseconds" + }, + "accuracySla": { + "type": "integer", + "example": 50 + }, + "accuracyAvgMin": { + "type": "integer", + "example": 1 + }, + "accuracyAvgMax": { + "type": "integer", + "example": 10 + }, + "changelog": { + "$ref": "#/components/schemas/Changelog" + } + }, + "description": "EPT Service Package Information", + "example": { + "href": "https://api.equinix.com/fabric/v4/timeServicePackage/NTP_STANDARD", + "code": "NTP_STANDARD", + "type": "TIME_SERVICE_PACKAGE", + "bandwidth": 10, + "accuracyUnit": "microseconds", + "accuracySla": 50, + "accuracyAvgMin": 1, + "accuracyAvgMax": 10, + "clientsPerSecondMax": 100, + "redundancySupported": true, + "multiSubnetSupported": true, + "changeLog": { + "createdDateTime": "2023-05-16T07:50:49.749Z", + "updatedDateTime": "2023-05-17T07:50:49.749Z" + } + } + }, "ConnectionType": { "type": "string", "description": "Connection type", @@ -15649,7 +15970,8 @@ "EIA_VC", "EVPLAN_VC", "EPLAN_VC", - "IPWAN_VC" + "IPWAN_VC", + "IA_VC" ] }, "Order": { @@ -16518,7 +16840,8 @@ "example": "L2_PROFILE", "enum": [ "L2_PROFILE", - "L3_PROFILE" + "L3_PROFILE", + "IA_PROFILE" ] }, "ServiceProfileVisibilityEnum": { @@ -17021,6 +17344,12 @@ "LinkProtocolResponse": { "type": "object", "properties": { + "href": { + "type": "string", + "description": "LinkProtocol URI", + "format": "uri", + "readOnly": true + }, "uuid": { "type": "string", "description": "Equinix-assigned network identifier", @@ -17037,6 +17366,10 @@ "type": "integer", "example": 20 }, + "vni": { + "type": "integer", + "example": 20 + }, "vlanTagMin": { "type": "integer", "example": 20 @@ -17064,13 +17397,7 @@ "subInterface": { "$ref": "#/components/schemas/SubInterface" }, - "additionalInfo": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AdditionalInfo" - } - }, - "connection": { + "asset": { "$ref": "#/components/schemas/LinkProtocolConnection" }, "serviceToken": { @@ -17143,6 +17470,31 @@ }, "description": "Current state of latest Route Filter change" }, + "RouteFiltersPatchRequestItem": { + "required": [ + "op", + "path", + "value" + ], + "type": "object", + "properties": { + "op": { + "type": "string", + "description": "Handy shortcut for operation name", + "example": "replace" + }, + "path": { + "type": "string", + "description": "path to change", + "example": "/name" + }, + "value": { + "type": "object", + "description": "new value for updated parameter" + } + }, + "description": "Route Filter change operation data" + }, "RouteFiltersChangeOperation": { "required": [ "op", @@ -17195,6 +17547,19 @@ } } }, + "RouteFilterRuleState": { + "type": "string", + "description": "Route Filter Rule status", + "enum": [ + "PROVISIONING", + "REPROVISIONING", + "DEPROVISIONING", + "PROVISIONED", + "DEPROVISIONED", + "NOT_PROVISIONED", + "NOT_DEPROVISIONED" + ] + }, "RouteFilterRulesChange": { "required": [ "type", @@ -17226,7 +17591,7 @@ }, "description": "Current state of latest Route Filter Rule change" }, - "RouteFilterChangePrefixMatch": { + "RouteFilterRulesPatchRequestItem": { "required": [ "op", "path", @@ -17346,7 +17711,7 @@ "example": "LAB", "enum": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -17511,7 +17876,7 @@ "example": "LAB", "enum": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -17564,7 +17929,8 @@ "description": "Network scope", "enum": [ "REGIONAL", - "GLOBAL" + "GLOBAL", + "LOCAL" ] }, "NetworkState": { @@ -17787,8 +18153,8 @@ }, "description": "Advance Configuration for NTP/PTP" }, - "packageRequest": { - "title": "package", + "precisionTimePackageRequest": { + "title": "precisionTimePackageRequest", "required": [ "code" ], @@ -17871,6 +18237,9 @@ }, "virtualNetwork": { "$ref": "#/components/schemas/VirtualNetwork" + }, + "interconnection": { + "$ref": "#/components/schemas/MetalInterconnection" } }, "description": "Access point object" @@ -18183,22 +18552,12 @@ "UNTAGGED", "DOT1Q", "QINQ", - "EVPN_VXLAN", - "UNTAGGEDEPL" + "VXLAN" ] }, "SubInterface": { "type": "object", "properties": { - "type": { - "type": "string", - "description": "type of connection vlan", - "enum": [ - "VNI", - "VXLAN", - "VLAN" - ] - }, "name": { "type": "string", "description": "name of subinterafce of a port" @@ -18210,20 +18569,6 @@ }, "description": "Sub Interface information" }, - "AdditionalInfo": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key" - }, - "value": { - "type": "string", - "description": "Value" - } - }, - "description": "Additional information" - }, "LinkProtocolConnection": { "type": "object", "properties": { @@ -18726,6 +19071,17 @@ }, "description": "Virtual Network Information" }, + "MetalInterconnection": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "Equinix Metal Interconnection", + "format": "uuid" + } + }, + "description": "Metal Interconnection" + }, "VirtualConnectionPriceConnectionType": { "type": "string", "description": "Virtual Connection type", @@ -18738,7 +19094,8 @@ "ACCESS_EPL_VC", "EVPLAN_VC", "EPLAN_VC", - "IPWAN_VC" + "IPWAN_VC", + "IA_VC" ] }, "VirtualConnectionPriceASide": { @@ -18923,7 +19280,7 @@ "description": "Cloud Router code", "enum": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -19148,6 +19505,36 @@ } } }, + "RouteFiltersData_project": { + "required": [ + "projectId" + ], + "type": "object", + "properties": { + "projectId": { + "type": "string", + "description": "Subscriber-assigned project ID", + "example": "44f4c4f8-2f39-494e-838c-d8e640591be5" + }, + "href": { + "type": "string", + "description": "Project URI", + "format": "uri", + "example": "https://api.equinix.com/resourceManager/v1/projects/567" + } + } + }, + "RouteFiltersSearchBase_filter": { + "type": "object", + "properties": { + "and": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RouteFiltersSearchFilterItem" + } + } + } + }, "ValidateRequest_filter_and": { "properties": { "property": { @@ -20806,9 +21193,8 @@ }, "linkProtocol": { "type": "QINQ", - "vlanSTag": 300, - "vlanCTagMin": 100, - "vlanCTagMax": 109 + "vlanCTag": 300, + "vlanSTag": 301 } } }, @@ -21303,6 +21689,50 @@ ] } }, + "Fcr2Vd-Redundant-Secondary": { + "value": { + "type": "IP_VC", + "name": "My-GW-VDConnection-Secondary", + "bandwidth": 100, + "redundancy": { + "group": "a00cef6f-8e35-4794-9ff9-665e084e4e6d", + "priority": "SECONDARY" + }, + "aSide": { + "accessPoint": { + "type": "CLOUD_ROUTER", + "router": { + "uuid": "66a21614-1c4a-11ec-9621-0242ac130002" + } + } + }, + "zSide": { + "accessPoint": { + "type": "VD", + "virtualDevice": { + "type": "EDGE", + "uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4" + }, + "interface": { + "type": "NETWORK", + "id": 45645 + } + } + }, + "project": { + "projectId": "567" + }, + "notifications": [ + { + "type": "ALL", + "emails": [ + "test@equinix.com", + "test1@equinix.com" + ] + } + ] + } + }, "Fcr2IpWan": { "value": { "type": "IPWAN_VC", @@ -21500,12 +21930,7 @@ "aSide": { "accessPoint": { "type": "METAL_NETWORK", - "virtualNetwork": { - "uuid": "a867f685-41b0-1b07-6de0-320a5c00abd" - }, - "interface": { - "projectId": "497f6eca-6276-4993-bfeb-53cbbbba6f08" - } + "authenticationKey": "xxxxxxxxx" } }, "zSide": { @@ -24717,6 +25142,90 @@ ] } }, + "400_routing_protocol": { + "value": [ + { + "errorCode": "EQ-3041022", + "errorMessage": "Invalid argument value passed", + "correlationId": "cebc3d33-9037-4a2b-a7af-0ad65602cdec", + "details": "There are no available RFC3279 subnets on the same Fabric Cloud Router." + }, + { + "errorCode": "EQ-3041023", + "errorMessage": "Invalid pagination parameter.", + "correlationId": "test", + "additionalInfo": [ + { + "property": "offset" + }, + { + "reason": "The offset parameter must be a Nonnegative Integer." + } + ] + }, + { + "errorCode": "EQ-3041012", + "errorMessage": "The system is unable to process your request.", + "details": "The routing protocol associated with this Connection is in the transient state.", + "correlationId": "test", + "additionalInfo": [ + { + "reason": "Routing protocol creation or deletion is not allowed if the routing protocol associated with connection is in the transient state." + } + ] + }, + { + "errorCode": "EQ-3041016", + "errorMessage": "The system is unable to process your request.", + "details": "The BGP routing protocol should be deleted before deleting the DIRECT routing protocol for the same Connection.", + "correlationId": "test" + }, + { + "errorCode": "EQ-3041001", + "errorMessage": "Invalid argument passed.", + "correlationId": "test" + }, + { + "errorCode": "EQ-3041002", + "errorMessage": "Invalid argument value passed.", + "correlationId": "cebc3d33-9037-4a2b-a7af-0ad65602cdec", + "additionalInfo": [ + { + "property": "type", + "reason": "The type must be one of the following [DIRECT, BGP]." + } + ] + }, + { + "errorCode": "EQ-3041013", + "errorMessage": "Required field.", + "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", + "additionalInfo": [ + { + "property": "$.type", + "reason": "Type is mandatory field." + } + ] + }, + { + "errorCode": "EQ-3041014", + "errorMessage": "Json syntax error. Please check the request body.", + "details": "Json syntax error. Please check the request body.", + "correlationId": "test" + }, + { + "errorCode": "EQ-3041015", + "errorMessage": "Invalid request.", + "details": "Value must not be null.", + "correlationId": "test", + "additionalInfo": [ + { + "property": "data[0].directIpv6.equinixIfaceIp" + } + ] + } + ] + }, "UpdateRoutingWithDirectOnly": { "value": { "type": "DIRECT", @@ -27104,7 +27613,7 @@ "operator": "IN", "values": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -27332,7 +27841,7 @@ "currency": "USD", "router": { "package": { - "code": "BASIC" + "code": "ADVANCED" }, "location": { "metroCode": "CH" @@ -31638,7 +32147,7 @@ "state": "RESERVED", "vlanSTag": 1000, "vlanCTag": 500, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee", "uuid": "cd67f685-41b0-1b07-6de0-320a5c00abee" }, @@ -31681,7 +32190,7 @@ "state": "RESERVED", "vlanSTag": 1000, "vlanCTag": 500, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65", "uuid": "2ac4e14f-6120-4705-886e-d37f1d0c6a65" }, @@ -31695,7 +32204,7 @@ "state": "RESERVED", "vlanSTag": 1001, "vlanCTag": 1001, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95", "uuid": "3268d105-e57b-4b2b-8a0a-2e3e42312d95" }, @@ -31722,7 +32231,7 @@ "uuid": "52d61263-fb0a-459d-a086-bc7fd6bd7384", "state": "RESERVED", "vlanTag": 200, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee", "uuid": "cd67f685-41b0-1b07-6de0-320a5c00abee", "bandwidth": 1000 @@ -31764,7 +32273,7 @@ "uuid": "7c968801-e03b-4530-8424-aa5ecc4339e2", "state": "RESERVED", "vlanTag": 240, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65", "uuid": "2ac4e14f-6120-4705-886e-d37f1d0c6a65", "bandwidth": 1000 @@ -31778,7 +32287,7 @@ "uuid": "db812bba-94b8-43e6-8d9c-850f04350c3d", "state": "RESERVED", "vlanTag": 240, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95", "uuid": "3268d105-e57b-4b2b-8a0a-2e3e42312d95", "bandwidth": 1000 @@ -31807,7 +32316,7 @@ "state": "RESERVED", "vlanTagMin": 177, "vlanTagMax": 179, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee", "uuid": "cd67f685-41b0-1b07-6de0-320a5c00abee", "bandwidth": 1000 @@ -31852,7 +32361,7 @@ "state": "RESERVED", "vlanTagMin": 177, "vlanTagMax": 179, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65", "uuid": "2ac4e14f-6120-4705-886e-d37f1d0c6a65", "bandwidth": 1000 @@ -31867,7 +32376,7 @@ "state": "RESERVED", "vlanTagMin": 177, "vlanTagMax": 179, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95", "uuid": "3268d105-e57b-4b2b-8a0a-2e3e42312d95", "bandwidth": 1000 @@ -31987,10 +32496,10 @@ ] } }, - "400_route_filters": { + "400_invalid_input": { "value": [ { - "errorCode": "EQ-3044001", + "errorCode": "EQ-3044101", "errorMessage": "Invalid input", "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", "additionalInfo": [ @@ -31998,46 +32507,6 @@ "property": "type" } ] - }, - { - "errorCode": "EQ-3044001", - "errorMessage": "Invalid input", - "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", - "additionalInfo": [ - { - "property": "name" - } - ] - }, - { - "errorCode": "EQ-3044002", - "errorMessage": "Connection already deleted", - "correlationId": "cebc3d33-9037-4a2b-a7af-0ad65602cdec", - "additionalInfo": [ - { - "property": "connectionId" - } - ] - }, - { - "errorCode": "EQ-3044003", - "errorMessage": "Route Filter is in transient state", - "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", - "additionalInfo": [ - { - "property": "routeFilterId" - } - ] - }, - { - "errorCode": "EQ-3044003", - "errorMessage": "Connection is in transient state", - "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", - "additionalInfo": [ - { - "property": "connectionId" - } - ] } ] }, @@ -32107,6 +32576,22 @@ "type": "BGP_IPv4_PREFIX_FILTER", "name": "My-route-filter-v4", "description": "Test filter", + "project": { + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" + }, + "notifications": { + "type": "ALL", + "emails": [ + "test@equinix.com" + ] + } + } + }, + "RouteFilterCreateBgpIpv6Prefix": { + "value": { + "type": "BGP_IPv6_PREFIX_FILTER", + "name": "My-route-filter-v6", + "description": "Test filter", "project": { "projectId": 567 }, @@ -32135,60 +32620,7 @@ "connectionsCount": 0, "project": { "href": "https://api.equinix.com/resourceManager/v1/projects/567", - "projectId": 567 - }, - "notifications": [ - { - "type": "ALL", - "emails": [ - "test@equinix.com" - ] - } - ], - "changeLog": { - "createdBy": "testuser", - "createdByEmail": "testuser@equinix.com", - "createdByFullName": "testuser testuser", - "createdDateTime": "2020-05-21T10:30:00Z" - } - } - }, - "UpdateRouteFilterIPv4": { - "value": { - "type": "BGP_IPv4_PREFIX_FILTER", - "name": "My-route-filter-v4-update", - "description": "Test filter update", - "project": { - "projectId": 789 - }, - "notifications": [ - { - "type": "ALL", - "emails": [ - "test@equinix.com" - ] - } - ] - } - }, - "RouteFilterIpv4ReplaceResponse": { - "value": { - "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d", - "type": "BGP_IPv4_PREFIX_FILTER", - "uuid": "695a8471-6595-4ac6-a2f4-b3d96ed3a59d", - "name": "My-prefix-filter-v4-update", - "description": "Test filter update", - "state": "REPROVISIONING", - "change": { - "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/changes/04af0d37-9160-43d8-97ef-9da9786996a3", - "type": "BGP_IPv4_PREFIX_FILTER_UPDATE", - "uuid": "04af0d37-9160-43d8-97ef-9da9786996a3" - }, - "notMatchedRuleAction": "DENY", - "connectionsCount": 0, - "project": { - "href": "https://api.equinix.com/resourceManager/v1/projects/567", - "projectId": 789 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32223,7 +32655,7 @@ "connectionsCount": 0, "project": { "href": "https://api.equinix.com/resourceManager/v1/projects/567", - "projectId": 567 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32285,7 +32717,7 @@ "connectionsCount": 1, "project": { "href": "https://api.equinix.com/resourceManager/v1/projects/567", - "projectId": 567 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32341,7 +32773,7 @@ "name": "My-route-filter-v4", "description": "Test filter", "project": { - "projectId": 567 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32397,7 +32829,7 @@ "name": "My-route-filter-v4", "description": "Test filter", "project": { - "projectId": 567 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32427,11 +32859,120 @@ } } }, + "SearchRouteFiltersRequest": { + "value": { + "filter": { + "and": [ + { + "property": "/type", + "operator": "=", + "values": [ + "BGP_IPv4_PREFIX_FILTER" + ] + }, + { + "property": "/name", + "operator": "like", + "values": [ + "%Route_Filter_Demo%" + ] + }, + { + "property": "/project/projectId", + "operator": "=", + "values": [ + "dadd3ab6-c0af-430c-8216-43d44f08c1c5" + ] + } + ] + }, + "pagination": { + "offset": 1, + "limit": 2, + "total": 10 + }, + "sort": [ + { + "property": "/changeLog/updatedDateTime", + "direction": "DESC" + } + ] + } + }, + "SearchRouteFiltersResponse": { + "value": { + "pagination": { + "offset": 1, + "limit": 2, + "total": 10, + "next": "/routeFilters?offset=3&limit=2", + "previous": "/routeFilters?offset=0&limit=2" + }, + "data": [ + { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d", + "type": "BGP_IPv4_PREFIX_FILTER", + "uuid": "695a8471-6595-4ac6-a2f4-b3d96ed3a59d", + "name": "My_Route_Filter_Demo_1", + "description": "Test filter", + "state": "PROVISIONING", + "notMatchedRuleAction": "DENY", + "connectionsCount": 1, + "project": { + "href": "https://api.equinix.com/resourceManager/v1/projects/567", + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" + }, + "notifications": [ + { + "type": "ALL", + "emails": [ + "test@equinix.com" + ] + } + ], + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z" + } + }, + { + "href": "https://api.equinix.com/fabric/v4/routeFilters/795a8471-6595-4ac6-a2f4-b3d96ed3a59d", + "type": "BGP_IPv4_PREFIX_FILTER", + "uuid": "695a8471-6595-4ac6-a2f4-b3d96ed3a59d", + "name": "My_Route_Filter_Demo_2", + "description": "Test filter", + "state": "PROVISIONING", + "notMatchedRuleAction": "DENY", + "connectionsCount": 0, + "project": { + "href": "https://api.equinix.com/resourceManager/v1/projects/567", + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" + }, + "notifications": [ + { + "type": "ALL", + "emails": [ + "test@equinix.com" + ] + } + ], + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z" + } + } + ] + } + }, "RouteFilterRulesGetAll": { "value": { "pagination": { "offset": 0, - "limit": 20, + "limit": 32, "total": 2, "next": null, "previous": null @@ -32490,6 +33031,14 @@ "prefixMatch": "exact" } }, + "RouteFilterRuleCreateBgpIpv6Prefix": { + "value": { + "name": "Private-subnet-filter", + "description": "Test rule", + "prefix": "2001:7a9::34f4:0:f3dd:1/126", + "prefixMatch": "orlonger" + } + }, "RouteFilterRuleCreateBgpIpv4PrefixResponse": { "value": { "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", @@ -32509,26 +33058,77 @@ "createdBy": "testuser", "createdByEmail": "testuser@equinix.com", "createdByFullName": "testuser testuser", - "createdDateTime": "2020-05-21T10:30:00Z" + "createdDateTime": "2020-05-21T10:30:00Z", + "updatedBy": "testuser", + "updatedByEmail": "testuser@equinix.com", + "updatedByFullName": "testuser testuser", + "updatedDateTime": "2020-05-21T10:30:00Z" + } + } + }, + "RouteFilterRuleCreateBgpIpv6PrefixResponse": { + "value": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", + "type": "BGP_IPv6_PREFIX_FILTER_RULE", + "uuid": "9890d520-1579-4489-8003-154b34b8f403", + "name": "Private-subnet-filter", + "description": "Test rule", + "change": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/ff9653dc-88c5-47b5-b552-8a08d2f73f7e", + "type": "BGP_IPv6_PREFIX_FILTER_RULE_CREATION", + "uuid": "ff9653dc-88c5-47b5-b552-8a08d2f73f7e" + }, + "action": "PERMIT", + "prefix": "2001:7a9::34f4:0:f3dd:1/126", + "prefixMatch": "exact", + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z", + "updatedBy": "testuser", + "updatedByEmail": "testuser@equinix.com", + "updatedByFullName": "testuser testuser", + "updatedDateTime": "2020-05-21T10:30:00Z" } } }, + "400_bad_request": { + "value": [ + { + "errorCode": "EQ-3044013", + "errorMessage": "Invalid argument value passed", + "property": "prefixMatch", + "correlationId": "cebc3d33-9037-4a2b-a7af-0ad65602cdec" + } + ] + }, "UpdateRouteFilterRuleIPv4": { "value": { "type": "BGP_IPv4_PREFIX_FILTER_RULE", - "name": "Private-subnet-filter", + "name": "Private-subnet-filter-update", + "description": "Test rule", + "prefix": "192.168.0.0/24", + "prefixMach": "exact", + "action": "PERMIT" + } + }, + "UpdateRouteFilterRuleIPv6": { + "value": { + "type": "BGP_IPv6_PREFIX_FILTER_RULE", + "name": "Private-subnet-filter-update", "description": "Test rule", - "prefix": "192.168.0.0/25", + "prefix": "2001:7a9::34f4:0:f3dd:1/126", "prefixMach": "exact", "action": "PERMIT" } }, - "RouteFilterRuleIpv4ReplaceResponse": { + "RouteFilterRuleReplaceIpv4Response": { "value": { "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", "type": "BGP_IPv4_PREFIX_FILTER_RULE", "uuid": "9890d520-1579-4489-8003-154b34b8f403", - "name": "Private-subnet-filter", + "name": "Private-subnet-filter-update", "description": "Test rule", "prefixMach": "exact", "action": "PERMIT", @@ -32550,6 +33150,33 @@ } } }, + "RouteFilterRuleReplaceIpv6Response": { + "value": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", + "type": "BGP_IPv6_PREFIX_FILTER_RULE", + "uuid": "9890d520-1579-4489-8003-154b34b8f403", + "name": "Private-subnet-filter-update", + "description": "Test rule", + "prefixMach": "exact", + "action": "PERMIT", + "change": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/a25ca469-721a-4614-89a9-cdef287aa628", + "type": "BGP_IPv6_PREFIX_FILTER_RULE_UPDATE", + "uuid": "a25ca469-721a-4614-89a9-cdef287aa628" + }, + "prefix": "2001:7a9::34f4:0:f3dd:1/128", + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z", + "updatedBy": "testuser1", + "updatedByEmail": "testuser@equinix.com", + "updatedByFullName": "testuser testuser", + "updatedDateTime": "2020-05-21T10:30:00Z" + } + } + }, "RouteFilterRuleDeleteBgpIpv4PrefixResponse": { "value": { "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", @@ -32581,16 +33208,65 @@ } } }, + "RouteFilterRuleDeleteBgpIpv6PrefixResponse": { + "value": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", + "type": "BGP_IPv6_PREFIX_FILTER_RULE", + "uuid": "9890d520-1579-4489-8003-154b34b8f403", + "name": "Private-subnet-filter", + "description": "Test rule", + "change": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/e8528788-14d3-4a7b-a740-99b702067485", + "type": "BGP_IPv6_PREFIX_FILTER_RULE_DELETION", + "uuid": "e8528788-14d3-4a7b-a740-99b702067485" + }, + "action": "PERMIT??", + "prefix": "2001:7a9::34f4:0:f3dd:1/126", + "prefixMach": "exact", + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z", + "updatedBy": "testuser1", + "updatedByEmail": "testuser@equinix.com", + "updatedByFullName": "testuser testuser", + "updatedDateTime": "2020-05-21T10:30:00Z", + "deletedBy": "testuser1", + "deletedByEmail": "testuser@equinix.com", + "deletedByFullName": "testuser testuser", + "deletedDateTime": "2020-05-21T10:30:00Z" + } + } + }, "400_transient_filter": { "value": [ { - "errorCode": "EQ-3044015", + "errorCode": "EQ-3044215", "errorMessage": "Cannot delete Route Filter Rule, Route Filter transient state", "correlationId": "c82ff3bc-de07-47e5-b3ec-53a009d01515", "details": "Cannot delete Route Filter Rule, Route filter is in transient state" } ] }, + "PatchRouteFilterRuleName": { + "value": [ + { + "op": "replace", + "path": "/name", + "value": "test-route-filter-name-patch" + } + ] + }, + "PatchRouteFilterRulePrefix": { + "value": [ + { + "op": "replace", + "path": "/prefix", + "value": "192.168.0.0/30" + } + ] + }, "PatchRouteFilterRulePrefixMatch": { "value": [ { @@ -33294,7 +33970,7 @@ "pagination": { "offset": 0, "limit": 20, - "total": 2 + "total": 4 }, "data": [ { @@ -33340,6 +34016,50 @@ "createdDateTime": "2023-02-10T00:14:47Z", "updatedDateTime": "2023-02-10T00:14:47Z" } + }, + { + "href": "https://api.equinix.com/fabric/v4/routerPackages/ADVANCED", + "type": "ROUTER_PACKAGE", + "code": "ADVANCED", + "description": "string", + "totalIPv4RoutesMax": 4000, + "totalIPv6RoutesMax": 250, + "staticIPv4RoutesMax": 150, + "staticIPv6RoutesMax": 150, + "naclsMax": 60, + "naclRulesMax": 1000, + "haSupported": true, + "routeFilterSupported": true, + "natType": "STATIC_NAT", + "vcCountMax": 99999, + "crCountMax": 3, + "vcBandwidthMax": 50000, + "changeLog": { + "createdDateTime": "2023-02-10T00:14:47Z", + "updatedDateTime": "2023-02-10T00:14:47Z" + } + }, + { + "href": "https://api.equinix.com/fabric/v4/routerPackages/PREMIUM", + "type": "ROUTER_PACKAGE", + "code": "PREMIUM", + "description": "string", + "totalIPv4RoutesMax": 10000, + "totalIPv6RoutesMax": 500, + "staticIPv4RoutesMax": 150, + "staticIPv6RoutesMax": 150, + "naclsMax": 60, + "naclRulesMax": 1000, + "haSupported": true, + "routeFilterSupported": true, + "natType": "STATIC_NAT", + "vcCountMax": 10, + "crCountMax": 3, + "vcBandwidthMax": 50000, + "changeLog": { + "createdDateTime": "2023-02-10T00:14:47Z", + "updatedDateTime": "2023-02-10T00:14:47Z" + } } ] } @@ -34275,6 +34995,24 @@ ] } }, + "CreateLocalNetwork": { + "value": { + "type": "EVPLAN", + "name": "My-Network-1", + "scope": "LOCAL", + "project": { + "projectId": "1234567" + }, + "notifications": [ + { + "type": "ALL", + "emails": [ + "test@equinix.com" + ] + } + ] + } + }, "NetworkPostResponseExample": { "value": { "href": "https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784", diff --git a/spec/oas3.fabric.patched.json b/spec/oas3.fabric.patched.json index 35520d0a..28a9ceb8 100644 --- a/spec/oas3.fabric.patched.json +++ b/spec/oas3.fabric.patched.json @@ -13,7 +13,7 @@ "name": "Equinix Inc", "url": "https://developer.equinix.com/agreement" }, - "version": "4.11" + "version": "4.12" }, "externalDocs": { "description": "Find more information on Equinix Developer Portal", @@ -203,6 +203,9 @@ "Fcr2Vd": { "$ref": "#/components/examples/Fcr2Vd" }, + "Fcr2Vd-Redundant-Secondary": { + "$ref": "#/components/examples/Fcr2Vd-Redundant-Secondary" + }, "Fcr2IpWan": { "$ref": "#/components/examples/Fcr2IpWan" }, @@ -1141,7 +1144,7 @@ }, "examples": { "example": { - "$ref": "#/components/examples/400" + "$ref": "#/components/examples/400_routing_protocol" } } } @@ -5608,7 +5611,7 @@ "$ref": "#/components/schemas/GetAllConnectionRouteFiltersResponse" }, "examples": { - "connectionRouteFiltersResponse": { + "ConnectionRouteFiltersResponse": { "$ref": "#/components/examples/ConnectionRouteFiltersGetAll" } } @@ -5623,8 +5626,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -5745,7 +5751,7 @@ "$ref": "#/components/schemas/ConnectionRouteFilterData" }, "examples": { - "connectionRouteFilterAttachResponse": { + "ConnectionRouteFilterAttachResponse": { "$ref": "#/components/examples/AttachConnectionRouteFiltersResponse" } } @@ -5760,8 +5766,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -5898,7 +5907,7 @@ "$ref": "#/components/schemas/ConnectionRouteFilterData" }, "examples": { - "connectionRouteFilterAttachResponse": { + "ConnectionRouteFilterAttachResponse": { "$ref": "#/components/examples/AttachConnectionRouteFiltersResponse" } } @@ -6036,10 +6045,10 @@ "$ref": "#/components/schemas/ConnectionRouteFilterData" }, "examples": { - "connectionRouteFilterDetachInboundResponse": { + "ConnectionRouteFilterDetachInboundResponse": { "$ref": "#/components/examples/DetachConnectionRouteFilterInboundResponse" }, - "connectionRouteFilterDetachOutboundResponse": { + "ConnectionRouteFilterDetachOutboundResponse": { "$ref": "#/components/examples/DetachConnectionRouteFilterOutboundResponse" } } @@ -6157,6 +6166,9 @@ "examples": { "RouteFilterBgpIpv4Prefix": { "$ref": "#/components/examples/RouteFilterCreateBgpIpv4Prefix" + }, + "RouteFilterBgpIpv6Prefix": { + "$ref": "#/components/examples/RouteFilterCreateBgpIpv6Prefix" } } } @@ -6172,7 +6184,7 @@ "$ref": "#/components/schemas/RouteFiltersData" }, "examples": { - "getSpecificRouteFilterResponse": { + "GetSpecificRouteFilterResponse": { "$ref": "#/components/examples/RouteFilterCreateBgpIpv4PrefixResponse" } } @@ -6187,8 +6199,8 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "TransientState": { + "$ref": "#/components/examples/400_transient_state" } } } @@ -6300,7 +6312,7 @@ "$ref": "#/components/schemas/RouteFiltersData" }, "examples": { - "getSpecificRouteFilterResponse": { + "GetSpecificRouteFilterResponse": { "$ref": "#/components/examples/RouteFilterCreateBgpIpv4PrefixResponse" } } @@ -6315,8 +6327,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -6399,13 +6414,13 @@ } } }, - "put": { + "delete": { "tags": [ "Route Filters" ], - "summary": "Replace Route Filter", - "description": "This API provides capability to replace a Route Filter completely", - "operationId": "replaceRouteFilterByUuid", + "summary": "Delete Route Filter", + "description": "This API provides capability to delete a Route Filter", + "operationId": "deleteRouteFilterByUuid", "parameters": [ { "name": "routeFilterId", @@ -6417,21 +6432,6 @@ } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/RouteFiltersBase" - }, - "examples": { - "RouteFilterIpv4ReplaceExample": { - "$ref": "#/components/examples/UpdateRouteFilterIPv4" - } - } - } - }, - "required": true - }, "responses": { "202": { "description": "Successful operation", @@ -6441,8 +6441,8 @@ "$ref": "#/components/schemas/RouteFiltersData" }, "examples": { - "routeFilterIpv4ReplaceResponse": { - "$ref": "#/components/examples/RouteFilterIpv4ReplaceResponse" + "RouteFilterDeleteBgpIpv4PrefixResponse": { + "$ref": "#/components/examples/RouteFilterDeleteBgpIpv4PrefixResponse" } } } @@ -6457,7 +6457,7 @@ }, "examples": { "example": { - "$ref": "#/components/examples/400_route_filters" + "$ref": "#/components/examples/400_attached_connection" } } } @@ -6540,13 +6540,13 @@ } } }, - "delete": { + "patch": { "tags": [ "Route Filters" ], - "summary": "Delete Route Filter", - "description": "This API provides capability to delete a Route Filter", - "operationId": "deleteRouteFilterByUuid", + "summary": "Patch Route Filter", + "description": "This API provides capability to partially update a Route Filter", + "operationId": "patchRouteFilterByUuid", "parameters": [ { "name": "routeFilterId", @@ -6558,6 +6558,21 @@ } } ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RouteFiltersPatchRequest" + }, + "examples": { + "RouteFilterNamePatchExample": { + "$ref": "#/components/examples/PatchRouteFilterName" + } + } + } + }, + "required": true + }, "responses": { "202": { "description": "Successful operation", @@ -6567,8 +6582,8 @@ "$ref": "#/components/schemas/RouteFiltersData" }, "examples": { - "routeFilterDeleteBgpIpv4PrefixResponse": { - "$ref": "#/components/examples/RouteFilterDeleteBgpIpv4PrefixResponse" + "RouteFilterNamePatchResponse": { + "$ref": "#/components/examples/RouteFilterNamePatchResponse" } } } @@ -6583,7 +6598,7 @@ }, "examples": { "example": { - "$ref": "#/components/examples/400_attached_connection" + "$ref": "#/components/examples/400_invalid_operation" } } } @@ -6665,14 +6680,16 @@ } } } - }, - "patch": { + } + }, + "/fabric/v4/routeFilters/{routeFilterId}/changes": { + "get": { "tags": [ "Route Filters" ], - "summary": "Patch Route Filter", - "description": "This API provides capability to partially update a Route Filter", - "operationId": "patchRouteFilterByUuid", + "summary": "Get All Changes", + "description": "This API provides capability to retrieve all of a Route Filter's Changes", + "operationId": "getRouteFilterChanges", "parameters": [ { "name": "routeFilterId", @@ -6682,34 +6699,39 @@ "schema": { "$ref": "#/components/schemas/RouteFilterId" } + }, + { + "name": "offset", + "in": "query", + "description": "offset", + "required": false, + "schema": { + "type": "integer" + }, + "example": 1 + }, + { + "name": "limit", + "in": "query", + "description": "number of records to fetch", + "required": false, + "schema": { + "type": "integer" + }, + "example": 10 } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/RouteFiltersPatchRequest" - }, - "examples": { - "RouteFilterNamePatchExample": { - "$ref": "#/components/examples/PatchRouteFilterName" - } - } - } - }, - "required": true - }, "responses": { - "202": { - "description": "Successful operation", + "200": { + "description": "Fabric Route Filter Change object", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/RouteFiltersData" + "$ref": "#/components/schemas/RouteFilterChangeDataResponse" }, "examples": { - "RouteFilterNamePatchResponse": { - "$ref": "#/components/examples/RouteFilterNamePatchResponse" + "RouteFilterChangesResponse": { + "$ref": "#/components/examples/RouteFilterGetAllChangesResponseExample" } } } @@ -6723,8 +6745,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_invalid_operation" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -6775,21 +6800,6 @@ } } }, - "415": { - "description": "Unsupported Media Type", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorList" - }, - "examples": { - "example": { - "$ref": "#/components/examples/415" - } - } - } - } - }, "500": { "description": "Internal server error", "content": { @@ -6808,14 +6818,14 @@ } } }, - "/fabric/v4/routeFilters/{routeFilterId}/changes": { + "/fabric/v4/routeFilters/{routeFilterId}/changes/{changeId}": { "get": { "tags": [ "Route Filters" ], - "summary": "Get All Changes", - "description": "This API provides capability to retrieve all of a Route Filter's Changes", - "operationId": "getRouteFilterChanges", + "summary": "Get Change By ID", + "description": "This API provides capability to retrieve a specific Route Filter's Changes", + "operationId": "getRouteFilterChangeByUuid", "parameters": [ { "name": "routeFilterId", @@ -6827,24 +6837,13 @@ } }, { - "name": "offset", - "in": "query", - "description": "offset", - "required": false, - "schema": { - "type": "integer" - }, - "example": 1 - }, - { - "name": "limit", - "in": "query", - "description": "number of records to fetch", - "required": false, + "name": "changeId", + "in": "path", + "description": "Routing Protocol Change UUID", + "required": true, "schema": { - "type": "integer" - }, - "example": 10 + "$ref": "#/components/schemas/ChangeId_1" + } } ], "responses": { @@ -6853,11 +6852,11 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/RouteFilterChangeDataResponse" + "$ref": "#/components/schemas/RouteFilterChangeData" }, "examples": { - "RouteFilterChangesResponse": { - "$ref": "#/components/examples/RouteFilterGetAllChangesResponseExample" + "RouteFilterChangeResponse": { + "$ref": "#/components/examples/RouteFilterGetChangeResponseExample" } } } @@ -6871,7 +6870,10 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { "$ref": "#/components/examples/400_Invalid_id" } } @@ -6941,14 +6943,14 @@ } } }, - "/fabric/v4/routeFilters/{routeFilterId}/changes/{changeId}": { + "/fabric/v4/routeFilters/{routeFilterId}/connections": { "get": { "tags": [ "Route Filters" ], - "summary": "Get Change By ID", - "description": "This API provides capability to retrieve a specific Route Filter's Changes", - "operationId": "getRouteFilterChangeByUuid", + "summary": "Get Connections", + "description": "This API provides capability to view all Connections using the Route Filter", + "operationId": "getRouteFilterConnections", "parameters": [ { "name": "routeFilterId", @@ -6958,28 +6960,19 @@ "schema": { "$ref": "#/components/schemas/RouteFilterId" } - }, - { - "name": "changeId", - "in": "path", - "description": "Routing Protocol Change UUID", - "required": true, - "schema": { - "$ref": "#/components/schemas/ChangeId_1" - } } ], "responses": { "200": { - "description": "Fabric Route Filter Change object", + "description": "Successful operation", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/RouteFilterChangeData" + "$ref": "#/components/schemas/GetRouteFilterGetConnectionsResponse" }, "examples": { - "RouteFilterChangeResponse": { - "$ref": "#/components/examples/RouteFilterGetChangeResponseExample" + "RouteFilterGetConnectionsResponse": { + "$ref": "#/components/examples/RouteFilterGetConnectionsResponse" } } } @@ -6993,7 +6986,10 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { "$ref": "#/components/examples/400_Invalid_id" } } @@ -7045,6 +7041,21 @@ } } }, + "415": { + "description": "Unsupported Media Type", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/415" + } + } + } + } + }, "500": { "description": "Internal server error", "content": { @@ -7063,36 +7074,41 @@ } } }, - "/fabric/v4/routeFilters/{routeFilterId}/connections": { - "get": { + "/fabric/v4/routeFilters/search": { + "post": { "tags": [ "Route Filters" ], - "summary": "Get Connections", - "description": "This API provides capability to view all Connections using the Route Filter", - "operationId": "getRouteFilterConnections", - "parameters": [ - { - "name": "routeFilterId", - "in": "path", - "description": "Route Filters Id", - "required": true, - "schema": { - "$ref": "#/components/schemas/RouteFilterId" + "summary": "Search Route Filters", + "description": "This API provides capability to search Route Filters", + "operationId": "searchRouteFilters", + "parameters": [], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RouteFiltersSearchBase" + }, + "examples": { + "searchRouteFiltersRequest": { + "$ref": "#/components/examples/SearchRouteFiltersRequest" + } + } } - } - ], + }, + "required": true + }, "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/GetRouteFilterGetConnectionsResponse" + "$ref": "#/components/schemas/RouteFiltersSearchResponse" }, "examples": { - "routeFilterGetConnectionsResponse": { - "$ref": "#/components/examples/RouteFilterGetConnectionsResponse" + "SearchRouteFiltersResponse": { + "$ref": "#/components/examples/SearchRouteFiltersResponse" } } } @@ -7106,8 +7122,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { + "$ref": "#/components/examples/400_Invalid_id" } } } @@ -7247,11 +7266,16 @@ } }, "400": { - "description": "Bad request", + "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/404_invalid_id" + } } } } @@ -7340,6 +7364,9 @@ "examples": { "RouteFilterRuleBgpIpv4Prefix": { "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv4Prefix" + }, + "RouteFilterRuleBgpIpv6Prefix": { + "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv6Prefix" } } } @@ -7355,8 +7382,11 @@ "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "getSpecificRouteFilterRuleResponse": { + "GetSpecificRouteFilterRuleIpv4Response": { "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv4PrefixResponse" + }, + "GetSpecificRouteFilterRuleIpv6Response": { + "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv6PrefixResponse" } } } @@ -7370,8 +7400,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidType": { + "$ref": "#/components/examples/400_bad_request" + }, + "InvalidId": { + "$ref": "#/components/examples/404_invalid_id" } } } @@ -7487,8 +7520,11 @@ "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "getSpecificRouteFilterRuleResponse": { + "GetSpecificRouteFilterRuleIpv4Response": { "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv4PrefixResponse" + }, + "GetSpecificRouteFilterRuleIpv6Response": { + "$ref": "#/components/examples/RouteFilterRuleCreateBgpIpv6PrefixResponse" } } } @@ -7502,8 +7538,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidType": { + "$ref": "#/components/examples/400_bad_request" + }, + "InvalidId": { + "$ref": "#/components/examples/404_invalid_id" } } } @@ -7622,6 +7661,9 @@ "examples": { "RouteFilterIpv4ReplaceExample": { "$ref": "#/components/examples/UpdateRouteFilterRuleIPv4" + }, + "RouteFilterIpv6ReplaceExample": { + "$ref": "#/components/examples/UpdateRouteFilterRuleIPv6" } } } @@ -7637,8 +7679,11 @@ "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "routeFilterRuleIpv4ReplaceResponse": { - "$ref": "#/components/examples/RouteFilterRuleIpv4ReplaceResponse" + "RouteFilterRuleIpv4ReplaceResponse": { + "$ref": "#/components/examples/RouteFilterRuleReplaceIpv4Response" + }, + "routeFilterRuleIpv6ReplaceResponse": { + "$ref": "#/components/examples/RouteFilterRuleReplaceIpv6Response" } } } @@ -7652,8 +7697,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_route_filters" + "InvalidType": { + "$ref": "#/components/examples/400_bad_request" + }, + "InvalidId": { + "$ref": "#/components/examples/404_invalid_id" } } } @@ -7772,8 +7820,11 @@ "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "routeFilterDeleteBgpIpv4PrefixResponse": { + "RouteFilterDeleteBgpIpv4PrefixResponse": { "$ref": "#/components/examples/RouteFilterRuleDeleteBgpIpv4PrefixResponse" + }, + "routeFilterDeleteBgpIpv6PrefixResponse": { + "$ref": "#/components/examples/RouteFilterRuleDeleteBgpIpv6PrefixResponse" } } } @@ -7905,7 +7956,13 @@ "$ref": "#/components/schemas/RouteFilterRulesPatchRequest" }, "examples": { - "RouteFilterRuleNamePatchExample": { + "RouteFilterRuleName": { + "$ref": "#/components/examples/PatchRouteFilterRuleName" + }, + "RouteFilterRulePrefix": { + "$ref": "#/components/examples/PatchRouteFilterRulePrefix" + }, + "RouteFilterRulePrefixMatch": { "$ref": "#/components/examples/PatchRouteFilterRulePrefixMatch" } } @@ -7919,11 +7976,14 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/RouteFiltersData" + "$ref": "#/components/schemas/RouteFilterRulesData" }, "examples": { - "RouteFilterNamePatchResponse": { - "$ref": "#/components/examples/RouteFilterNamePatchResponse" + "RouteFilterRuleIpv4ReplaceResponse": { + "$ref": "#/components/examples/RouteFilterRuleReplaceIpv4Response" + }, + "routeFilterRuleIpv6ReplaceResponse": { + "$ref": "#/components/examples/RouteFilterRuleReplaceIpv6Response" } } } @@ -7937,8 +7997,11 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { - "$ref": "#/components/examples/400_invalid_operation" + "InvalidType": { + "$ref": "#/components/examples/400_bad_request" + }, + "InvalidId": { + "$ref": "#/components/examples/404_invalid_id" } } } @@ -8094,7 +8157,10 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { "$ref": "#/components/examples/400_Invalid_id" } } @@ -8225,7 +8291,10 @@ "$ref": "#/components/schemas/ErrorList" }, "examples": { - "example": { + "InvalidInput": { + "$ref": "#/components/examples/400_invalid_input" + }, + "InvalidId": { "$ref": "#/components/examples/400_Invalid_id" } } @@ -8339,6 +8408,96 @@ } } } + }, + "400": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/404_invalid_id" + } + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/401" + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/403" + } + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/400" + } + } + } + } + }, + "415": { + "description": "Unsupported Media Type", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/415" + } + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorList" + }, + "examples": { + "example": { + "$ref": "#/components/examples/500_internal_error" + } + } + } + } } } } @@ -9814,6 +9973,9 @@ }, "CreateRegionalNetwork": { "$ref": "#/components/examples/CreateRegionalNetwork" + }, + "CreateLocalNetwork": { + "$ref": "#/components/examples/CreateLocalNetwork" } } } @@ -14187,23 +14349,12 @@ "type": "integer", "example": 0 }, + "rulesCount": { + "type": "integer", + "example": 0 + }, "project": { - "allOf": [ - { - "$ref": "#/components/schemas/Project" - }, - { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "Project URI", - "format": "uri", - "example": "https://api.equinix.com/resourceManager/v1/projects/567" - } - } - } - ] + "$ref": "#/components/schemas/RouteFiltersData_project" }, "notifications": { "type": "array", @@ -14222,7 +14373,7 @@ "type": "array", "description": "Patch Route Filters request", "items": { - "$ref": "#/components/schemas/ConnectionChangeOperation" + "$ref": "#/components/schemas/RouteFiltersPatchRequestItem" } }, "RouteFilterChangeDataResponse": { @@ -14306,6 +14457,92 @@ } } }, + "RouteFiltersSearchBase": { + "type": "object", + "properties": { + "filter": { + "$ref": "#/components/schemas/RouteFiltersSearchBase_filter" + }, + "pagination": { + "$ref": "#/components/schemas/Pagination" + }, + "sort": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortItem" + } + } + } + }, + "RouteFiltersSearchFilterItem": { + "type": "object", + "properties": { + "property": { + "type": "string", + "enum": [ + "/type", + "/name", + "/project/projectId", + "/uuid", + "/state" + ] + }, + "operator": { + "type": "string" + }, + "values": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SortItem": { + "type": "object", + "properties": { + "property": { + "type": "string", + "description": "Possible field names to use on sorting", + "default": "/changeLog/updatedDateTime", + "enum": [ + "/type", + "/uuid", + "/name", + "/project/projectId", + "/state", + "/notMatchedRuleAction", + "/connectionsCount", + "/changeLog/createdDateTime", + "/changeLog/updatedDateTime" + ] + }, + "direction": { + "type": "string", + "description": "Sorting direction", + "default": "DESC", + "enum": [ + "DESC", + "ASC" + ] + } + } + }, + "RouteFiltersSearchResponse": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/Pagination" + }, + "data": { + "type": "array", + "description": "List of Route Filters", + "items": { + "$ref": "#/components/schemas/RouteFiltersData" + } + } + } + }, "GetRouteFilterRulesResponse": { "type": "object", "properties": { @@ -14374,6 +14611,9 @@ "type": "string", "description": "Customer-provided Route Filter Rule description" }, + "state": { + "$ref": "#/components/schemas/RouteFilterRuleState" + }, "prefixMatch": { "type": "string", "description": "prefix matching operator", @@ -14409,7 +14649,7 @@ "type": "array", "description": "Patch Route Filters Rule request", "items": { - "$ref": "#/components/schemas/RouteFilterChangePrefixMatch" + "$ref": "#/components/schemas/RouteFilterRulesPatchRequestItem" } }, "RouteFilterRulesChangeDataResponse": { @@ -14959,7 +15199,7 @@ "description": "Router package code", "enum": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -15529,7 +15769,7 @@ ] }, "package": { - "$ref": "#/components/schemas/PackageResponse" + "$ref": "#/components/schemas/precisionTimePackageResponse" }, "connections": { "maxItems": 2, @@ -15617,7 +15857,7 @@ "type": "string" }, "package": { - "$ref": "#/components/schemas/packageRequest" + "$ref": "#/components/schemas/precisionTimePackageRequest" }, "connections": { "type": "array", @@ -15637,6 +15877,87 @@ }, "description": "EPT service instance" }, + "precisionTimePackageResponse": { + "title": "precisionTimePackageRespose", + "required": [ + "code" + ], + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri" + }, + "code": { + "type": "string", + "enum": [ + "NTP_STANDARD", + "NTP_ENTERPRISE", + "PTP_STANDARD", + "PTP_ENTERPRISE" + ] + }, + "type": { + "type": "string", + "enum": [ + "TIME_SERVICE_PACKAGE" + ] + }, + "bandwidth": { + "type": "integer", + "example": 10 + }, + "clientsPerSecondMax": { + "type": "integer", + "example": 100 + }, + "redundancySupported": { + "type": "boolean", + "example": true + }, + "multiSubnetSupported": { + "type": "boolean", + "example": true + }, + "accuracyUnit": { + "type": "string", + "example": "microseconds" + }, + "accuracySla": { + "type": "integer", + "example": 50 + }, + "accuracyAvgMin": { + "type": "integer", + "example": 1 + }, + "accuracyAvgMax": { + "type": "integer", + "example": 10 + }, + "changelog": { + "$ref": "#/components/schemas/Changelog" + } + }, + "description": "EPT Service Package Information", + "example": { + "href": "https://api.equinix.com/fabric/v4/timeServicePackage/NTP_STANDARD", + "code": "NTP_STANDARD", + "type": "TIME_SERVICE_PACKAGE", + "bandwidth": 10, + "accuracyUnit": "microseconds", + "accuracySla": 50, + "accuracyAvgMin": 1, + "accuracyAvgMax": 10, + "clientsPerSecondMax": 100, + "redundancySupported": true, + "multiSubnetSupported": true, + "changeLog": { + "createdDateTime": "2023-05-16T07:50:49.749Z", + "updatedDateTime": "2023-05-17T07:50:49.749Z" + } + } + }, "ConnectionType": { "type": "string", "description": "Connection type", @@ -15649,7 +15970,8 @@ "EIA_VC", "EVPLAN_VC", "EPLAN_VC", - "IPWAN_VC" + "IPWAN_VC", + "IA_VC" ] }, "Order": { @@ -16518,7 +16840,8 @@ "example": "L2_PROFILE", "enum": [ "L2_PROFILE", - "L3_PROFILE" + "L3_PROFILE", + "IA_PROFILE" ] }, "ServiceProfileVisibilityEnum": { @@ -17021,6 +17344,12 @@ "LinkProtocolResponse": { "type": "object", "properties": { + "href": { + "type": "string", + "description": "LinkProtocol URI", + "format": "uri", + "readOnly": true + }, "uuid": { "type": "string", "description": "Equinix-assigned network identifier", @@ -17037,6 +17366,10 @@ "type": "integer", "example": 20 }, + "vni": { + "type": "integer", + "example": 20 + }, "vlanTagMin": { "type": "integer", "example": 20 @@ -17064,13 +17397,7 @@ "subInterface": { "$ref": "#/components/schemas/SubInterface" }, - "additionalInfo": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AdditionalInfo" - } - }, - "connection": { + "asset": { "$ref": "#/components/schemas/LinkProtocolConnection" }, "serviceToken": { @@ -17143,6 +17470,31 @@ }, "description": "Current state of latest Route Filter change" }, + "RouteFiltersPatchRequestItem": { + "required": [ + "op", + "path", + "value" + ], + "type": "object", + "properties": { + "op": { + "type": "string", + "description": "Handy shortcut for operation name", + "example": "replace" + }, + "path": { + "type": "string", + "description": "path to change", + "example": "/name" + }, + "value": { + "type": "object", + "description": "new value for updated parameter" + } + }, + "description": "Route Filter change operation data" + }, "RouteFiltersChangeOperation": { "required": [ "op", @@ -17195,6 +17547,19 @@ } } }, + "RouteFilterRuleState": { + "type": "string", + "description": "Route Filter Rule status", + "enum": [ + "PROVISIONING", + "REPROVISIONING", + "DEPROVISIONING", + "PROVISIONED", + "DEPROVISIONED", + "NOT_PROVISIONED", + "NOT_DEPROVISIONED" + ] + }, "RouteFilterRulesChange": { "required": [ "type", @@ -17226,7 +17591,7 @@ }, "description": "Current state of latest Route Filter Rule change" }, - "RouteFilterChangePrefixMatch": { + "RouteFilterRulesPatchRequestItem": { "required": [ "op", "path", @@ -17346,7 +17711,7 @@ "example": "LAB", "enum": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -17511,7 +17876,7 @@ "example": "LAB", "enum": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -17564,7 +17929,8 @@ "description": "Network scope", "enum": [ "REGIONAL", - "GLOBAL" + "GLOBAL", + "LOCAL" ] }, "NetworkState": { @@ -17787,8 +18153,8 @@ }, "description": "Advance Configuration for NTP/PTP" }, - "packageRequest": { - "title": "package", + "precisionTimePackageRequest": { + "title": "precisionTimePackageRequest", "required": [ "code" ], @@ -17871,6 +18237,9 @@ }, "virtualNetwork": { "$ref": "#/components/schemas/VirtualNetwork" + }, + "interconnection": { + "$ref": "#/components/schemas/MetalInterconnection" } }, "description": "Access point object" @@ -18183,22 +18552,12 @@ "UNTAGGED", "DOT1Q", "QINQ", - "EVPN_VXLAN", - "UNTAGGEDEPL" + "VXLAN" ] }, "SubInterface": { "type": "object", "properties": { - "type": { - "type": "string", - "description": "type of connection vlan", - "enum": [ - "VNI", - "VXLAN", - "VLAN" - ] - }, "name": { "type": "string", "description": "name of subinterafce of a port" @@ -18210,20 +18569,6 @@ }, "description": "Sub Interface information" }, - "AdditionalInfo": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key" - }, - "value": { - "type": "string", - "description": "Value" - } - }, - "description": "Additional information" - }, "LinkProtocolConnection": { "type": "object", "properties": { @@ -18726,6 +19071,17 @@ }, "description": "Virtual Network Information" }, + "MetalInterconnection": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "Equinix Metal Interconnection", + "format": "uuid" + } + }, + "description": "Metal Interconnection" + }, "VirtualConnectionPriceConnectionType": { "type": "string", "description": "Virtual Connection type", @@ -18738,7 +19094,8 @@ "ACCESS_EPL_VC", "EVPLAN_VC", "EPLAN_VC", - "IPWAN_VC" + "IPWAN_VC", + "IA_VC" ] }, "VirtualConnectionPriceASide": { @@ -18923,7 +19280,7 @@ "description": "Cloud Router code", "enum": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -19148,6 +19505,36 @@ } } }, + "RouteFiltersData_project": { + "required": [ + "projectId" + ], + "type": "object", + "properties": { + "projectId": { + "type": "string", + "description": "Subscriber-assigned project ID", + "example": "44f4c4f8-2f39-494e-838c-d8e640591be5" + }, + "href": { + "type": "string", + "description": "Project URI", + "format": "uri", + "example": "https://api.equinix.com/resourceManager/v1/projects/567" + } + } + }, + "RouteFiltersSearchBase_filter": { + "type": "object", + "properties": { + "and": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RouteFiltersSearchFilterItem" + } + } + } + }, "ValidateRequest_filter_and": { "properties": { "property": { @@ -20806,9 +21193,8 @@ }, "linkProtocol": { "type": "QINQ", - "vlanSTag": 300, - "vlanCTagMin": 100, - "vlanCTagMax": 109 + "vlanCTag": 300, + "vlanSTag": 301 } } }, @@ -21303,6 +21689,50 @@ ] } }, + "Fcr2Vd-Redundant-Secondary": { + "value": { + "type": "IP_VC", + "name": "My-GW-VDConnection-Secondary", + "bandwidth": 100, + "redundancy": { + "group": "a00cef6f-8e35-4794-9ff9-665e084e4e6d", + "priority": "SECONDARY" + }, + "aSide": { + "accessPoint": { + "type": "CLOUD_ROUTER", + "router": { + "uuid": "66a21614-1c4a-11ec-9621-0242ac130002" + } + } + }, + "zSide": { + "accessPoint": { + "type": "VD", + "virtualDevice": { + "type": "EDGE", + "uuid": "20d32a80-0d61-4333-bc03-707b591ae2f4" + }, + "interface": { + "type": "NETWORK", + "id": 45645 + } + } + }, + "project": { + "projectId": "567" + }, + "notifications": [ + { + "type": "ALL", + "emails": [ + "test@equinix.com", + "test1@equinix.com" + ] + } + ] + } + }, "Fcr2IpWan": { "value": { "type": "IPWAN_VC", @@ -21500,12 +21930,7 @@ "aSide": { "accessPoint": { "type": "METAL_NETWORK", - "virtualNetwork": { - "uuid": "a867f685-41b0-1b07-6de0-320a5c00abd" - }, - "interface": { - "projectId": "497f6eca-6276-4993-bfeb-53cbbbba6f08" - } + "authenticationKey": "xxxxxxxxx" } }, "zSide": { @@ -24717,6 +25142,90 @@ ] } }, + "400_routing_protocol": { + "value": [ + { + "errorCode": "EQ-3041022", + "errorMessage": "Invalid argument value passed", + "correlationId": "cebc3d33-9037-4a2b-a7af-0ad65602cdec", + "details": "There are no available RFC3279 subnets on the same Fabric Cloud Router." + }, + { + "errorCode": "EQ-3041023", + "errorMessage": "Invalid pagination parameter.", + "correlationId": "test", + "additionalInfo": [ + { + "property": "offset" + }, + { + "reason": "The offset parameter must be a Nonnegative Integer." + } + ] + }, + { + "errorCode": "EQ-3041012", + "errorMessage": "The system is unable to process your request.", + "details": "The routing protocol associated with this Connection is in the transient state.", + "correlationId": "test", + "additionalInfo": [ + { + "reason": "Routing protocol creation or deletion is not allowed if the routing protocol associated with connection is in the transient state." + } + ] + }, + { + "errorCode": "EQ-3041016", + "errorMessage": "The system is unable to process your request.", + "details": "The BGP routing protocol should be deleted before deleting the DIRECT routing protocol for the same Connection.", + "correlationId": "test" + }, + { + "errorCode": "EQ-3041001", + "errorMessage": "Invalid argument passed.", + "correlationId": "test" + }, + { + "errorCode": "EQ-3041002", + "errorMessage": "Invalid argument value passed.", + "correlationId": "cebc3d33-9037-4a2b-a7af-0ad65602cdec", + "additionalInfo": [ + { + "property": "type", + "reason": "The type must be one of the following [DIRECT, BGP]." + } + ] + }, + { + "errorCode": "EQ-3041013", + "errorMessage": "Required field.", + "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", + "additionalInfo": [ + { + "property": "$.type", + "reason": "Type is mandatory field." + } + ] + }, + { + "errorCode": "EQ-3041014", + "errorMessage": "Json syntax error. Please check the request body.", + "details": "Json syntax error. Please check the request body.", + "correlationId": "test" + }, + { + "errorCode": "EQ-3041015", + "errorMessage": "Invalid request.", + "details": "Value must not be null.", + "correlationId": "test", + "additionalInfo": [ + { + "property": "data[0].directIpv6.equinixIfaceIp" + } + ] + } + ] + }, "UpdateRoutingWithDirectOnly": { "value": { "type": "DIRECT", @@ -27104,7 +27613,7 @@ "operator": "IN", "values": [ "LAB", - "BASIC", + "ADVANCED", "STANDARD", "PREMIUM" ] @@ -27332,7 +27841,7 @@ "currency": "USD", "router": { "package": { - "code": "BASIC" + "code": "ADVANCED" }, "location": { "metroCode": "CH" @@ -31638,7 +32147,7 @@ "state": "RESERVED", "vlanSTag": 1000, "vlanCTag": 500, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee", "uuid": "cd67f685-41b0-1b07-6de0-320a5c00abee" }, @@ -31681,7 +32190,7 @@ "state": "RESERVED", "vlanSTag": 1000, "vlanCTag": 500, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65", "uuid": "2ac4e14f-6120-4705-886e-d37f1d0c6a65" }, @@ -31695,7 +32204,7 @@ "state": "RESERVED", "vlanSTag": 1001, "vlanCTag": 1001, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95", "uuid": "3268d105-e57b-4b2b-8a0a-2e3e42312d95" }, @@ -31722,7 +32231,7 @@ "uuid": "52d61263-fb0a-459d-a086-bc7fd6bd7384", "state": "RESERVED", "vlanTag": 200, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee", "uuid": "cd67f685-41b0-1b07-6de0-320a5c00abee", "bandwidth": 1000 @@ -31764,7 +32273,7 @@ "uuid": "7c968801-e03b-4530-8424-aa5ecc4339e2", "state": "RESERVED", "vlanTag": 240, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65", "uuid": "2ac4e14f-6120-4705-886e-d37f1d0c6a65", "bandwidth": 1000 @@ -31778,7 +32287,7 @@ "uuid": "db812bba-94b8-43e6-8d9c-850f04350c3d", "state": "RESERVED", "vlanTag": 240, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95", "uuid": "3268d105-e57b-4b2b-8a0a-2e3e42312d95", "bandwidth": 1000 @@ -31807,7 +32316,7 @@ "state": "RESERVED", "vlanTagMin": 177, "vlanTagMax": 179, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee", "uuid": "cd67f685-41b0-1b07-6de0-320a5c00abee", "bandwidth": 1000 @@ -31852,7 +32361,7 @@ "state": "RESERVED", "vlanTagMin": 177, "vlanTagMax": 179, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65", "uuid": "2ac4e14f-6120-4705-886e-d37f1d0c6a65", "bandwidth": 1000 @@ -31867,7 +32376,7 @@ "state": "RESERVED", "vlanTagMin": 177, "vlanTagMax": 179, - "connection": { + "asset": { "href": "https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95", "uuid": "3268d105-e57b-4b2b-8a0a-2e3e42312d95", "bandwidth": 1000 @@ -31987,10 +32496,10 @@ ] } }, - "400_route_filters": { + "400_invalid_input": { "value": [ { - "errorCode": "EQ-3044001", + "errorCode": "EQ-3044101", "errorMessage": "Invalid input", "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", "additionalInfo": [ @@ -31998,46 +32507,6 @@ "property": "type" } ] - }, - { - "errorCode": "EQ-3044001", - "errorMessage": "Invalid input", - "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", - "additionalInfo": [ - { - "property": "name" - } - ] - }, - { - "errorCode": "EQ-3044002", - "errorMessage": "Connection already deleted", - "correlationId": "cebc3d33-9037-4a2b-a7af-0ad65602cdec", - "additionalInfo": [ - { - "property": "connectionId" - } - ] - }, - { - "errorCode": "EQ-3044003", - "errorMessage": "Route Filter is in transient state", - "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", - "additionalInfo": [ - { - "property": "routeFilterId" - } - ] - }, - { - "errorCode": "EQ-3044003", - "errorMessage": "Connection is in transient state", - "correlationId": "20d32a80-0d61-4333-bc03-707b591ae2f5", - "additionalInfo": [ - { - "property": "connectionId" - } - ] } ] }, @@ -32107,6 +32576,22 @@ "type": "BGP_IPv4_PREFIX_FILTER", "name": "My-route-filter-v4", "description": "Test filter", + "project": { + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" + }, + "notifications": { + "type": "ALL", + "emails": [ + "test@equinix.com" + ] + } + } + }, + "RouteFilterCreateBgpIpv6Prefix": { + "value": { + "type": "BGP_IPv6_PREFIX_FILTER", + "name": "My-route-filter-v6", + "description": "Test filter", "project": { "projectId": 567 }, @@ -32135,60 +32620,7 @@ "connectionsCount": 0, "project": { "href": "https://api.equinix.com/resourceManager/v1/projects/567", - "projectId": 567 - }, - "notifications": [ - { - "type": "ALL", - "emails": [ - "test@equinix.com" - ] - } - ], - "changeLog": { - "createdBy": "testuser", - "createdByEmail": "testuser@equinix.com", - "createdByFullName": "testuser testuser", - "createdDateTime": "2020-05-21T10:30:00Z" - } - } - }, - "UpdateRouteFilterIPv4": { - "value": { - "type": "BGP_IPv4_PREFIX_FILTER", - "name": "My-route-filter-v4-update", - "description": "Test filter update", - "project": { - "projectId": 789 - }, - "notifications": [ - { - "type": "ALL", - "emails": [ - "test@equinix.com" - ] - } - ] - } - }, - "RouteFilterIpv4ReplaceResponse": { - "value": { - "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d", - "type": "BGP_IPv4_PREFIX_FILTER", - "uuid": "695a8471-6595-4ac6-a2f4-b3d96ed3a59d", - "name": "My-prefix-filter-v4-update", - "description": "Test filter update", - "state": "REPROVISIONING", - "change": { - "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/changes/04af0d37-9160-43d8-97ef-9da9786996a3", - "type": "BGP_IPv4_PREFIX_FILTER_UPDATE", - "uuid": "04af0d37-9160-43d8-97ef-9da9786996a3" - }, - "notMatchedRuleAction": "DENY", - "connectionsCount": 0, - "project": { - "href": "https://api.equinix.com/resourceManager/v1/projects/567", - "projectId": 789 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32223,7 +32655,7 @@ "connectionsCount": 0, "project": { "href": "https://api.equinix.com/resourceManager/v1/projects/567", - "projectId": 567 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32285,7 +32717,7 @@ "connectionsCount": 1, "project": { "href": "https://api.equinix.com/resourceManager/v1/projects/567", - "projectId": 567 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32341,7 +32773,7 @@ "name": "My-route-filter-v4", "description": "Test filter", "project": { - "projectId": 567 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32397,7 +32829,7 @@ "name": "My-route-filter-v4", "description": "Test filter", "project": { - "projectId": 567 + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" }, "notifications": [ { @@ -32427,11 +32859,120 @@ } } }, + "SearchRouteFiltersRequest": { + "value": { + "filter": { + "and": [ + { + "property": "/type", + "operator": "=", + "values": [ + "BGP_IPv4_PREFIX_FILTER" + ] + }, + { + "property": "/name", + "operator": "like", + "values": [ + "%Route_Filter_Demo%" + ] + }, + { + "property": "/project/projectId", + "operator": "=", + "values": [ + "dadd3ab6-c0af-430c-8216-43d44f08c1c5" + ] + } + ] + }, + "pagination": { + "offset": 1, + "limit": 2, + "total": 10 + }, + "sort": [ + { + "property": "/changeLog/updatedDateTime", + "direction": "DESC" + } + ] + } + }, + "SearchRouteFiltersResponse": { + "value": { + "pagination": { + "offset": 1, + "limit": 2, + "total": 10, + "next": "/routeFilters?offset=3&limit=2", + "previous": "/routeFilters?offset=0&limit=2" + }, + "data": [ + { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d", + "type": "BGP_IPv4_PREFIX_FILTER", + "uuid": "695a8471-6595-4ac6-a2f4-b3d96ed3a59d", + "name": "My_Route_Filter_Demo_1", + "description": "Test filter", + "state": "PROVISIONING", + "notMatchedRuleAction": "DENY", + "connectionsCount": 1, + "project": { + "href": "https://api.equinix.com/resourceManager/v1/projects/567", + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" + }, + "notifications": [ + { + "type": "ALL", + "emails": [ + "test@equinix.com" + ] + } + ], + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z" + } + }, + { + "href": "https://api.equinix.com/fabric/v4/routeFilters/795a8471-6595-4ac6-a2f4-b3d96ed3a59d", + "type": "BGP_IPv4_PREFIX_FILTER", + "uuid": "695a8471-6595-4ac6-a2f4-b3d96ed3a59d", + "name": "My_Route_Filter_Demo_2", + "description": "Test filter", + "state": "PROVISIONING", + "notMatchedRuleAction": "DENY", + "connectionsCount": 0, + "project": { + "href": "https://api.equinix.com/resourceManager/v1/projects/567", + "projectId": "dadd3ab6-c0af-430c-8216-43d44f08c1c5" + }, + "notifications": [ + { + "type": "ALL", + "emails": [ + "test@equinix.com" + ] + } + ], + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z" + } + } + ] + } + }, "RouteFilterRulesGetAll": { "value": { "pagination": { "offset": 0, - "limit": 20, + "limit": 32, "total": 2, "next": null, "previous": null @@ -32490,6 +33031,14 @@ "prefixMatch": "exact" } }, + "RouteFilterRuleCreateBgpIpv6Prefix": { + "value": { + "name": "Private-subnet-filter", + "description": "Test rule", + "prefix": "2001:7a9::34f4:0:f3dd:1/126", + "prefixMatch": "orlonger" + } + }, "RouteFilterRuleCreateBgpIpv4PrefixResponse": { "value": { "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", @@ -32509,26 +33058,77 @@ "createdBy": "testuser", "createdByEmail": "testuser@equinix.com", "createdByFullName": "testuser testuser", - "createdDateTime": "2020-05-21T10:30:00Z" + "createdDateTime": "2020-05-21T10:30:00Z", + "updatedBy": "testuser", + "updatedByEmail": "testuser@equinix.com", + "updatedByFullName": "testuser testuser", + "updatedDateTime": "2020-05-21T10:30:00Z" + } + } + }, + "RouteFilterRuleCreateBgpIpv6PrefixResponse": { + "value": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", + "type": "BGP_IPv6_PREFIX_FILTER_RULE", + "uuid": "9890d520-1579-4489-8003-154b34b8f403", + "name": "Private-subnet-filter", + "description": "Test rule", + "change": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/ff9653dc-88c5-47b5-b552-8a08d2f73f7e", + "type": "BGP_IPv6_PREFIX_FILTER_RULE_CREATION", + "uuid": "ff9653dc-88c5-47b5-b552-8a08d2f73f7e" + }, + "action": "PERMIT", + "prefix": "2001:7a9::34f4:0:f3dd:1/126", + "prefixMatch": "exact", + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z", + "updatedBy": "testuser", + "updatedByEmail": "testuser@equinix.com", + "updatedByFullName": "testuser testuser", + "updatedDateTime": "2020-05-21T10:30:00Z" } } }, + "400_bad_request": { + "value": [ + { + "errorCode": "EQ-3044013", + "errorMessage": "Invalid argument value passed", + "property": "prefixMatch", + "correlationId": "cebc3d33-9037-4a2b-a7af-0ad65602cdec" + } + ] + }, "UpdateRouteFilterRuleIPv4": { "value": { "type": "BGP_IPv4_PREFIX_FILTER_RULE", - "name": "Private-subnet-filter", + "name": "Private-subnet-filter-update", + "description": "Test rule", + "prefix": "192.168.0.0/24", + "prefixMach": "exact", + "action": "PERMIT" + } + }, + "UpdateRouteFilterRuleIPv6": { + "value": { + "type": "BGP_IPv6_PREFIX_FILTER_RULE", + "name": "Private-subnet-filter-update", "description": "Test rule", - "prefix": "192.168.0.0/25", + "prefix": "2001:7a9::34f4:0:f3dd:1/126", "prefixMach": "exact", "action": "PERMIT" } }, - "RouteFilterRuleIpv4ReplaceResponse": { + "RouteFilterRuleReplaceIpv4Response": { "value": { "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", "type": "BGP_IPv4_PREFIX_FILTER_RULE", "uuid": "9890d520-1579-4489-8003-154b34b8f403", - "name": "Private-subnet-filter", + "name": "Private-subnet-filter-update", "description": "Test rule", "prefixMach": "exact", "action": "PERMIT", @@ -32550,6 +33150,33 @@ } } }, + "RouteFilterRuleReplaceIpv6Response": { + "value": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", + "type": "BGP_IPv6_PREFIX_FILTER_RULE", + "uuid": "9890d520-1579-4489-8003-154b34b8f403", + "name": "Private-subnet-filter-update", + "description": "Test rule", + "prefixMach": "exact", + "action": "PERMIT", + "change": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/a25ca469-721a-4614-89a9-cdef287aa628", + "type": "BGP_IPv6_PREFIX_FILTER_RULE_UPDATE", + "uuid": "a25ca469-721a-4614-89a9-cdef287aa628" + }, + "prefix": "2001:7a9::34f4:0:f3dd:1/128", + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z", + "updatedBy": "testuser1", + "updatedByEmail": "testuser@equinix.com", + "updatedByFullName": "testuser testuser", + "updatedDateTime": "2020-05-21T10:30:00Z" + } + } + }, "RouteFilterRuleDeleteBgpIpv4PrefixResponse": { "value": { "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", @@ -32581,16 +33208,65 @@ } } }, + "RouteFilterRuleDeleteBgpIpv6PrefixResponse": { + "value": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403", + "type": "BGP_IPv6_PREFIX_FILTER_RULE", + "uuid": "9890d520-1579-4489-8003-154b34b8f403", + "name": "Private-subnet-filter", + "description": "Test rule", + "change": { + "href": "https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/e8528788-14d3-4a7b-a740-99b702067485", + "type": "BGP_IPv6_PREFIX_FILTER_RULE_DELETION", + "uuid": "e8528788-14d3-4a7b-a740-99b702067485" + }, + "action": "PERMIT??", + "prefix": "2001:7a9::34f4:0:f3dd:1/126", + "prefixMach": "exact", + "changeLog": { + "createdBy": "testuser", + "createdByEmail": "testuser@equinix.com", + "createdByFullName": "testuser testuser", + "createdDateTime": "2020-05-21T10:30:00Z", + "updatedBy": "testuser1", + "updatedByEmail": "testuser@equinix.com", + "updatedByFullName": "testuser testuser", + "updatedDateTime": "2020-05-21T10:30:00Z", + "deletedBy": "testuser1", + "deletedByEmail": "testuser@equinix.com", + "deletedByFullName": "testuser testuser", + "deletedDateTime": "2020-05-21T10:30:00Z" + } + } + }, "400_transient_filter": { "value": [ { - "errorCode": "EQ-3044015", + "errorCode": "EQ-3044215", "errorMessage": "Cannot delete Route Filter Rule, Route Filter transient state", "correlationId": "c82ff3bc-de07-47e5-b3ec-53a009d01515", "details": "Cannot delete Route Filter Rule, Route filter is in transient state" } ] }, + "PatchRouteFilterRuleName": { + "value": [ + { + "op": "replace", + "path": "/name", + "value": "test-route-filter-name-patch" + } + ] + }, + "PatchRouteFilterRulePrefix": { + "value": [ + { + "op": "replace", + "path": "/prefix", + "value": "192.168.0.0/30" + } + ] + }, "PatchRouteFilterRulePrefixMatch": { "value": [ { @@ -33294,7 +33970,7 @@ "pagination": { "offset": 0, "limit": 20, - "total": 2 + "total": 4 }, "data": [ { @@ -33340,6 +34016,50 @@ "createdDateTime": "2023-02-10T00:14:47Z", "updatedDateTime": "2023-02-10T00:14:47Z" } + }, + { + "href": "https://api.equinix.com/fabric/v4/routerPackages/ADVANCED", + "type": "ROUTER_PACKAGE", + "code": "ADVANCED", + "description": "string", + "totalIPv4RoutesMax": 4000, + "totalIPv6RoutesMax": 250, + "staticIPv4RoutesMax": 150, + "staticIPv6RoutesMax": 150, + "naclsMax": 60, + "naclRulesMax": 1000, + "haSupported": true, + "routeFilterSupported": true, + "natType": "STATIC_NAT", + "vcCountMax": 99999, + "crCountMax": 3, + "vcBandwidthMax": 50000, + "changeLog": { + "createdDateTime": "2023-02-10T00:14:47Z", + "updatedDateTime": "2023-02-10T00:14:47Z" + } + }, + { + "href": "https://api.equinix.com/fabric/v4/routerPackages/PREMIUM", + "type": "ROUTER_PACKAGE", + "code": "PREMIUM", + "description": "string", + "totalIPv4RoutesMax": 10000, + "totalIPv6RoutesMax": 500, + "staticIPv4RoutesMax": 150, + "staticIPv6RoutesMax": 150, + "naclsMax": 60, + "naclRulesMax": 1000, + "haSupported": true, + "routeFilterSupported": true, + "natType": "STATIC_NAT", + "vcCountMax": 10, + "crCountMax": 3, + "vcBandwidthMax": 50000, + "changeLog": { + "createdDateTime": "2023-02-10T00:14:47Z", + "updatedDateTime": "2023-02-10T00:14:47Z" + } } ] } @@ -34275,6 +34995,24 @@ ] } }, + "CreateLocalNetwork": { + "value": { + "type": "EVPLAN", + "name": "My-Network-1", + "scope": "LOCAL", + "project": { + "projectId": "1234567" + }, + "notifications": [ + { + "type": "ALL", + "emails": [ + "test@equinix.com" + ] + } + ] + } + }, "NetworkPostResponseExample": { "value": { "href": "https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784", From 243ec1d1eeee5fe04ea980341fe2758abb13019b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 15 Feb 2024 19:59:03 +0000 Subject: [PATCH 2/3] sync: generate client with 2024-02-15 spec --- .../.openapi-generator/FILES | 45 +- equinix-openapi-fabric/README.md | 19 +- equinix-openapi-fabric/api/openapi.yaml | 1478 ++++++++++++----- equinix-openapi-fabric/docs/AccessPoint.md | 1 + equinix-openapi-fabric/docs/AdditionalInfo.md | 15 - .../docs/CloudRouterPackageType.md | 2 +- .../docs/CloudRoutersApi.md | 2 +- equinix-openapi-fabric/docs/Code.md | 2 +- equinix-openapi-fabric/docs/ConnectionType.md | 2 + .../docs/FabricCloudRouterCode.md | 2 +- .../docs/LinkProtocolRequestType.md | 4 +- .../docs/LinkProtocolResponse.md | 5 +- ...rojectAllOf.md => MetalInterconnection.md} | 5 +- equinix-openapi-fabric/docs/NetworkScope.md | 2 + ...uest.md => PrecisionTimePackageRequest.md} | 2 +- .../docs/PrecisionTimePackageResponse.md | 44 + .../PrecisionTimeServiceCreateResponse.md | 2 +- .../docs/PrecisionTimeServiceRequest.md | 2 +- .../docs/RouteFilterRuleState.md | 23 + .../docs/RouteFilterRulesApi.md | 18 +- .../docs/RouteFilterRulesData.md | 1 + ...md => RouteFilterRulesPatchRequestItem.md} | 2 +- .../docs/RouteFiltersApi.md | 34 +- .../docs/RouteFiltersData.md | 1 + .../docs/RouteFiltersPatchRequestItem.md | 16 + .../docs/RouteFiltersSearchBase.md | 15 + .../docs/RouteFiltersSearchBaseFilter.md | 13 + .../docs/RouteFiltersSearchFilterItem.md | 27 + .../docs/RouteFiltersSearchResponse.md | 14 + .../docs/RouterPackageCode.md | 2 +- .../docs/ServiceProfileTypeEnum.md | 2 + equinix-openapi-fabric/docs/SortItem.md | 39 + equinix-openapi-fabric/docs/SubInterface.md | 11 - .../VirtualConnectionPriceConnectionType.md | 2 + .../java/com/equinix/openapi/fabric/JSON.java | 14 +- .../fabric/v4/api/RouteFilterRulesApi.java | 77 +- .../fabric/v4/api/RouteFiltersApi.java | 116 +- .../openapi/fabric/v4/model/AccessPoint.java | 38 +- .../v4/model/CloudRouterPackageType.java | 2 +- .../equinix/openapi/fabric/v4/model/Code.java | 2 +- .../fabric/v4/model/ConnectionType.java | 4 +- .../v4/model/FabricCloudRouterCode.java | 2 +- .../v4/model/LinkProtocolRequestType.java | 4 +- .../fabric/v4/model/LinkProtocolResponse.java | 153 +- ...ctAllOf.java => MetalInterconnection.java} | 86 +- .../openapi/fabric/v4/model/NetworkScope.java | 4 +- ....java => PrecisionTimePackageRequest.java} | 58 +- .../model/PrecisionTimePackageResponse.java | 717 ++++++++ .../PrecisionTimeServiceCreateResponse.java | 12 +- .../v4/model/PrecisionTimeServiceRequest.java | 12 +- .../fabric/v4/model/RouteFilterRuleState.java | 82 + .../fabric/v4/model/RouteFilterRulesData.java | 32 +- .../RouteFilterRulesPatchRequestItem.java | 350 ++++ .../fabric/v4/model/RouteFiltersData.java | 31 +- ...java => RouteFiltersPatchRequestItem.java} | 64 +- .../v4/model/RouteFiltersSearchBase.java | 369 ++++ ...java => RouteFiltersSearchBaseFilter.java} | 132 +- .../model/RouteFiltersSearchFilterItem.java | 407 +++++ .../v4/model/RouteFiltersSearchResponse.java | 335 ++++ .../fabric/v4/model/RouterPackageCode.java | 2 +- .../v4/model/ServiceProfileTypeEnum.java | 4 +- .../openapi/fabric/v4/model/SortItem.java | 419 +++++ .../openapi/fabric/v4/model/SubInterface.java | 85 +- .../VirtualConnectionPriceConnectionType.java | 4 +- .../v4/api/RouteFilterRulesApiTest.java | 7 +- .../fabric/v4/api/RouteFiltersApiTest.java | 19 +- .../fabric/v4/model/AccessPointTest.java | 9 + .../v4/model/LinkProtocolResponseTest.java | 34 +- ...est.java => MetalInterconnectionTest.java} | 20 +- ...a => PrecisionTimePackageRequestTest.java} | 12 +- .../PrecisionTimePackageResponseTest.java | 137 ++ ...recisionTimeServiceCreateResponseTest.java | 2 +- .../PrecisionTimeServiceRequestTest.java | 2 +- .../v4/model/RouteFilterRuleStateTest.java | 32 + .../v4/model/RouteFilterRulesDataTest.java | 9 + .../RouteFilterRulesPatchRequestItemTest.java | 63 + .../fabric/v4/model/RouteFiltersDataTest.java | 8 + ... => RouteFiltersPatchRequestItemTest.java} | 12 +- .../RouteFiltersSearchBaseFilterTest.java | 50 + .../v4/model/RouteFiltersSearchBaseTest.java | 68 + .../RouteFiltersSearchFilterItemTest.java | 65 + .../model/RouteFiltersSearchResponseTest.java | 59 + ...itionalInfoTest.java => SortItemTest.java} | 24 +- .../fabric/v4/model/SubInterfaceTest.java | 8 - 84 files changed, 5122 insertions(+), 989 deletions(-) delete mode 100644 equinix-openapi-fabric/docs/AdditionalInfo.md rename equinix-openapi-fabric/docs/{RouteFiltersDataProjectAllOf.md => MetalInterconnection.md} (51%) rename equinix-openapi-fabric/docs/{PackageRequest.md => PrecisionTimePackageRequest.md} (93%) create mode 100644 equinix-openapi-fabric/docs/PrecisionTimePackageResponse.md create mode 100644 equinix-openapi-fabric/docs/RouteFilterRuleState.md rename equinix-openapi-fabric/docs/{RouteFilterChangePrefixMatch.md => RouteFilterRulesPatchRequestItem.md} (90%) create mode 100644 equinix-openapi-fabric/docs/RouteFiltersPatchRequestItem.md create mode 100644 equinix-openapi-fabric/docs/RouteFiltersSearchBase.md create mode 100644 equinix-openapi-fabric/docs/RouteFiltersSearchBaseFilter.md create mode 100644 equinix-openapi-fabric/docs/RouteFiltersSearchFilterItem.md create mode 100644 equinix-openapi-fabric/docs/RouteFiltersSearchResponse.md create mode 100644 equinix-openapi-fabric/docs/SortItem.md rename equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/{RouteFiltersDataProjectAllOf.java => MetalInterconnection.java} (74%) rename equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/{PackageRequest.java => PrecisionTimePackageRequest.java} (83%) create mode 100644 equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponse.java create mode 100644 equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleState.java create mode 100644 equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItem.java rename equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/{RouteFilterChangePrefixMatch.java => RouteFiltersPatchRequestItem.java} (83%) create mode 100644 equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBase.java rename equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/{AdditionalInfo.java => RouteFiltersSearchBaseFilter.java} (68%) create mode 100644 equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItem.java create mode 100644 equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponse.java create mode 100644 equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/SortItem.java rename equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/{RouteFiltersDataProjectAllOfTest.java => MetalInterconnectionTest.java} (72%) rename equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/{PackageRequestTest.java => PrecisionTimePackageRequestTest.java} (80%) create mode 100644 equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponseTest.java create mode 100644 equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleStateTest.java create mode 100644 equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItemTest.java rename equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/{RouteFilterChangePrefixMatchTest.java => RouteFiltersPatchRequestItemTest.java} (81%) create mode 100644 equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilterTest.java create mode 100644 equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseTest.java create mode 100644 equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItemTest.java create mode 100644 equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponseTest.java rename equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/{AdditionalInfoTest.java => SortItemTest.java} (74%) diff --git a/equinix-openapi-fabric/.openapi-generator/FILES b/equinix-openapi-fabric/.openapi-generator/FILES index 19b00560..95bacf9d 100644 --- a/equinix-openapi-fabric/.openapi-generator/FILES +++ b/equinix-openapi-fabric/.openapi-generator/FILES @@ -12,7 +12,6 @@ docs/AccessPointType.md docs/Account.md docs/Actions.md docs/AddOperation.md -docs/AdditionalInfo.md docs/AdvanceConfiguration.md docs/AllPhysicalPortsResponse.md docs/AllPortsResponse.md @@ -120,6 +119,7 @@ docs/LinkProtocolUntagged.md docs/LinkProtocolVxlan.md docs/MarketingInfo.md docs/Md5.md +docs/MetalInterconnection.md docs/MetricInterval.md docs/Metrics.md docs/Metro.md @@ -155,7 +155,6 @@ docs/NetworksApi.md docs/OpEnum.md docs/Order.md docs/PackageChangeLog.md -docs/PackageRequest.md docs/PackageResponse.md docs/Pagination.md docs/PaginationRequest.md @@ -192,6 +191,8 @@ docs/PortV4SearchRequest.md docs/PortsApi.md docs/PrecisionTimeApi.md docs/PrecisionTimeChangeOperation.md +docs/PrecisionTimePackageRequest.md +docs/PrecisionTimePackageResponse.md docs/PrecisionTimeServiceCreateResponse.md docs/PrecisionTimeServiceRequest.md docs/Presence.md @@ -213,8 +214,8 @@ docs/RemoveOperation.md docs/ReplaceOperation.md docs/RouteFilterChangeData.md docs/RouteFilterChangeDataResponse.md -docs/RouteFilterChangePrefixMatch.md docs/RouteFilterConnectionsData.md +docs/RouteFilterRuleState.md docs/RouteFilterRulesApi.md docs/RouteFilterRulesBase.md docs/RouteFilterRulesChange.md @@ -222,6 +223,7 @@ docs/RouteFilterRulesChangeData.md docs/RouteFilterRulesChangeDataResponse.md docs/RouteFilterRulesChangeOperation.md docs/RouteFilterRulesData.md +docs/RouteFilterRulesPatchRequestItem.md docs/RouteFilterRulesPostRequest.md docs/RouteFilterState.md docs/RouteFiltersApi.md @@ -230,7 +232,11 @@ docs/RouteFiltersChange.md docs/RouteFiltersChangeOperation.md docs/RouteFiltersData.md docs/RouteFiltersDataProject.md -docs/RouteFiltersDataProjectAllOf.md +docs/RouteFiltersPatchRequestItem.md +docs/RouteFiltersSearchBase.md +docs/RouteFiltersSearchBaseFilter.md +docs/RouteFiltersSearchFilterItem.md +docs/RouteFiltersSearchResponse.md docs/RouteTableEntry.md docs/RouteTableEntryConnection.md docs/RouteTableEntryFilter.md @@ -315,6 +321,7 @@ docs/SortBy.md docs/SortCriteria.md docs/SortCriteriaResponse.md docs/SortDirection.md +docs/SortItem.md docs/Statistics.md docs/StatisticsApi.md docs/SubInterface.md @@ -392,7 +399,6 @@ src/main/java/com/equinix/openapi/fabric/v4/model/AccessPointType.java src/main/java/com/equinix/openapi/fabric/v4/model/Account.java src/main/java/com/equinix/openapi/fabric/v4/model/Actions.java src/main/java/com/equinix/openapi/fabric/v4/model/AddOperation.java -src/main/java/com/equinix/openapi/fabric/v4/model/AdditionalInfo.java src/main/java/com/equinix/openapi/fabric/v4/model/AdvanceConfiguration.java src/main/java/com/equinix/openapi/fabric/v4/model/AllPhysicalPortsResponse.java src/main/java/com/equinix/openapi/fabric/v4/model/AllPortsResponse.java @@ -497,6 +503,7 @@ src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolUntagged.java src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolVxlan.java src/main/java/com/equinix/openapi/fabric/v4/model/MarketingInfo.java src/main/java/com/equinix/openapi/fabric/v4/model/Md5.java +src/main/java/com/equinix/openapi/fabric/v4/model/MetalInterconnection.java src/main/java/com/equinix/openapi/fabric/v4/model/MetricInterval.java src/main/java/com/equinix/openapi/fabric/v4/model/Metrics.java src/main/java/com/equinix/openapi/fabric/v4/model/Metro.java @@ -530,7 +537,6 @@ src/main/java/com/equinix/openapi/fabric/v4/model/NetworkType.java src/main/java/com/equinix/openapi/fabric/v4/model/OpEnum.java src/main/java/com/equinix/openapi/fabric/v4/model/Order.java src/main/java/com/equinix/openapi/fabric/v4/model/PackageChangeLog.java -src/main/java/com/equinix/openapi/fabric/v4/model/PackageRequest.java src/main/java/com/equinix/openapi/fabric/v4/model/PackageResponse.java src/main/java/com/equinix/openapi/fabric/v4/model/Pagination.java src/main/java/com/equinix/openapi/fabric/v4/model/PaginationRequest.java @@ -565,6 +571,8 @@ src/main/java/com/equinix/openapi/fabric/v4/model/PortTether.java src/main/java/com/equinix/openapi/fabric/v4/model/PortType.java src/main/java/com/equinix/openapi/fabric/v4/model/PortV4SearchRequest.java src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeChangeOperation.java +src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageRequest.java +src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponse.java src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponse.java src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequest.java src/main/java/com/equinix/openapi/fabric/v4/model/Presence.java @@ -585,14 +593,15 @@ src/main/java/com/equinix/openapi/fabric/v4/model/RemoveOperation.java src/main/java/com/equinix/openapi/fabric/v4/model/ReplaceOperation.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangeData.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangeDataResponse.java -src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangePrefixMatch.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterConnectionsData.java +src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleState.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesBase.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesChange.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesChangeData.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesChangeDataResponse.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesChangeOperation.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesData.java +src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItem.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPostRequest.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterState.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersBase.java @@ -600,7 +609,11 @@ src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersChange.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersChangeOperation.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersData.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProject.java -src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectAllOf.java +src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersPatchRequestItem.java +src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBase.java +src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilter.java +src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItem.java +src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponse.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteTableEntry.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteTableEntryConnection.java src/main/java/com/equinix/openapi/fabric/v4/model/RouteTableEntryFilter.java @@ -682,6 +695,7 @@ src/main/java/com/equinix/openapi/fabric/v4/model/SortBy.java src/main/java/com/equinix/openapi/fabric/v4/model/SortCriteria.java src/main/java/com/equinix/openapi/fabric/v4/model/SortCriteriaResponse.java src/main/java/com/equinix/openapi/fabric/v4/model/SortDirection.java +src/main/java/com/equinix/openapi/fabric/v4/model/SortItem.java src/main/java/com/equinix/openapi/fabric/v4/model/Statistics.java src/main/java/com/equinix/openapi/fabric/v4/model/SubInterface.java src/main/java/com/equinix/openapi/fabric/v4/model/TopUtilizedStatistics.java @@ -731,7 +745,6 @@ src/test/java/com/equinix/openapi/fabric/v4/model/AccessPointTypeTest.java src/test/java/com/equinix/openapi/fabric/v4/model/AccountTest.java src/test/java/com/equinix/openapi/fabric/v4/model/ActionsTest.java src/test/java/com/equinix/openapi/fabric/v4/model/AddOperationTest.java -src/test/java/com/equinix/openapi/fabric/v4/model/AdditionalInfoTest.java src/test/java/com/equinix/openapi/fabric/v4/model/AdvanceConfigurationTest.java src/test/java/com/equinix/openapi/fabric/v4/model/AllPhysicalPortsResponseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/AllPortsResponseTest.java @@ -836,6 +849,7 @@ src/test/java/com/equinix/openapi/fabric/v4/model/LinkProtocolVxlanTest.java src/test/java/com/equinix/openapi/fabric/v4/model/LinkTest.java src/test/java/com/equinix/openapi/fabric/v4/model/MarketingInfoTest.java src/test/java/com/equinix/openapi/fabric/v4/model/Md5Test.java +src/test/java/com/equinix/openapi/fabric/v4/model/MetalInterconnectionTest.java src/test/java/com/equinix/openapi/fabric/v4/model/MetricIntervalTest.java src/test/java/com/equinix/openapi/fabric/v4/model/MetricsTest.java src/test/java/com/equinix/openapi/fabric/v4/model/MetroErrorTest.java @@ -869,7 +883,6 @@ src/test/java/com/equinix/openapi/fabric/v4/model/NetworkTypeTest.java src/test/java/com/equinix/openapi/fabric/v4/model/OpEnumTest.java src/test/java/com/equinix/openapi/fabric/v4/model/OrderTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PackageChangeLogTest.java -src/test/java/com/equinix/openapi/fabric/v4/model/PackageRequestTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PackageResponseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PaginationRequestTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PaginationTest.java @@ -904,6 +917,8 @@ src/test/java/com/equinix/openapi/fabric/v4/model/PortTetherTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PortTypeTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PortV4SearchRequestTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeChangeOperationTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageRequestTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequestTest.java src/test/java/com/equinix/openapi/fabric/v4/model/PresenceTest.java @@ -924,22 +939,27 @@ src/test/java/com/equinix/openapi/fabric/v4/model/RemoveOperationTest.java src/test/java/com/equinix/openapi/fabric/v4/model/ReplaceOperationTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangeDataResponseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangeDataTest.java -src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangePrefixMatchTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterConnectionsDataTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleStateTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesBaseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesChangeDataResponseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesChangeDataTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesChangeOperationTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesChangeTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesDataTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItemTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPostRequestTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterStateTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersBaseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersChangeOperationTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersChangeTest.java -src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectAllOfTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersPatchRequestItemTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilterTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItemTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteTableEntryConnectionTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteTableEntryFilterTest.java src/test/java/com/equinix/openapi/fabric/v4/model/RouteTableEntryFiltersTest.java @@ -1020,6 +1040,7 @@ src/test/java/com/equinix/openapi/fabric/v4/model/SortByTest.java src/test/java/com/equinix/openapi/fabric/v4/model/SortCriteriaResponseTest.java src/test/java/com/equinix/openapi/fabric/v4/model/SortCriteriaTest.java src/test/java/com/equinix/openapi/fabric/v4/model/SortDirectionTest.java +src/test/java/com/equinix/openapi/fabric/v4/model/SortItemTest.java src/test/java/com/equinix/openapi/fabric/v4/model/SortTest.java src/test/java/com/equinix/openapi/fabric/v4/model/StatisticsTest.java src/test/java/com/equinix/openapi/fabric/v4/model/SubInterfaceTest.java diff --git a/equinix-openapi-fabric/README.md b/equinix-openapi-fabric/README.md index 85b98771..6bd7ab6f 100644 --- a/equinix-openapi-fabric/README.md +++ b/equinix-openapi-fabric/README.md @@ -1,7 +1,7 @@ # equinix-openapi-fabric Equinix Fabric API v4 -- API version: 4.11 +- API version: 4.12 Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
@@ -179,7 +179,7 @@ Class | Method | HTTP request | Description *RouteFiltersApi* | [**getRouteFilterChanges**](docs/RouteFiltersApi.md#getRouteFilterChanges) | **GET** /fabric/v4/routeFilters/{routeFilterId}/changes | Get All Changes *RouteFiltersApi* | [**getRouteFilterConnections**](docs/RouteFiltersApi.md#getRouteFilterConnections) | **GET** /fabric/v4/routeFilters/{routeFilterId}/connections | Get Connections *RouteFiltersApi* | [**patchRouteFilterByUuid**](docs/RouteFiltersApi.md#patchRouteFilterByUuid) | **PATCH** /fabric/v4/routeFilters/{routeFilterId} | Patch Route Filter -*RouteFiltersApi* | [**replaceRouteFilterByUuid**](docs/RouteFiltersApi.md#replaceRouteFilterByUuid) | **PUT** /fabric/v4/routeFilters/{routeFilterId} | Replace Route Filter +*RouteFiltersApi* | [**searchRouteFilters**](docs/RouteFiltersApi.md#searchRouteFilters) | **POST** /fabric/v4/routeFilters/search | Search Route Filters *RoutingProtocolsApi* | [**createConnectionRoutingProtocol**](docs/RoutingProtocolsApi.md#createConnectionRoutingProtocol) | **POST** /fabric/v4/connections/{connectionId}/routingProtocols | Create Protocol *RoutingProtocolsApi* | [**createConnectionRoutingProtocolsInBulk**](docs/RoutingProtocolsApi.md#createConnectionRoutingProtocolsInBulk) | **POST** /fabric/v4/connections/{connectionId}/routingProtocols/bulk | Bulk Create Protocol *RoutingProtocolsApi* | [**deleteConnectionRoutingProtocolByUuid**](docs/RoutingProtocolsApi.md#deleteConnectionRoutingProtocolByUuid) | **DELETE** /fabric/v4/connections/{connectionId}/routingProtocols/{routingProtocolId} | Delete Protocol @@ -221,7 +221,6 @@ Class | Method | HTTP request | Description - [Account](docs/Account.md) - [Actions](docs/Actions.md) - [AddOperation](docs/AddOperation.md) - - [AdditionalInfo](docs/AdditionalInfo.md) - [AdvanceConfiguration](docs/AdvanceConfiguration.md) - [AllPhysicalPortsResponse](docs/AllPhysicalPortsResponse.md) - [AllPortsResponse](docs/AllPortsResponse.md) @@ -326,6 +325,7 @@ Class | Method | HTTP request | Description - [LinkProtocolVxlan](docs/LinkProtocolVxlan.md) - [MarketingInfo](docs/MarketingInfo.md) - [Md5](docs/Md5.md) + - [MetalInterconnection](docs/MetalInterconnection.md) - [MetricInterval](docs/MetricInterval.md) - [Metrics](docs/Metrics.md) - [Metro](docs/Metro.md) @@ -359,7 +359,6 @@ Class | Method | HTTP request | Description - [OpEnum](docs/OpEnum.md) - [Order](docs/Order.md) - [PackageChangeLog](docs/PackageChangeLog.md) - - [PackageRequest](docs/PackageRequest.md) - [PackageResponse](docs/PackageResponse.md) - [Pagination](docs/Pagination.md) - [PaginationRequest](docs/PaginationRequest.md) @@ -394,6 +393,8 @@ Class | Method | HTTP request | Description - [PortType](docs/PortType.md) - [PortV4SearchRequest](docs/PortV4SearchRequest.md) - [PrecisionTimeChangeOperation](docs/PrecisionTimeChangeOperation.md) + - [PrecisionTimePackageRequest](docs/PrecisionTimePackageRequest.md) + - [PrecisionTimePackageResponse](docs/PrecisionTimePackageResponse.md) - [PrecisionTimeServiceCreateResponse](docs/PrecisionTimeServiceCreateResponse.md) - [PrecisionTimeServiceRequest](docs/PrecisionTimeServiceRequest.md) - [Presence](docs/Presence.md) @@ -414,14 +415,15 @@ Class | Method | HTTP request | Description - [ReplaceOperation](docs/ReplaceOperation.md) - [RouteFilterChangeData](docs/RouteFilterChangeData.md) - [RouteFilterChangeDataResponse](docs/RouteFilterChangeDataResponse.md) - - [RouteFilterChangePrefixMatch](docs/RouteFilterChangePrefixMatch.md) - [RouteFilterConnectionsData](docs/RouteFilterConnectionsData.md) + - [RouteFilterRuleState](docs/RouteFilterRuleState.md) - [RouteFilterRulesBase](docs/RouteFilterRulesBase.md) - [RouteFilterRulesChange](docs/RouteFilterRulesChange.md) - [RouteFilterRulesChangeData](docs/RouteFilterRulesChangeData.md) - [RouteFilterRulesChangeDataResponse](docs/RouteFilterRulesChangeDataResponse.md) - [RouteFilterRulesChangeOperation](docs/RouteFilterRulesChangeOperation.md) - [RouteFilterRulesData](docs/RouteFilterRulesData.md) + - [RouteFilterRulesPatchRequestItem](docs/RouteFilterRulesPatchRequestItem.md) - [RouteFilterRulesPostRequest](docs/RouteFilterRulesPostRequest.md) - [RouteFilterState](docs/RouteFilterState.md) - [RouteFiltersBase](docs/RouteFiltersBase.md) @@ -429,7 +431,11 @@ Class | Method | HTTP request | Description - [RouteFiltersChangeOperation](docs/RouteFiltersChangeOperation.md) - [RouteFiltersData](docs/RouteFiltersData.md) - [RouteFiltersDataProject](docs/RouteFiltersDataProject.md) - - [RouteFiltersDataProjectAllOf](docs/RouteFiltersDataProjectAllOf.md) + - [RouteFiltersPatchRequestItem](docs/RouteFiltersPatchRequestItem.md) + - [RouteFiltersSearchBase](docs/RouteFiltersSearchBase.md) + - [RouteFiltersSearchBaseFilter](docs/RouteFiltersSearchBaseFilter.md) + - [RouteFiltersSearchFilterItem](docs/RouteFiltersSearchFilterItem.md) + - [RouteFiltersSearchResponse](docs/RouteFiltersSearchResponse.md) - [RouteTableEntry](docs/RouteTableEntry.md) - [RouteTableEntryConnection](docs/RouteTableEntryConnection.md) - [RouteTableEntryFilter](docs/RouteTableEntryFilter.md) @@ -511,6 +517,7 @@ Class | Method | HTTP request | Description - [SortCriteria](docs/SortCriteria.md) - [SortCriteriaResponse](docs/SortCriteriaResponse.md) - [SortDirection](docs/SortDirection.md) + - [SortItem](docs/SortItem.md) - [Statistics](docs/Statistics.md) - [SubInterface](docs/SubInterface.md) - [TopUtilizedStatistics](docs/TopUtilizedStatistics.md) diff --git a/equinix-openapi-fabric/api/openapi.yaml b/equinix-openapi-fabric/api/openapi.yaml index daef808f..ebc076f0 100644 --- a/equinix-openapi-fabric/api/openapi.yaml +++ b/equinix-openapi-fabric/api/openapi.yaml @@ -16,7 +16,7 @@ info: url: https://developer.equinix.com/agreement termsOfService: https://www.equinix.com/about/legal/terms title: Equinix Fabric API v4 - version: "4.11" + version: "4.12" externalDocs: description: Find more information on Equinix Developer Portal url: https://developer.equinix.com @@ -170,6 +170,9 @@ paths: Fcr2Vd: $ref: '#/components/examples/Fcr2Vd' value: null + Fcr2Vd-Redundant-Secondary: + $ref: '#/components/examples/Fcr2Vd-Redundant-Secondary' + value: null Fcr2IpWan: $ref: '#/components/examples/Fcr2IpWan' value: null @@ -862,7 +865,7 @@ paths: application/json: examples: example: - $ref: '#/components/examples/400' + $ref: '#/components/examples/400_routing_protocol' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -4170,7 +4173,7 @@ paths: content: application/json: examples: - connectionRouteFiltersResponse: + ConnectionRouteFiltersResponse: $ref: '#/components/examples/ConnectionRouteFiltersGetAll' value: null schema: @@ -4180,8 +4183,11 @@ paths: content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: + $ref: '#/components/examples/400_Invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -4266,10 +4272,10 @@ paths: content: application/json: examples: - connectionRouteFilterDetachInboundResponse: + ConnectionRouteFilterDetachInboundResponse: $ref: '#/components/examples/DetachConnectionRouteFilterInboundResponse' value: null - connectionRouteFilterDetachOutboundResponse: + ConnectionRouteFilterDetachOutboundResponse: $ref: '#/components/examples/DetachConnectionRouteFilterOutboundResponse' value: null schema: @@ -4365,7 +4371,7 @@ paths: content: application/json: examples: - connectionRouteFilterAttachResponse: + ConnectionRouteFilterAttachResponse: $ref: '#/components/examples/AttachConnectionRouteFiltersResponse' value: null schema: @@ -4375,8 +4381,11 @@ paths: content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: + $ref: '#/components/examples/400_Invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -4473,7 +4482,7 @@ paths: content: application/json: examples: - connectionRouteFilterAttachResponse: + ConnectionRouteFilterAttachResponse: $ref: '#/components/examples/AttachConnectionRouteFiltersResponse' value: null schema: @@ -4559,6 +4568,9 @@ paths: RouteFilterBgpIpv4Prefix: $ref: '#/components/examples/RouteFilterCreateBgpIpv4Prefix' value: null + RouteFilterBgpIpv6Prefix: + $ref: '#/components/examples/RouteFilterCreateBgpIpv6Prefix' + value: null schema: $ref: '#/components/schemas/RouteFiltersBase' required: true @@ -4567,7 +4579,7 @@ paths: content: application/json: examples: - getSpecificRouteFilterResponse: + GetSpecificRouteFilterResponse: $ref: '#/components/examples/RouteFilterCreateBgpIpv4PrefixResponse' value: null schema: @@ -4577,8 +4589,8 @@ paths: content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + TransientState: + $ref: '#/components/examples/400_transient_state' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -4656,7 +4668,7 @@ paths: content: application/json: examples: - routeFilterDeleteBgpIpv4PrefixResponse: + RouteFilterDeleteBgpIpv4PrefixResponse: $ref: '#/components/examples/RouteFilterDeleteBgpIpv4PrefixResponse' value: null schema: @@ -4743,7 +4755,7 @@ paths: content: application/json: examples: - getSpecificRouteFilterResponse: + GetSpecificRouteFilterResponse: $ref: '#/components/examples/RouteFilterCreateBgpIpv4PrefixResponse' value: null schema: @@ -4753,8 +4765,11 @@ paths: content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: + $ref: '#/components/examples/400_Invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -4911,9 +4926,11 @@ paths: - Route Filters x-content-type: application/json x-accepts: application/json - put: - description: This API provides capability to replace a Route Filter completely - operationId: replaceRouteFilterByUuid + /fabric/v4/routeFilters/{routeFilterId}/changes: + get: + description: This API provides capability to retrieve all of a Route Filter's + Changes + operationId: getRouteFilterChanges parameters: - description: Route Filters Id explode: false @@ -4923,33 +4940,44 @@ paths: schema: $ref: '#/components/schemas/RouteFilterId' style: simple - requestBody: - content: - application/json: - examples: - RouteFilterIpv4ReplaceExample: - $ref: '#/components/examples/UpdateRouteFilterIPv4' - value: null - schema: - $ref: '#/components/schemas/RouteFiltersBase' - required: true + - description: offset + example: 1 + explode: true + in: query + name: offset + required: false + schema: + type: integer + style: form + - description: number of records to fetch + example: 10 + explode: true + in: query + name: limit + required: false + schema: + type: integer + style: form responses: - "202": + "200": content: application/json: examples: - routeFilterIpv4ReplaceResponse: - $ref: '#/components/examples/RouteFilterIpv4ReplaceResponse' + RouteFilterChangesResponse: + $ref: '#/components/examples/RouteFilterGetAllChangesResponseExample' value: null schema: - $ref: '#/components/schemas/RouteFiltersData' - description: Successful operation + $ref: '#/components/schemas/RouteFilterChangeDataResponse' + description: Fabric Route Filter Change object "400": content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: + $ref: '#/components/examples/400_Invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -4984,16 +5012,6 @@ paths: schema: $ref: '#/components/schemas/ErrorList' description: Route Filter ID Not Found - "415": - content: - application/json: - examples: - example: - $ref: '#/components/examples/415' - value: null - schema: - $ref: '#/components/schemas/ErrorList' - description: Unsupported Media Type "500": content: application/json: @@ -5004,16 +5022,15 @@ paths: schema: $ref: '#/components/schemas/ErrorList' description: Internal server error - summary: Replace Route Filter + summary: Get All Changes tags: - Route Filters - x-content-type: application/json x-accepts: application/json - /fabric/v4/routeFilters/{routeFilterId}/changes: + /fabric/v4/routeFilters/{routeFilterId}/changes/{changeId}: get: - description: This API provides capability to retrieve all of a Route Filter's + description: This API provides capability to retrieve a specific Route Filter's Changes - operationId: getRouteFilterChanges + operationId: getRouteFilterChangeByUuid parameters: - description: Route Filters Id explode: false @@ -5023,40 +5040,33 @@ paths: schema: $ref: '#/components/schemas/RouteFilterId' style: simple - - description: offset - example: 1 - explode: true - in: query - name: offset - required: false - schema: - type: integer - style: form - - description: number of records to fetch - example: 10 - explode: true - in: query - name: limit - required: false + - description: Routing Protocol Change UUID + explode: false + in: path + name: changeId + required: true schema: - type: integer - style: form + $ref: '#/components/schemas/ChangeId_1' + style: simple responses: "200": content: application/json: examples: - RouteFilterChangesResponse: - $ref: '#/components/examples/RouteFilterGetAllChangesResponseExample' + RouteFilterChangeResponse: + $ref: '#/components/examples/RouteFilterGetChangeResponseExample' value: null schema: - $ref: '#/components/schemas/RouteFilterChangeDataResponse' + $ref: '#/components/schemas/RouteFilterChangeData' description: Fabric Route Filter Change object "400": content: application/json: examples: - example: + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: $ref: '#/components/examples/400_Invalid_id' value: null schema: @@ -5102,15 +5112,15 @@ paths: schema: $ref: '#/components/schemas/ErrorList' description: Internal server error - summary: Get All Changes + summary: Get Change By ID tags: - Route Filters x-accepts: application/json - /fabric/v4/routeFilters/{routeFilterId}/changes/{changeId}: + /fabric/v4/routeFilters/{routeFilterId}/connections: get: - description: This API provides capability to retrieve a specific Route Filter's - Changes - operationId: getRouteFilterChangeByUuid + description: This API provides capability to view all Connections using the + Route Filter + operationId: getRouteFilterConnections parameters: - description: Route Filters Id explode: false @@ -5120,30 +5130,25 @@ paths: schema: $ref: '#/components/schemas/RouteFilterId' style: simple - - description: Routing Protocol Change UUID - explode: false - in: path - name: changeId - required: true - schema: - $ref: '#/components/schemas/ChangeId_1' - style: simple responses: "200": content: application/json: examples: - RouteFilterChangeResponse: - $ref: '#/components/examples/RouteFilterGetChangeResponseExample' + RouteFilterGetConnectionsResponse: + $ref: '#/components/examples/RouteFilterGetConnectionsResponse' value: null schema: - $ref: '#/components/schemas/RouteFilterChangeData' - description: Fabric Route Filter Change object + $ref: '#/components/schemas/GetRouteFilterGetConnectionsResponse' + description: Successful operation "400": content: application/json: examples: - example: + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: $ref: '#/components/examples/400_Invalid_id' value: null schema: @@ -5179,6 +5184,16 @@ paths: schema: $ref: '#/components/schemas/ErrorList' description: Route Filter ID Not Found + "415": + content: + application/json: + examples: + example: + $ref: '#/components/examples/415' + value: null + schema: + $ref: '#/components/schemas/ErrorList' + description: Unsupported Media Type "500": content: application/json: @@ -5189,41 +5204,45 @@ paths: schema: $ref: '#/components/schemas/ErrorList' description: Internal server error - summary: Get Change By ID + summary: Get Connections tags: - Route Filters x-accepts: application/json - /fabric/v4/routeFilters/{routeFilterId}/connections: - get: - description: This API provides capability to view all Connections using the - Route Filter - operationId: getRouteFilterConnections - parameters: - - description: Route Filters Id - explode: false - in: path - name: routeFilterId + /fabric/v4/routeFilters/search: + post: + description: This API provides capability to search Route Filters + operationId: searchRouteFilters + parameters: [] + requestBody: + content: + application/json: + examples: + searchRouteFiltersRequest: + $ref: '#/components/examples/SearchRouteFiltersRequest' + value: null + schema: + $ref: '#/components/schemas/RouteFiltersSearchBase' required: true - schema: - $ref: '#/components/schemas/RouteFilterId' - style: simple responses: "200": content: application/json: examples: - routeFilterGetConnectionsResponse: - $ref: '#/components/examples/RouteFilterGetConnectionsResponse' + SearchRouteFiltersResponse: + $ref: '#/components/examples/SearchRouteFiltersResponse' value: null schema: - $ref: '#/components/schemas/GetRouteFilterGetConnectionsResponse' + $ref: '#/components/schemas/RouteFiltersSearchResponse' description: Successful operation "400": content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: + $ref: '#/components/examples/400_Invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -5278,9 +5297,10 @@ paths: schema: $ref: '#/components/schemas/ErrorList' description: Internal server error - summary: Get Connections + summary: Search Route Filters tags: - Route Filters + x-content-type: application/json x-accepts: application/json /fabric/v4/routeFilters/{routeFilterId}/routeFilterRules: get: @@ -5328,9 +5348,13 @@ paths: "400": content: application/json: + examples: + example: + $ref: '#/components/examples/404_invalid_id' + value: null schema: $ref: '#/components/schemas/ErrorList' - description: Bad request + description: Resource not found "401": content: application/json: @@ -5390,6 +5414,9 @@ paths: RouteFilterRuleBgpIpv4Prefix: $ref: '#/components/examples/RouteFilterRuleCreateBgpIpv4Prefix' value: null + RouteFilterRuleBgpIpv6Prefix: + $ref: '#/components/examples/RouteFilterRuleCreateBgpIpv6Prefix' + value: null schema: $ref: '#/components/schemas/RouteFilterRulesBase' required: true @@ -5398,9 +5425,12 @@ paths: content: application/json: examples: - getSpecificRouteFilterRuleResponse: + GetSpecificRouteFilterRuleIpv4Response: $ref: '#/components/examples/RouteFilterRuleCreateBgpIpv4PrefixResponse' value: null + GetSpecificRouteFilterRuleIpv6Response: + $ref: '#/components/examples/RouteFilterRuleCreateBgpIpv6PrefixResponse' + value: null schema: $ref: '#/components/schemas/RouteFilterRulesData' description: Successful operation @@ -5408,8 +5438,11 @@ paths: content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + InvalidType: + $ref: '#/components/examples/400_bad_request' + value: null + InvalidId: + $ref: '#/components/examples/404_invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -5491,9 +5524,12 @@ paths: content: application/json: examples: - routeFilterDeleteBgpIpv4PrefixResponse: + RouteFilterDeleteBgpIpv4PrefixResponse: $ref: '#/components/examples/RouteFilterRuleDeleteBgpIpv4PrefixResponse' value: null + routeFilterDeleteBgpIpv6PrefixResponse: + $ref: '#/components/examples/RouteFilterRuleDeleteBgpIpv6PrefixResponse' + value: null schema: $ref: '#/components/schemas/RouteFilterRulesData' description: Successful operation @@ -5586,9 +5622,12 @@ paths: content: application/json: examples: - getSpecificRouteFilterRuleResponse: + GetSpecificRouteFilterRuleIpv4Response: $ref: '#/components/examples/RouteFilterRuleCreateBgpIpv4PrefixResponse' value: null + GetSpecificRouteFilterRuleIpv6Response: + $ref: '#/components/examples/RouteFilterRuleCreateBgpIpv6PrefixResponse' + value: null schema: $ref: '#/components/schemas/RouteFilterRulesData' description: Successful operation @@ -5596,8 +5635,11 @@ paths: content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + InvalidType: + $ref: '#/components/examples/400_bad_request' + value: null + InvalidId: + $ref: '#/components/examples/404_invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -5681,7 +5723,13 @@ paths: content: application/json: examples: - RouteFilterRuleNamePatchExample: + RouteFilterRuleName: + $ref: '#/components/examples/PatchRouteFilterRuleName' + value: null + RouteFilterRulePrefix: + $ref: '#/components/examples/PatchRouteFilterRulePrefix' + value: null + RouteFilterRulePrefixMatch: $ref: '#/components/examples/PatchRouteFilterRulePrefixMatch' value: null schema: @@ -5692,18 +5740,24 @@ paths: content: application/json: examples: - RouteFilterNamePatchResponse: - $ref: '#/components/examples/RouteFilterNamePatchResponse' + RouteFilterRuleIpv4ReplaceResponse: + $ref: '#/components/examples/RouteFilterRuleReplaceIpv4Response' + value: null + routeFilterRuleIpv6ReplaceResponse: + $ref: '#/components/examples/RouteFilterRuleReplaceIpv6Response' value: null schema: - $ref: '#/components/schemas/RouteFiltersData' + $ref: '#/components/schemas/RouteFilterRulesData' description: Successful operation "400": content: application/json: examples: - example: - $ref: '#/components/examples/400_invalid_operation' + InvalidType: + $ref: '#/components/examples/400_bad_request' + value: null + InvalidId: + $ref: '#/components/examples/404_invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -5790,6 +5844,9 @@ paths: RouteFilterIpv4ReplaceExample: $ref: '#/components/examples/UpdateRouteFilterRuleIPv4' value: null + RouteFilterIpv6ReplaceExample: + $ref: '#/components/examples/UpdateRouteFilterRuleIPv6' + value: null schema: $ref: '#/components/schemas/RouteFilterRulesBase' required: true @@ -5798,8 +5855,11 @@ paths: content: application/json: examples: - routeFilterRuleIpv4ReplaceResponse: - $ref: '#/components/examples/RouteFilterRuleIpv4ReplaceResponse' + RouteFilterRuleIpv4ReplaceResponse: + $ref: '#/components/examples/RouteFilterRuleReplaceIpv4Response' + value: null + routeFilterRuleIpv6ReplaceResponse: + $ref: '#/components/examples/RouteFilterRuleReplaceIpv6Response' value: null schema: $ref: '#/components/schemas/RouteFilterRulesData' @@ -5808,8 +5868,11 @@ paths: content: application/json: examples: - example: - $ref: '#/components/examples/400_route_filters' + InvalidType: + $ref: '#/components/examples/400_bad_request' + value: null + InvalidId: + $ref: '#/components/examples/404_invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' @@ -5924,7 +5987,10 @@ paths: content: application/json: examples: - example: + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: $ref: '#/components/examples/400_Invalid_id' value: null schema: @@ -6019,7 +6085,10 @@ paths: content: application/json: examples: - example: + InvalidInput: + $ref: '#/components/examples/400_invalid_input' + value: null + InvalidId: $ref: '#/components/examples/400_Invalid_id' value: null schema: @@ -6099,50 +6168,110 @@ paths: schema: $ref: '#/components/schemas/GetRouteFilterRulesResponse' description: Successful operation - summary: Bulk RFRules - tags: - - Route Filter Rules - x-content-type: application/json - x-accepts: application/json - /fabric/v4/routers: - post: - description: This API provides capability to create user's Cloud Routers - operationId: createCloudRouter - parameters: [] - requestBody: - content: - application/json: - examples: - CreateLabPackage: - $ref: '#/components/examples/CreateLabPackage' - value: null - CreateProPackage: - $ref: '#/components/examples/CreateStandardPackage' - value: null - schema: - $ref: '#/components/schemas/CloudRouterPostRequest' - required: true - responses: - "200": - content: - application/json: - examples: - cloudRouterResponse: - $ref: '#/components/examples/CloudRouterPostResponseExample' - value: null - schema: - $ref: '#/components/schemas/CloudRouter' - description: Fabric Cloud Router object "400": content: application/json: examples: example: - $ref: '#/components/examples/400_invalid_package' + $ref: '#/components/examples/404_invalid_id' value: null schema: $ref: '#/components/schemas/ErrorList' - description: Bad request + description: Resource not found + "401": + content: + application/json: + examples: + example: + $ref: '#/components/examples/401' + value: null + schema: + $ref: '#/components/schemas/ErrorList' + description: Unauthorized + "403": + content: + application/json: + examples: + example: + $ref: '#/components/examples/403' + value: null + schema: + $ref: '#/components/schemas/ErrorList' + description: Forbidden + "404": + content: + application/json: + examples: + example: + $ref: '#/components/examples/400' + value: null + schema: + $ref: '#/components/schemas/ErrorList' + description: Not Found + "415": + content: + application/json: + examples: + example: + $ref: '#/components/examples/415' + value: null + schema: + $ref: '#/components/schemas/ErrorList' + description: Unsupported Media Type + "500": + content: + application/json: + examples: + example: + $ref: '#/components/examples/500_internal_error' + value: null + schema: + $ref: '#/components/schemas/ErrorList' + description: Internal server error + summary: Bulk RFRules + tags: + - Route Filter Rules + x-content-type: application/json + x-accepts: application/json + /fabric/v4/routers: + post: + description: This API provides capability to create user's Cloud Routers + operationId: createCloudRouter + parameters: [] + requestBody: + content: + application/json: + examples: + CreateLabPackage: + $ref: '#/components/examples/CreateLabPackage' + value: null + CreateProPackage: + $ref: '#/components/examples/CreateStandardPackage' + value: null + schema: + $ref: '#/components/schemas/CloudRouterPostRequest' + required: true + responses: + "200": + content: + application/json: + examples: + cloudRouterResponse: + $ref: '#/components/examples/CloudRouterPostResponseExample' + value: null + schema: + $ref: '#/components/schemas/CloudRouter' + description: Fabric Cloud Router object + "400": + content: + application/json: + examples: + example: + $ref: '#/components/examples/400_invalid_package' + value: null + schema: + $ref: '#/components/schemas/ErrorList' + description: Bad request "401": content: application/json: @@ -7164,6 +7293,9 @@ paths: CreateRegionalNetwork: $ref: '#/components/examples/CreateRegionalNetwork' value: null + CreateLocalNetwork: + $ref: '#/components/examples/CreateLocalNetwork' + value: null schema: $ref: '#/components/schemas/NetworkPostRequest' required: true @@ -9371,9 +9503,8 @@ components: uuid: 20d32a80-0d61-4333-bc03-707b591ae2f4 linkProtocol: type: QINQ - vlanSTag: 300 - vlanCTagMin: 100 - vlanCTagMax: 109 + vlanCTag: 300 + vlanSTag: 301 order: purchaseOrderNumber: 1-129105284100 notifications: @@ -9692,6 +9823,35 @@ components: emails: - test@equinix.com - test1@equinix.com + Fcr2Vd-Redundant-Secondary: + value: + type: IP_VC + name: My-GW-VDConnection-Secondary + bandwidth: 100 + redundancy: + group: a00cef6f-8e35-4794-9ff9-665e084e4e6d + priority: SECONDARY + aSide: + accessPoint: + type: CLOUD_ROUTER + router: + uuid: 66a21614-1c4a-11ec-9621-0242ac130002 + zSide: + accessPoint: + type: VD + virtualDevice: + type: EDGE + uuid: 20d32a80-0d61-4333-bc03-707b591ae2f4 + interface: + type: NETWORK + id: 45645 + project: + projectId: "567" + notifications: + - type: ALL + emails: + - test@equinix.com + - test1@equinix.com Fcr2IpWan: value: type: IPWAN_VC @@ -9819,10 +9979,7 @@ components: aSide: accessPoint: type: METAL_NETWORK - virtualNetwork: - uuid: a867f685-41b0-1b07-6de0-320a5c00abd - interface: - projectId: 497f6eca-6276-4993-bfeb-53cbbbba6f08 + authenticationKey: xxxxxxxxx zSide: accessPoint: type: SP @@ -12030,6 +12187,56 @@ components: equinixIfaceIp: 192.168.100.1/30 directIpv6: equinixIfaceIp: 2001:7a9::34f4:0:f3dd:1/126 + "400_routing_protocol": + value: + - errorCode: EQ-3041022 + errorMessage: Invalid argument value passed + correlationId: cebc3d33-9037-4a2b-a7af-0ad65602cdec + details: There are no available RFC3279 subnets on the same Fabric Cloud Router. + - errorCode: EQ-3041023 + errorMessage: Invalid pagination parameter. + correlationId: test + additionalInfo: + - property: offset + - reason: The offset parameter must be a Nonnegative Integer. + - errorCode: EQ-3041012 + errorMessage: The system is unable to process your request. + details: The routing protocol associated with this Connection is in the transient + state. + correlationId: test + additionalInfo: + - reason: Routing protocol creation or deletion is not allowed if the routing + protocol associated with connection is in the transient state. + - errorCode: EQ-3041016 + errorMessage: The system is unable to process your request. + details: The BGP routing protocol should be deleted before deleting the DIRECT + routing protocol for the same Connection. + correlationId: test + - errorCode: EQ-3041001 + errorMessage: Invalid argument passed. + correlationId: test + - errorCode: EQ-3041002 + errorMessage: Invalid argument value passed. + correlationId: cebc3d33-9037-4a2b-a7af-0ad65602cdec + additionalInfo: + - property: type + reason: "The type must be one of the following [DIRECT, BGP]." + - errorCode: EQ-3041013 + errorMessage: Required field. + correlationId: 20d32a80-0d61-4333-bc03-707b591ae2f5 + additionalInfo: + - property: $.type + reason: Type is mandatory field. + - errorCode: EQ-3041014 + errorMessage: Json syntax error. Please check the request body. + details: Json syntax error. Please check the request body. + correlationId: test + - errorCode: EQ-3041015 + errorMessage: Invalid request. + details: Value must not be null. + correlationId: test + additionalInfo: + - property: "data[0].directIpv6.equinixIfaceIp" UpdateRoutingWithDirectOnly: value: type: DIRECT @@ -13495,7 +13702,7 @@ components: operator: IN values: - LAB - - BASIC + - ADVANCED - STANDARD - PREMIUM IpBlockProduct: @@ -13633,7 +13840,7 @@ components: currency: USD router: package: - code: BASIC + code: ADVANCED location: metroCode: CH VirtualPort: @@ -16464,7 +16671,7 @@ components: state: RESERVED vlanSTag: 1000 vlanCTag: 500 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee uuid: cd67f685-41b0-1b07-6de0-320a5c00abee changeLog: @@ -16495,7 +16702,7 @@ components: state: RESERVED vlanSTag: 1000 vlanCTag: 500 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65 uuid: 2ac4e14f-6120-4705-886e-d37f1d0c6a65 changeLog: @@ -16505,7 +16712,7 @@ components: state: RESERVED vlanSTag: 1001 vlanCTag: 1001 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95 uuid: 3268d105-e57b-4b2b-8a0a-2e3e42312d95 changeLog: @@ -16524,7 +16731,7 @@ components: uuid: 52d61263-fb0a-459d-a086-bc7fd6bd7384 state: RESERVED vlanTag: 200 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee uuid: cd67f685-41b0-1b07-6de0-320a5c00abee bandwidth: 1000 @@ -16554,7 +16761,7 @@ components: uuid: 7c968801-e03b-4530-8424-aa5ecc4339e2 state: RESERVED vlanTag: 240 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65 uuid: 2ac4e14f-6120-4705-886e-d37f1d0c6a65 bandwidth: 1000 @@ -16564,7 +16771,7 @@ components: uuid: db812bba-94b8-43e6-8d9c-850f04350c3d state: RESERVED vlanTag: 240 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95 uuid: 3268d105-e57b-4b2b-8a0a-2e3e42312d95 bandwidth: 1000 @@ -16585,7 +16792,7 @@ components: state: RESERVED vlanTagMin: 177 vlanTagMax: 179 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/cd67f685-41b0-1b07-6de0-320a5c00abee uuid: cd67f685-41b0-1b07-6de0-320a5c00abee bandwidth: 1000 @@ -16618,7 +16825,7 @@ components: state: RESERVED vlanTagMin: 177 vlanTagMax: 179 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/2ac4e14f-6120-4705-886e-d37f1d0c6a65 uuid: 2ac4e14f-6120-4705-886e-d37f1d0c6a65 bandwidth: 1000 @@ -16629,7 +16836,7 @@ components: state: RESERVED vlanTagMin: 177 vlanTagMax: 179 - connection: + asset: href: https://api.equinix.com/fabric/v4/connections/3268d105-e57b-4b2b-8a0a-2e3e42312d95 uuid: 3268d105-e57b-4b2b-8a0a-2e3e42312d95 bandwidth: 1000 @@ -16703,33 +16910,13 @@ components: uuid: 65d74639-8f48-4e10-9684-45d364645e97 attachmentStatus: ATTACHED direction: OUTBOUND - "400_route_filters": + "400_invalid_input": value: - - errorCode: EQ-3044001 + - errorCode: EQ-3044101 errorMessage: Invalid input correlationId: 20d32a80-0d61-4333-bc03-707b591ae2f5 additionalInfo: - property: type - - errorCode: EQ-3044001 - errorMessage: Invalid input - correlationId: 20d32a80-0d61-4333-bc03-707b591ae2f5 - additionalInfo: - - property: name - - errorCode: EQ-3044002 - errorMessage: Connection already deleted - correlationId: cebc3d33-9037-4a2b-a7af-0ad65602cdec - additionalInfo: - - property: connectionId - - errorCode: EQ-3044003 - errorMessage: Route Filter is in transient state - correlationId: 20d32a80-0d61-4333-bc03-707b591ae2f5 - additionalInfo: - - property: routeFilterId - - errorCode: EQ-3044003 - errorMessage: Connection is in transient state - correlationId: 20d32a80-0d61-4333-bc03-707b591ae2f5 - additionalInfo: - - property: connectionId AttachConnectionRouteFiltersResponse: value: href: https://api.equinix.com/fabric/v4/connections/81331c52-04c0-4656-a4a7-18c52669348f/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d @@ -16778,65 +16965,39 @@ components: name: My-route-filter-v4 description: Test filter project: - projectId: 567 + projectId: dadd3ab6-c0af-430c-8216-43d44f08c1c5 notifications: type: ALL emails: - test@equinix.com - RouteFilterCreateBgpIpv4PrefixResponse: + RouteFilterCreateBgpIpv6Prefix: value: - href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d - type: BGP_IPv4_PREFIX_FILTER - uuid: 695a8471-6595-4ac6-a2f4-b3d96ed3a59d - name: My-prefix-filter-v4 + type: BGP_IPv6_PREFIX_FILTER + name: My-route-filter-v6 description: Test filter - state: PROVISIONING - change: - href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/changes/04af0d37-9160-43d8-97ef-9da9786996a3 - type: BGP_IPv4_PREFIX_FILTER_CREATION - uuid: 04af0d37-9160-43d8-97ef-9da9786996a3 - notMatchedRuleAction: DENY - connectionsCount: 0 project: - href: https://api.equinix.com/resourceManager/v1/projects/567 projectId: 567 notifications: - - type: ALL - emails: - - test@equinix.com - changeLog: - createdBy: testuser - createdByEmail: testuser@equinix.com - createdByFullName: testuser testuser - createdDateTime: 2020-05-21T10:30:00Z - UpdateRouteFilterIPv4: - value: - type: BGP_IPv4_PREFIX_FILTER - name: My-route-filter-v4-update - description: Test filter update - project: - projectId: 789 - notifications: - - type: ALL + type: ALL emails: - test@equinix.com - RouteFilterIpv4ReplaceResponse: + RouteFilterCreateBgpIpv4PrefixResponse: value: href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d type: BGP_IPv4_PREFIX_FILTER uuid: 695a8471-6595-4ac6-a2f4-b3d96ed3a59d - name: My-prefix-filter-v4-update - description: Test filter update - state: REPROVISIONING + name: My-prefix-filter-v4 + description: Test filter + state: PROVISIONING change: href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/changes/04af0d37-9160-43d8-97ef-9da9786996a3 - type: BGP_IPv4_PREFIX_FILTER_UPDATE + type: BGP_IPv4_PREFIX_FILTER_CREATION uuid: 04af0d37-9160-43d8-97ef-9da9786996a3 notMatchedRuleAction: DENY connectionsCount: 0 project: href: https://api.equinix.com/resourceManager/v1/projects/567 - projectId: 789 + projectId: dadd3ab6-c0af-430c-8216-43d44f08c1c5 notifications: - type: ALL emails: @@ -16862,7 +17023,7 @@ components: connectionsCount: 0 project: href: https://api.equinix.com/resourceManager/v1/projects/567 - projectId: 567 + projectId: dadd3ab6-c0af-430c-8216-43d44f08c1c5 notifications: - type: ALL emails: @@ -16907,7 +17068,7 @@ components: connectionsCount: 1 project: href: https://api.equinix.com/resourceManager/v1/projects/567 - projectId: 567 + projectId: dadd3ab6-c0af-430c-8216-43d44f08c1c5 notifications: - type: ALL emails: @@ -16949,7 +17110,7 @@ components: name: My-route-filter-v4 description: Test filter project: - projectId: 567 + projectId: dadd3ab6-c0af-430c-8216-43d44f08c1c5 notifications: - type: ALL emails: @@ -16990,7 +17151,7 @@ components: name: My-route-filter-v4 description: Test filter project: - projectId: 567 + projectId: dadd3ab6-c0af-430c-8216-43d44f08c1c5 notifications: - type: ALL emails: @@ -17008,11 +17169,83 @@ components: type: IP_VC name: test-connection uuid: 05de355a-6c9d-4636-8d7d-7b7595821c15 + SearchRouteFiltersRequest: + value: + filter: + and: + - property: /type + operator: = + values: + - BGP_IPv4_PREFIX_FILTER + - property: /name + operator: like + values: + - '%Route_Filter_Demo%' + - property: /project/projectId + operator: = + values: + - dadd3ab6-c0af-430c-8216-43d44f08c1c5 + pagination: + offset: 1 + limit: 2 + total: 10 + sort: + - property: /changeLog/updatedDateTime + direction: DESC + SearchRouteFiltersResponse: + value: + pagination: + offset: 1 + limit: 2 + total: 10 + next: /routeFilters?offset=3&limit=2 + previous: /routeFilters?offset=0&limit=2 + data: + - href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d + type: BGP_IPv4_PREFIX_FILTER + uuid: 695a8471-6595-4ac6-a2f4-b3d96ed3a59d + name: My_Route_Filter_Demo_1 + description: Test filter + state: PROVISIONING + notMatchedRuleAction: DENY + connectionsCount: 1 + project: + href: https://api.equinix.com/resourceManager/v1/projects/567 + projectId: dadd3ab6-c0af-430c-8216-43d44f08c1c5 + notifications: + - type: ALL + emails: + - test@equinix.com + changeLog: + createdBy: testuser + createdByEmail: testuser@equinix.com + createdByFullName: testuser testuser + createdDateTime: 2020-05-21T10:30:00Z + - href: https://api.equinix.com/fabric/v4/routeFilters/795a8471-6595-4ac6-a2f4-b3d96ed3a59d + type: BGP_IPv4_PREFIX_FILTER + uuid: 695a8471-6595-4ac6-a2f4-b3d96ed3a59d + name: My_Route_Filter_Demo_2 + description: Test filter + state: PROVISIONING + notMatchedRuleAction: DENY + connectionsCount: 0 + project: + href: https://api.equinix.com/resourceManager/v1/projects/567 + projectId: dadd3ab6-c0af-430c-8216-43d44f08c1c5 + notifications: + - type: ALL + emails: + - test@equinix.com + changeLog: + createdBy: testuser + createdByEmail: testuser@equinix.com + createdByFullName: testuser testuser + createdDateTime: 2020-05-21T10:30:00Z RouteFilterRulesGetAll: value: pagination: offset: 0 - limit: 20 + limit: 32 total: 2 next: null previous: null @@ -17057,6 +17290,12 @@ components: description: Test rule prefix: 192.168.0.0/24 prefixMatch: exact + RouteFilterRuleCreateBgpIpv6Prefix: + value: + name: Private-subnet-filter + description: Test rule + prefix: 2001:7a9::34f4:0:f3dd:1/126 + prefixMatch: orlonger RouteFilterRuleCreateBgpIpv4PrefixResponse: value: href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403 @@ -17076,20 +17315,61 @@ components: createdByEmail: testuser@equinix.com createdByFullName: testuser testuser createdDateTime: 2020-05-21T10:30:00Z + updatedBy: testuser + updatedByEmail: testuser@equinix.com + updatedByFullName: testuser testuser + updatedDateTime: 2020-05-21T10:30:00Z + RouteFilterRuleCreateBgpIpv6PrefixResponse: + value: + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403 + type: BGP_IPv6_PREFIX_FILTER_RULE + uuid: 9890d520-1579-4489-8003-154b34b8f403 + name: Private-subnet-filter + description: Test rule + change: + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/ff9653dc-88c5-47b5-b552-8a08d2f73f7e + type: BGP_IPv6_PREFIX_FILTER_RULE_CREATION + uuid: ff9653dc-88c5-47b5-b552-8a08d2f73f7e + action: PERMIT + prefix: 2001:7a9::34f4:0:f3dd:1/126 + prefixMatch: exact + changeLog: + createdBy: testuser + createdByEmail: testuser@equinix.com + createdByFullName: testuser testuser + createdDateTime: 2020-05-21T10:30:00Z + updatedBy: testuser + updatedByEmail: testuser@equinix.com + updatedByFullName: testuser testuser + updatedDateTime: 2020-05-21T10:30:00Z + "400_bad_request": + value: + - errorCode: EQ-3044013 + errorMessage: Invalid argument value passed + property: prefixMatch + correlationId: cebc3d33-9037-4a2b-a7af-0ad65602cdec UpdateRouteFilterRuleIPv4: value: type: BGP_IPv4_PREFIX_FILTER_RULE - name: Private-subnet-filter + name: Private-subnet-filter-update + description: Test rule + prefix: 192.168.0.0/24 + prefixMach: exact + action: PERMIT + UpdateRouteFilterRuleIPv6: + value: + type: BGP_IPv6_PREFIX_FILTER_RULE + name: Private-subnet-filter-update description: Test rule - prefix: 192.168.0.0/25 + prefix: 2001:7a9::34f4:0:f3dd:1/126 prefixMach: exact action: PERMIT - RouteFilterRuleIpv4ReplaceResponse: + RouteFilterRuleReplaceIpv4Response: value: href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403 type: BGP_IPv4_PREFIX_FILTER_RULE uuid: 9890d520-1579-4489-8003-154b34b8f403 - name: Private-subnet-filter + name: Private-subnet-filter-update description: Test rule prefixMach: exact action: PERMIT @@ -17107,6 +17387,29 @@ components: updatedByEmail: testuser@equinix.com updatedByFullName: testuser testuser updatedDateTime: 2020-05-21T10:30:00Z + RouteFilterRuleReplaceIpv6Response: + value: + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403 + type: BGP_IPv6_PREFIX_FILTER_RULE + uuid: 9890d520-1579-4489-8003-154b34b8f403 + name: Private-subnet-filter-update + description: Test rule + prefixMach: exact + action: PERMIT + change: + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/a25ca469-721a-4614-89a9-cdef287aa628 + type: BGP_IPv6_PREFIX_FILTER_RULE_UPDATE + uuid: a25ca469-721a-4614-89a9-cdef287aa628 + prefix: 2001:7a9::34f4:0:f3dd:1/128 + changeLog: + createdBy: testuser + createdByEmail: testuser@equinix.com + createdByFullName: testuser testuser + createdDateTime: 2020-05-21T10:30:00Z + updatedBy: testuser1 + updatedByEmail: testuser@equinix.com + updatedByFullName: testuser testuser + updatedDateTime: 2020-05-21T10:30:00Z RouteFilterRuleDeleteBgpIpv4PrefixResponse: value: href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403 @@ -17134,12 +17437,49 @@ components: deletedByEmail: testuser@equinix.com deletedByFullName: testuser testuser deletedDateTime: 2020-05-21T10:30:00Z + RouteFilterRuleDeleteBgpIpv6PrefixResponse: + value: + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403 + type: BGP_IPv6_PREFIX_FILTER_RULE + uuid: 9890d520-1579-4489-8003-154b34b8f403 + name: Private-subnet-filter + description: Test rule + change: + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/9890d520-1579-4489-8003-154b34b8f403/changes/e8528788-14d3-4a7b-a740-99b702067485 + type: BGP_IPv6_PREFIX_FILTER_RULE_DELETION + uuid: e8528788-14d3-4a7b-a740-99b702067485 + action: PERMIT?? + prefix: 2001:7a9::34f4:0:f3dd:1/126 + prefixMach: exact + changeLog: + createdBy: testuser + createdByEmail: testuser@equinix.com + createdByFullName: testuser testuser + createdDateTime: 2020-05-21T10:30:00Z + updatedBy: testuser1 + updatedByEmail: testuser@equinix.com + updatedByFullName: testuser testuser + updatedDateTime: 2020-05-21T10:30:00Z + deletedBy: testuser1 + deletedByEmail: testuser@equinix.com + deletedByFullName: testuser testuser + deletedDateTime: 2020-05-21T10:30:00Z "400_transient_filter": value: - - errorCode: EQ-3044015 + - errorCode: EQ-3044215 errorMessage: "Cannot delete Route Filter Rule, Route Filter transient state" correlationId: c82ff3bc-de07-47e5-b3ec-53a009d01515 details: "Cannot delete Route Filter Rule, Route filter is in transient state" + PatchRouteFilterRuleName: + value: + - op: replace + path: /name + value: test-route-filter-name-patch + PatchRouteFilterRulePrefix: + value: + - op: replace + path: /prefix + value: 192.168.0.0/30 PatchRouteFilterRulePrefixMatch: value: - op: replace @@ -17604,7 +17944,7 @@ components: pagination: offset: 0 limit: 20 - total: 2 + total: 4 data: - href: https://api.equinix.com/fabric/v4/routerPackages/LAB type: ROUTER_PACKAGE @@ -17644,6 +17984,44 @@ components: changeLog: createdDateTime: 2023-02-10T00:14:47Z updatedDateTime: 2023-02-10T00:14:47Z + - href: https://api.equinix.com/fabric/v4/routerPackages/ADVANCED + type: ROUTER_PACKAGE + code: ADVANCED + description: string + totalIPv4RoutesMax: 4000 + totalIPv6RoutesMax: 250 + staticIPv4RoutesMax: 150 + staticIPv6RoutesMax: 150 + naclsMax: 60 + naclRulesMax: 1000 + haSupported: true + routeFilterSupported: true + natType: STATIC_NAT + vcCountMax: 99999 + crCountMax: 3 + vcBandwidthMax: 50000 + changeLog: + createdDateTime: 2023-02-10T00:14:47Z + updatedDateTime: 2023-02-10T00:14:47Z + - href: https://api.equinix.com/fabric/v4/routerPackages/PREMIUM + type: ROUTER_PACKAGE + code: PREMIUM + description: string + totalIPv4RoutesMax: 10000 + totalIPv6RoutesMax: 500 + staticIPv4RoutesMax: 150 + staticIPv6RoutesMax: 150 + naclsMax: 60 + naclRulesMax: 1000 + haSupported: true + routeFilterSupported: true + natType: STATIC_NAT + vcCountMax: 10 + crCountMax: 3 + vcBandwidthMax: 50000 + changeLog: + createdDateTime: 2023-02-10T00:14:47Z + updatedDateTime: 2023-02-10T00:14:47Z healthResponse: value: href: null @@ -18223,6 +18601,17 @@ components: - type: ALL emails: - test@equinix.com + CreateLocalNetwork: + value: + type: EVPLAN + name: My-Network-1 + scope: LOCAL + project: + projectId: "1234567" + notifications: + - type: ALL + emails: + - test@equinix.com NetworkPostResponseExample: value: href: https://api.equinix.com/fabric/v4/networks/92dc376a-a932-43aa-a6a2-c806dedbd784 @@ -18985,6 +19374,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -19629,6 +20020,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -20277,6 +20670,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -20916,6 +21311,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -21695,6 +22092,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -22321,6 +22720,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -23443,6 +23844,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -24082,6 +24485,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -24766,6 +25171,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -25405,6 +25812,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -30123,19 +30532,15 @@ components: subInterface: unit: 200 name: name - type: VNI - additionalInfo: - - value: value - key: key - - value: value - key: key - connection: + vni: 20 + href: https://openapi-generator.tech + state: null + vlanTagMax: 200 + asset: bandwidth: 100 href: https://openapi-generator.tech type: EVPL_VC uuid: cd67f685-41b0-1b07-6de0-320a5c00abe - state: null - vlanTagMax: 200 serviceToken: bandwidth: 1000 href: https://openapi-generator.tech @@ -30165,19 +30570,15 @@ components: subInterface: unit: 200 name: name - type: VNI - additionalInfo: - - value: value - key: key - - value: value - key: key - connection: + vni: 20 + href: https://openapi-generator.tech + state: null + vlanTagMax: 200 + asset: bandwidth: 100 href: https://openapi-generator.tech type: EVPL_VC uuid: cd67f685-41b0-1b07-6de0-320a5c00abe - state: null - vlanTagMax: 200 serviceToken: bandwidth: 1000 href: https://openapi-generator.tech @@ -30412,9 +30813,11 @@ components: href: https://openapi-generator.tech type: BGP_IPv4_PREFIX_FILTER_UPDATE uuid: uuid - name: My-direct-route-1 description: description - project: null + rulesCount: 0 + project: + href: https://api.equinix.com/resourceManager/v1/projects/567 + projectId: 44f4c4f8-2f39-494e-838c-d8e640591be5 changelog: createdByEmail: john.smith@example.com deletedByFullName: John Smith @@ -30428,12 +30831,13 @@ components: deletedBy: johnsmith deletedByEmail: john.smith@example.com updatedDateTime: 2020-11-06T07:00:00Z - href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d - state: null type: BGP_IPv4_PREFIX_FILTER notMatchedRuleAction: ALLOW uuid: 695a8471-6595-4ac6-a2f4-b3d96ed3a59d connectionsCount: 0 + name: My-direct-route-1 + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d + state: null notifications: - emails: - emails @@ -30486,6 +30890,9 @@ components: connectionsCount: example: 0 type: integer + rulesCount: + example: 0 + type: integer project: $ref: '#/components/schemas/RouteFiltersData_project' notifications: @@ -30500,7 +30907,7 @@ components: RouteFiltersPatchRequest: description: Patch Route Filters request items: - $ref: '#/components/schemas/ConnectionChangeOperation' + $ref: '#/components/schemas/RouteFiltersPatchRequestItem' minItems: 1 type: array RouteFilterChangeDataResponse: @@ -30681,6 +31088,201 @@ components: $ref: '#/components/schemas/RouteFilterConnectionsData' type: array type: object + RouteFiltersSearchBase: + example: + filter: + and: + - values: + - values + - values + property: /type + operator: operator + - values: + - values + - values + property: /type + operator: operator + pagination: + next: next + total: 0 + offset: 0 + previous: previous + limit: 0 + sort: + - property: /changeLog/updatedDateTime + direction: DESC + - property: /changeLog/updatedDateTime + direction: DESC + properties: + filter: + $ref: '#/components/schemas/RouteFiltersSearchBase_filter' + pagination: + $ref: '#/components/schemas/Pagination' + sort: + items: + $ref: '#/components/schemas/SortItem' + type: array + type: object + RouteFiltersSearchFilterItem: + example: + values: + - values + - values + property: /type + operator: operator + properties: + property: + enum: + - /type + - /name + - /project/projectId + - /uuid + - /state + type: string + operator: + type: string + values: + items: + type: string + type: array + type: object + SortItem: + example: + property: /changeLog/updatedDateTime + direction: DESC + properties: + property: + default: /changeLog/updatedDateTime + description: Possible field names to use on sorting + enum: + - /type + - /uuid + - /name + - /project/projectId + - /state + - /notMatchedRuleAction + - /connectionsCount + - /changeLog/createdDateTime + - /changeLog/updatedDateTime + type: string + direction: + default: DESC + description: Sorting direction + enum: + - DESC + - ASC + type: string + type: object + RouteFiltersSearchResponse: + example: + pagination: + next: next + total: 0 + offset: 0 + previous: previous + limit: 0 + data: + - change: + href: https://openapi-generator.tech + type: BGP_IPv4_PREFIX_FILTER_UPDATE + uuid: uuid + description: description + rulesCount: 0 + project: + href: https://api.equinix.com/resourceManager/v1/projects/567 + projectId: 44f4c4f8-2f39-494e-838c-d8e640591be5 + changelog: + createdByEmail: john.smith@example.com + deletedByFullName: John Smith + updatedBy: johnsmith + createdBy: johnsmith + updatedByEmail: john.smith@example.com + createdByFullName: John Smith + createdDateTime: 2020-11-06T07:00:00Z + deletedDateTime: 2020-11-06T07:00:00Z + updatedByFullName: John Smith + deletedBy: johnsmith + deletedByEmail: john.smith@example.com + updatedDateTime: 2020-11-06T07:00:00Z + type: BGP_IPv4_PREFIX_FILTER + notMatchedRuleAction: ALLOW + uuid: 695a8471-6595-4ac6-a2f4-b3d96ed3a59d + connectionsCount: 0 + name: My-direct-route-1 + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d + state: null + notifications: + - emails: + - emails + - emails + sendInterval: sendInterval + registeredUsers: + - registeredUsers + - registeredUsers + type: BANDWIDTH_ALERT + - emails: + - emails + - emails + sendInterval: sendInterval + registeredUsers: + - registeredUsers + - registeredUsers + type: BANDWIDTH_ALERT + - change: + href: https://openapi-generator.tech + type: BGP_IPv4_PREFIX_FILTER_UPDATE + uuid: uuid + description: description + rulesCount: 0 + project: + href: https://api.equinix.com/resourceManager/v1/projects/567 + projectId: 44f4c4f8-2f39-494e-838c-d8e640591be5 + changelog: + createdByEmail: john.smith@example.com + deletedByFullName: John Smith + updatedBy: johnsmith + createdBy: johnsmith + updatedByEmail: john.smith@example.com + createdByFullName: John Smith + createdDateTime: 2020-11-06T07:00:00Z + deletedDateTime: 2020-11-06T07:00:00Z + updatedByFullName: John Smith + deletedBy: johnsmith + deletedByEmail: john.smith@example.com + updatedDateTime: 2020-11-06T07:00:00Z + type: BGP_IPv4_PREFIX_FILTER + notMatchedRuleAction: ALLOW + uuid: 695a8471-6595-4ac6-a2f4-b3d96ed3a59d + connectionsCount: 0 + name: My-direct-route-1 + href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d + state: null + notifications: + - emails: + - emails + - emails + sendInterval: sendInterval + registeredUsers: + - registeredUsers + - registeredUsers + type: BANDWIDTH_ALERT + - emails: + - emails + - emails + sendInterval: sendInterval + registeredUsers: + - registeredUsers + - registeredUsers + type: BANDWIDTH_ALERT + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + description: List of Route Filters + items: + $ref: '#/components/schemas/RouteFiltersData' + type: array + type: object GetRouteFilterRulesResponse: example: pagination: @@ -30713,6 +31315,7 @@ components: updatedDateTime: 2020-11-06T07:00:00Z prefixMatch: exact href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/65b025ef-022b-4180-85cf-82cfc1ab655b + state: null type: BGP_IPv4_PREFIX_FILTER_RULE uuid: 65b025ef-022b-4180-85cf-82cfc1ab655b - prefix: 192.168.0.0/24 @@ -30738,6 +31341,7 @@ components: updatedDateTime: 2020-11-06T07:00:00Z prefixMatch: exact href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/65b025ef-022b-4180-85cf-82cfc1ab655b + state: null type: BGP_IPv4_PREFIX_FILTER_RULE uuid: 65b025ef-022b-4180-85cf-82cfc1ab655b properties: @@ -30795,6 +31399,7 @@ components: updatedDateTime: 2020-11-06T07:00:00Z prefixMatch: exact href: https://api.equinix.com/fabric/v4/routeFilters/695a8471-6595-4ac6-a2f4-b3d96ed3a59d/routeFilterRules/65b025ef-022b-4180-85cf-82cfc1ab655b + state: null type: BGP_IPv4_PREFIX_FILTER_RULE uuid: 65b025ef-022b-4180-85cf-82cfc1ab655b properties: @@ -30820,6 +31425,8 @@ components: description: description: Customer-provided Route Filter Rule description type: string + state: + $ref: '#/components/schemas/RouteFilterRuleState' prefixMatch: default: orlonger description: prefix matching operator @@ -30845,7 +31452,7 @@ components: RouteFilterRulesPatchRequest: description: Patch Route Filters Rule request items: - $ref: '#/components/schemas/RouteFilterChangePrefixMatch' + $ref: '#/components/schemas/RouteFilterRulesPatchRequestItem' minItems: 1 type: array RouteFilterRulesChangeDataResponse: @@ -31683,7 +32290,7 @@ components: description: Router package code enum: - LAB - - BASIC + - ADVANCED - STANDARD - PREMIUM type: string @@ -31925,6 +32532,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -32564,6 +33173,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -33248,6 +33859,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -33887,6 +34500,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -34864,6 +35479,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -35503,6 +36120,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -36187,6 +36806,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -36826,6 +37447,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -37534,51 +38157,20 @@ components: priority1: 0 logAnnounceInterval: 0 package: - pagination: - next: next - total: 0 - offset: 0 - previous: previous - limit: 0 - data: - - staticIPv6RoutesMax: 0 - naclRulesMax: 5 - code: LAB - natType: STATIC_NAT - description: description - crCountMax: 3 - changeLog: - createdDateTime: 2020-11-06T07:00:00Z - updatedDateTime: 2020-11-06T07:00:00Z - type: ROUTER_PACKAGE - totalIPv4RoutesMax: 50 - haSupported: true - staticIPv4RoutesMax: 3 - vcBandwidthMax: 50 - naclsMax: 2 - totalIPv6RoutesMax: 50 - href: https://api.equinix.com/fabric/v4/routerPackages/LAB - vcCountMax: 10 - routeFilterSupported: true - - staticIPv6RoutesMax: 0 - naclRulesMax: 5 - code: LAB - natType: STATIC_NAT - description: description - crCountMax: 3 - changeLog: - createdDateTime: 2020-11-06T07:00:00Z - updatedDateTime: 2020-11-06T07:00:00Z - type: ROUTER_PACKAGE - totalIPv4RoutesMax: 50 - haSupported: true - staticIPv4RoutesMax: 3 - vcBandwidthMax: 50 - naclsMax: 2 - totalIPv6RoutesMax: 50 - href: https://api.equinix.com/fabric/v4/routerPackages/LAB - vcCountMax: 10 - routeFilterSupported: true + href: https://api.equinix.com/fabric/v4/timeServicePackage/NTP_STANDARD + code: NTP_STANDARD + type: TIME_SERVICE_PACKAGE + bandwidth: 10 + accuracyUnit: microseconds + accuracySla: 50 + accuracyAvgMin: 1 + accuracyAvgMax: 10 + clientsPerSecondMax: 100 + redundancySupported: true + multiSubnetSupported: true + changeLog: + createdDateTime: 2023-05-16T07:50:49.749Z + updatedDateTime: 2023-05-17T07:50:49.749Z ipv4: primary: 10.0.0.1 secondary: 10.0.0.2 @@ -37630,7 +38222,7 @@ components: - DEPROVISIONING type: string package: - $ref: '#/components/schemas/PackageResponse' + $ref: '#/components/schemas/precisionTimePackageResponse' connections: description: fabric l2 connections used for the ept service items: @@ -37697,7 +38289,7 @@ components: description: type: string package: - $ref: '#/components/schemas/packageRequest' + $ref: '#/components/schemas/precisionTimePackageRequest' connections: items: $ref: '#/components/schemas/fabricConnectionUuid' @@ -37716,6 +38308,68 @@ components: - type title: precisionTimeServiceRequest type: object + precisionTimePackageResponse: + description: EPT Service Package Information + example: + href: https://api.equinix.com/fabric/v4/timeServicePackage/NTP_STANDARD + code: NTP_STANDARD + type: TIME_SERVICE_PACKAGE + bandwidth: 10 + accuracyUnit: microseconds + accuracySla: 50 + accuracyAvgMin: 1 + accuracyAvgMax: 10 + clientsPerSecondMax: 100 + redundancySupported: true + multiSubnetSupported: true + changeLog: + createdDateTime: 2023-05-16T07:50:49.749Z + updatedDateTime: 2023-05-17T07:50:49.749Z + properties: + href: + format: uri + type: string + code: + enum: + - NTP_STANDARD + - NTP_ENTERPRISE + - PTP_STANDARD + - PTP_ENTERPRISE + type: string + type: + enum: + - TIME_SERVICE_PACKAGE + type: string + bandwidth: + example: 10 + type: integer + clientsPerSecondMax: + example: 100 + type: integer + redundancySupported: + example: true + type: boolean + multiSubnetSupported: + example: true + type: boolean + accuracyUnit: + example: microseconds + type: string + accuracySla: + example: 50 + type: integer + accuracyAvgMin: + example: 1 + type: integer + accuracyAvgMax: + example: 10 + type: integer + changelog: + $ref: '#/components/schemas/Changelog' + required: + - code + title: precisionTimePackageRespose + type: object ConnectionType: description: Connection type enum: @@ -37728,6 +38382,7 @@ components: - EVPLAN_VC - EPLAN_VC - IPWAN_VC + - IA_VC type: string Order: example: @@ -37909,6 +38564,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -38874,6 +39531,8 @@ components: orgId: 6 accessPoint: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -39797,6 +40456,7 @@ components: enum: - L2_PROFILE - L3_PROFILE + - IA_PROFILE example: L2_PROFILE type: string ServiceProfileVisibilityEnum: @@ -40320,19 +40980,15 @@ components: subInterface: unit: 200 name: name - type: VNI - additionalInfo: - - value: value - key: key - - value: value - key: key - connection: + vni: 20 + href: https://openapi-generator.tech + state: null + vlanTagMax: 200 + asset: bandwidth: 100 href: https://openapi-generator.tech type: EVPL_VC uuid: cd67f685-41b0-1b07-6de0-320a5c00abe - state: null - vlanTagMax: 200 serviceToken: bandwidth: 1000 href: https://openapi-generator.tech @@ -40340,6 +40996,11 @@ components: uuid: cd67f685-41b0-1b07-6de0-0320a5c00abe vlanCTagMax: 200 properties: + href: + description: LinkProtocol URI + format: uri + readOnly: true + type: string uuid: description: Equinix-assigned network identifier example: 92dc376a-a932-43aa-a6a2-c806dedbd784 @@ -40352,6 +41013,9 @@ components: vlanTag: example: 20 type: integer + vni: + example: 20 + type: integer vlanTagMin: example: 20 type: integer @@ -40372,11 +41036,7 @@ components: type: integer subInterface: $ref: '#/components/schemas/SubInterface' - additionalInfo: - items: - $ref: '#/components/schemas/AdditionalInfo' - type: array - connection: + asset: $ref: '#/components/schemas/LinkProtocolConnection' serviceToken: $ref: '#/components/schemas/LinkProtocolServiceToken' @@ -40435,6 +41095,29 @@ components: - type - uuid type: object + RouteFiltersPatchRequestItem: + description: Route Filter change operation data + example: + op: replace + path: /name + value: "{}" + properties: + op: + description: Handy shortcut for operation name + example: replace + type: string + path: + description: path to change + example: /name + type: string + value: + description: new value for updated parameter + type: object + required: + - op + - path + - value + type: object RouteFiltersChangeOperation: description: Route Filter change operation data example: @@ -40505,6 +41188,17 @@ components: example: connection-1 type: string type: object + RouteFilterRuleState: + description: Route Filter Rule status + enum: + - PROVISIONING + - REPROVISIONING + - DEPROVISIONING + - PROVISIONED + - DEPROVISIONED + - NOT_PROVISIONED + - NOT_DEPROVISIONED + type: string RouteFilterRulesChange: description: Current state of latest Route Filter Rule change example: @@ -40533,7 +41227,7 @@ components: - type - uuid type: object - RouteFilterChangePrefixMatch: + RouteFilterRulesPatchRequestItem: description: Route Filter Rule change operation data example: op: replace @@ -40641,7 +41335,7 @@ components: description: Cloud Router package code enum: - LAB - - BASIC + - ADVANCED - STANDARD - PREMIUM example: LAB @@ -40809,7 +41503,7 @@ components: description: Cloud Router package code enum: - LAB - - BASIC + - ADVANCED - STANDARD - PREMIUM example: LAB @@ -40858,6 +41552,7 @@ components: enum: - REGIONAL - GLOBAL + - LOCAL type: string NetworkState: description: Network status @@ -41061,7 +41756,7 @@ components: ptp: $ref: '#/components/schemas/ptpAdvanceConfiguration' type: object - packageRequest: + precisionTimePackageRequest: description: EPT Package Request example: code: NTP_STANDARD @@ -41078,7 +41773,7 @@ components: type: string required: - code - title: package + title: precisionTimePackageRequest type: object ConnectionPriority: description: Connection priority in redundancy group @@ -41090,6 +41785,8 @@ components: description: Access point object example: providerConnectionId: providerConnectionId + interconnection: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 profile: visibility: null customFields: @@ -41627,6 +42324,8 @@ components: type: string virtualNetwork: $ref: '#/components/schemas/VirtualNetwork' + interconnection: + $ref: '#/components/schemas/MetalInterconnection' type: object ConnectionCompanyProfile: description: Connection Company Profile Details @@ -41952,23 +42651,14 @@ components: - UNTAGGED - DOT1Q - QINQ - - EVPN_VXLAN - - UNTAGGEDEPL + - VXLAN type: string SubInterface: description: Sub Interface information example: unit: 200 name: name - type: VNI properties: - type: - description: type of connection vlan - enum: - - VNI - - VXLAN - - VLAN - type: string name: description: name of subinterafce of a port type: string @@ -41976,19 +42666,6 @@ components: example: 200 type: integer type: object - AdditionalInfo: - description: Additional information - example: - value: value - key: key - properties: - key: - description: Key - type: string - value: - description: Value - type: string - type: object LinkProtocolConnection: description: Connection details of Link Protocol example: @@ -42721,6 +43398,16 @@ components: format: uuid type: string type: object + MetalInterconnection: + description: Metal Interconnection + example: + uuid: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 + properties: + uuid: + description: Equinix Metal Interconnection + format: uuid + type: string + type: object VirtualConnectionPriceConnectionType: description: Virtual Connection type enum: @@ -42733,6 +43420,7 @@ components: - EVPLAN_VC - EPLAN_VC - IPWAN_VC + - IA_VC type: string VirtualConnectionPriceASide: example: @@ -42922,7 +43610,7 @@ components: description: Cloud Router code enum: - LAB - - BASIC + - ADVANCED - STANDARD - PREMIUM type: string @@ -43090,6 +43778,42 @@ components: reason: type: string type: object + RouteFiltersData_project: + example: + href: https://api.equinix.com/resourceManager/v1/projects/567 + projectId: 44f4c4f8-2f39-494e-838c-d8e640591be5 + properties: + projectId: + description: Subscriber-assigned project ID + example: 44f4c4f8-2f39-494e-838c-d8e640591be5 + type: string + href: + description: Project URI + example: https://api.equinix.com/resourceManager/v1/projects/567 + format: uri + type: string + required: + - projectId + type: object + RouteFiltersSearchBase_filter: + example: + and: + - values: + - values + - values + property: /type + operator: operator + - values: + - values + - values + property: /type + operator: operator + properties: + and: + items: + $ref: '#/components/schemas/RouteFiltersSearchFilterItem' + type: array + type: object ValidateRequest_filter_and: example: values: @@ -43298,18 +44022,6 @@ components: bridge: $ref: '#/components/schemas/VirtualConnectionPriceZSide_accessPoint_bridge' type: object - RouteFiltersData_project_allOf: - properties: - href: - description: Project URI - example: https://api.equinix.com/resourceManager/v1/projects/567 - format: uri - type: string - type: object - RouteFiltersData_project: - allOf: - - $ref: '#/components/schemas/Project' - - $ref: '#/components/schemas/RouteFiltersData_project_allOf' Network_allOf: properties: href: diff --git a/equinix-openapi-fabric/docs/AccessPoint.md b/equinix-openapi-fabric/docs/AccessPoint.md index 6b2e5c16..55e79dd4 100644 --- a/equinix-openapi-fabric/docs/AccessPoint.md +++ b/equinix-openapi-fabric/docs/AccessPoint.md @@ -23,6 +23,7 @@ Access point object |**authenticationKey** | **String** | Access point authentication key | [optional] | |**providerConnectionId** | **String** | Provider assigned Connection Id | [optional] | |**virtualNetwork** | [**VirtualNetwork**](VirtualNetwork.md) | | [optional] | +|**interconnection** | [**MetalInterconnection**](MetalInterconnection.md) | | [optional] | diff --git a/equinix-openapi-fabric/docs/AdditionalInfo.md b/equinix-openapi-fabric/docs/AdditionalInfo.md deleted file mode 100644 index b3940e0c..00000000 --- a/equinix-openapi-fabric/docs/AdditionalInfo.md +++ /dev/null @@ -1,15 +0,0 @@ - - -# AdditionalInfo - -Additional information - -## Properties - -| Name | Type | Description | Notes | -|------------ | ------------- | ------------- | -------------| -|**key** | **String** | Key | [optional] | -|**value** | **String** | Value | [optional] | - - - diff --git a/equinix-openapi-fabric/docs/CloudRouterPackageType.md b/equinix-openapi-fabric/docs/CloudRouterPackageType.md index 5246668c..7aaac78f 100644 --- a/equinix-openapi-fabric/docs/CloudRouterPackageType.md +++ b/equinix-openapi-fabric/docs/CloudRouterPackageType.md @@ -27,7 +27,7 @@ Fabric Cloud Router Package Type | Name | Value | |---- | -----| | LAB | "LAB" | -| BASIC | "BASIC" | +| ADVANCED | "ADVANCED" | | STANDARD | "STANDARD" | | PREMIUM | "PREMIUM" | diff --git a/equinix-openapi-fabric/docs/CloudRoutersApi.md b/equinix-openapi-fabric/docs/CloudRoutersApi.md index 092a087e..6f13c763 100644 --- a/equinix-openapi-fabric/docs/CloudRoutersApi.md +++ b/equinix-openapi-fabric/docs/CloudRoutersApi.md @@ -427,7 +427,7 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **routerPackageCode** | [**RouterPackageCode**](.md)| Equinix-assigned Cloud Router package identifier | [enum: LAB, BASIC, STANDARD, PREMIUM] | +| **routerPackageCode** | [**RouterPackageCode**](.md)| Equinix-assigned Cloud Router package identifier | [enum: LAB, ADVANCED, STANDARD, PREMIUM] | ### Return type diff --git a/equinix-openapi-fabric/docs/Code.md b/equinix-openapi-fabric/docs/Code.md index f2dcad25..885f6fbd 100644 --- a/equinix-openapi-fabric/docs/Code.md +++ b/equinix-openapi-fabric/docs/Code.md @@ -7,7 +7,7 @@ * `LAB` (value: `"LAB"`) -* `BASIC` (value: `"BASIC"`) +* `ADVANCED` (value: `"ADVANCED"`) * `STANDARD` (value: `"STANDARD"`) diff --git a/equinix-openapi-fabric/docs/ConnectionType.md b/equinix-openapi-fabric/docs/ConnectionType.md index b08cb10b..f934a0c3 100644 --- a/equinix-openapi-fabric/docs/ConnectionType.md +++ b/equinix-openapi-fabric/docs/ConnectionType.md @@ -23,5 +23,7 @@ * `IPWAN_VC` (value: `"IPWAN_VC"`) +* `IA_VC` (value: `"IA_VC"`) + diff --git a/equinix-openapi-fabric/docs/FabricCloudRouterCode.md b/equinix-openapi-fabric/docs/FabricCloudRouterCode.md index 9059c4a0..cf985d0a 100644 --- a/equinix-openapi-fabric/docs/FabricCloudRouterCode.md +++ b/equinix-openapi-fabric/docs/FabricCloudRouterCode.md @@ -7,7 +7,7 @@ * `LAB` (value: `"LAB"`) -* `BASIC` (value: `"BASIC"`) +* `ADVANCED` (value: `"ADVANCED"`) * `STANDARD` (value: `"STANDARD"`) diff --git a/equinix-openapi-fabric/docs/LinkProtocolRequestType.md b/equinix-openapi-fabric/docs/LinkProtocolRequestType.md index 41b08202..25597498 100644 --- a/equinix-openapi-fabric/docs/LinkProtocolRequestType.md +++ b/equinix-openapi-fabric/docs/LinkProtocolRequestType.md @@ -11,9 +11,7 @@ * `QINQ` (value: `"QINQ"`) -* `EVPN_VXLAN` (value: `"EVPN_VXLAN"`) - -* `UNTAGGEDEPL` (value: `"UNTAGGEDEPL"`) +* `VXLAN` (value: `"VXLAN"`) diff --git a/equinix-openapi-fabric/docs/LinkProtocolResponse.md b/equinix-openapi-fabric/docs/LinkProtocolResponse.md index 879f71dc..8a517d4d 100644 --- a/equinix-openapi-fabric/docs/LinkProtocolResponse.md +++ b/equinix-openapi-fabric/docs/LinkProtocolResponse.md @@ -8,10 +8,12 @@ Link Protocol response | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| +|**href** | **URI** | LinkProtocol URI | [optional] [readonly] | |**uuid** | **UUID** | Equinix-assigned network identifier | [optional] | |**state** | **LinkProtocolState** | | [optional] | |**type** | **LinkProtocolRequestType** | | [optional] | |**vlanTag** | **Integer** | | [optional] | +|**vni** | **Integer** | | [optional] | |**vlanTagMin** | **Integer** | | [optional] | |**vlanTagMax** | **Integer** | | [optional] | |**vlanSTag** | **Integer** | | [optional] | @@ -19,8 +21,7 @@ Link Protocol response |**vlanCTagMin** | **Integer** | | [optional] | |**vlanCTagMax** | **Integer** | | [optional] | |**subInterface** | [**SubInterface**](SubInterface.md) | | [optional] | -|**additionalInfo** | [**List<AdditionalInfo>**](AdditionalInfo.md) | | [optional] | -|**connection** | [**LinkProtocolConnection**](LinkProtocolConnection.md) | | [optional] | +|**asset** | [**LinkProtocolConnection**](LinkProtocolConnection.md) | | [optional] | |**serviceToken** | [**LinkProtocolServiceToken**](LinkProtocolServiceToken.md) | | [optional] | |**changeLog** | [**Changelog**](Changelog.md) | | [optional] | diff --git a/equinix-openapi-fabric/docs/RouteFiltersDataProjectAllOf.md b/equinix-openapi-fabric/docs/MetalInterconnection.md similarity index 51% rename from equinix-openapi-fabric/docs/RouteFiltersDataProjectAllOf.md rename to equinix-openapi-fabric/docs/MetalInterconnection.md index 527ad650..1448946e 100644 --- a/equinix-openapi-fabric/docs/RouteFiltersDataProjectAllOf.md +++ b/equinix-openapi-fabric/docs/MetalInterconnection.md @@ -1,13 +1,14 @@ -# RouteFiltersDataProjectAllOf +# MetalInterconnection +Metal Interconnection ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**href** | **URI** | Project URI | [optional] | +|**uuid** | **UUID** | Equinix Metal Interconnection | [optional] | diff --git a/equinix-openapi-fabric/docs/NetworkScope.md b/equinix-openapi-fabric/docs/NetworkScope.md index 4d5a063b..832cb6e3 100644 --- a/equinix-openapi-fabric/docs/NetworkScope.md +++ b/equinix-openapi-fabric/docs/NetworkScope.md @@ -9,5 +9,7 @@ * `GLOBAL` (value: `"GLOBAL"`) +* `LOCAL` (value: `"LOCAL"`) + diff --git a/equinix-openapi-fabric/docs/PackageRequest.md b/equinix-openapi-fabric/docs/PrecisionTimePackageRequest.md similarity index 93% rename from equinix-openapi-fabric/docs/PackageRequest.md rename to equinix-openapi-fabric/docs/PrecisionTimePackageRequest.md index c30a64a0..cab370c1 100644 --- a/equinix-openapi-fabric/docs/PackageRequest.md +++ b/equinix-openapi-fabric/docs/PrecisionTimePackageRequest.md @@ -1,6 +1,6 @@ -# PackageRequest +# PrecisionTimePackageRequest EPT Package Request diff --git a/equinix-openapi-fabric/docs/PrecisionTimePackageResponse.md b/equinix-openapi-fabric/docs/PrecisionTimePackageResponse.md new file mode 100644 index 00000000..baf9dc19 --- /dev/null +++ b/equinix-openapi-fabric/docs/PrecisionTimePackageResponse.md @@ -0,0 +1,44 @@ + + +# PrecisionTimePackageResponse + +EPT Service Package Information + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**href** | **URI** | | [optional] | +|**code** | [**CodeEnum**](#CodeEnum) | | | +|**type** | [**TypeEnum**](#TypeEnum) | | [optional] | +|**bandwidth** | **Integer** | | [optional] | +|**clientsPerSecondMax** | **Integer** | | [optional] | +|**redundancySupported** | **Boolean** | | [optional] | +|**multiSubnetSupported** | **Boolean** | | [optional] | +|**accuracyUnit** | **String** | | [optional] | +|**accuracySla** | **Integer** | | [optional] | +|**accuracyAvgMin** | **Integer** | | [optional] | +|**accuracyAvgMax** | **Integer** | | [optional] | +|**changelog** | [**Changelog**](Changelog.md) | | [optional] | + + + +## Enum: CodeEnum + +| Name | Value | +|---- | -----| +| NTP_STANDARD | "NTP_STANDARD" | +| NTP_ENTERPRISE | "NTP_ENTERPRISE" | +| PTP_STANDARD | "PTP_STANDARD" | +| PTP_ENTERPRISE | "PTP_ENTERPRISE" | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| TIME_SERVICE_PACKAGE | "TIME_SERVICE_PACKAGE" | + + + diff --git a/equinix-openapi-fabric/docs/PrecisionTimeServiceCreateResponse.md b/equinix-openapi-fabric/docs/PrecisionTimeServiceCreateResponse.md index 13deff4f..21e64ae6 100644 --- a/equinix-openapi-fabric/docs/PrecisionTimeServiceCreateResponse.md +++ b/equinix-openapi-fabric/docs/PrecisionTimeServiceCreateResponse.md @@ -14,7 +14,7 @@ EPT service instance |**name** | **String** | name of the ept service | [optional] | |**description** | **String** | | [optional] | |**state** | [**StateEnum**](#StateEnum) | indicate service state | | -|**_package** | [**PackageResponse**](PackageResponse.md) | | | +|**_package** | [**PrecisionTimePackageResponse**](PrecisionTimePackageResponse.md) | | | |**connections** | [**Set<FabricConnectionUuid>**](FabricConnectionUuid.md) | fabric l2 connections used for the ept service | [optional] | |**ipv4** | [**Ipv4**](Ipv4.md) | | | |**account** | [**Account**](Account.md) | | [optional] | diff --git a/equinix-openapi-fabric/docs/PrecisionTimeServiceRequest.md b/equinix-openapi-fabric/docs/PrecisionTimeServiceRequest.md index c126ee56..19a8f16f 100644 --- a/equinix-openapi-fabric/docs/PrecisionTimeServiceRequest.md +++ b/equinix-openapi-fabric/docs/PrecisionTimeServiceRequest.md @@ -11,7 +11,7 @@ EPT service instance |**type** | [**TypeEnum**](#TypeEnum) | Indicate the entity is EPT service | | |**name** | **String** | | | |**description** | **String** | | [optional] | -|**_package** | [**PackageRequest**](PackageRequest.md) | | | +|**_package** | [**PrecisionTimePackageRequest**](PrecisionTimePackageRequest.md) | | | |**connections** | [**List<FabricConnectionUuid>**](FabricConnectionUuid.md) | | | |**ipv4** | [**Ipv4**](Ipv4.md) | | | |**advanceConfiguration** | [**AdvanceConfiguration**](AdvanceConfiguration.md) | | [optional] | diff --git a/equinix-openapi-fabric/docs/RouteFilterRuleState.md b/equinix-openapi-fabric/docs/RouteFilterRuleState.md new file mode 100644 index 00000000..5fc9bf67 --- /dev/null +++ b/equinix-openapi-fabric/docs/RouteFilterRuleState.md @@ -0,0 +1,23 @@ + + +# RouteFilterRuleState + +## Enum + + +* `PROVISIONING` (value: `"PROVISIONING"`) + +* `REPROVISIONING` (value: `"REPROVISIONING"`) + +* `DEPROVISIONING` (value: `"DEPROVISIONING"`) + +* `PROVISIONED` (value: `"PROVISIONED"`) + +* `DEPROVISIONED` (value: `"DEPROVISIONED"`) + +* `NOT_PROVISIONED` (value: `"NOT_PROVISIONED"`) + +* `NOT_DEPROVISIONED` (value: `"NOT_DEPROVISIONED"`) + + + diff --git a/equinix-openapi-fabric/docs/RouteFilterRulesApi.md b/equinix-openapi-fabric/docs/RouteFilterRulesApi.md index a24aa19d..a04fec49 100644 --- a/equinix-openapi-fabric/docs/RouteFilterRulesApi.md +++ b/equinix-openapi-fabric/docs/RouteFilterRulesApi.md @@ -158,6 +158,12 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **202** | Successful operation | - | +| **400** | Resource not found | - | +| **401** | Unauthorized | - | +| **403** | Forbidden | - | +| **404** | Not Found | - | +| **415** | Unsupported Media Type | - | +| **500** | Internal server error | - | # **deleteRouteFilterRuleByUuid** @@ -533,7 +539,7 @@ public class Example { | Status code | Description | Response headers | |-------------|-------------|------------------| | **200** | Successful operation | - | -| **400** | Bad request | - | +| **400** | Resource not found | - | | **401** | Unauthorized | - | | **403** | Forbidden | - | | **404** | Route Filter Rule ID Not Found | - | @@ -541,7 +547,7 @@ public class Example { # **patchRouteFilterRuleByUuid** -> RouteFiltersData patchRouteFilterRuleByUuid(routeFilterId, routeFilterRuleId, routeFilterChangePrefixMatch) +> RouteFilterRulesData patchRouteFilterRuleByUuid(routeFilterId, routeFilterRuleId, routeFilterRulesPatchRequestItem) PatchRFilterRule @@ -569,9 +575,9 @@ public class Example { RouteFilterRulesApi apiInstance = new RouteFilterRulesApi(defaultClient); String routeFilterId = "routeFilterId_example"; // String | Route Filters Id String routeFilterRuleId = "routeFilterRuleId_example"; // String | Route Filter Rules Id - List routeFilterChangePrefixMatch = Arrays.asList(); // List | + List routeFilterRulesPatchRequestItem = Arrays.asList(); // List | try { - RouteFiltersData result = apiInstance.patchRouteFilterRuleByUuid(routeFilterId, routeFilterRuleId, routeFilterChangePrefixMatch); + RouteFilterRulesData result = apiInstance.patchRouteFilterRuleByUuid(routeFilterId, routeFilterRuleId, routeFilterRulesPatchRequestItem); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling RouteFilterRulesApi#patchRouteFilterRuleByUuid"); @@ -590,11 +596,11 @@ public class Example { |------------- | ------------- | ------------- | -------------| | **routeFilterId** | **String**| Route Filters Id | | | **routeFilterRuleId** | **String**| Route Filter Rules Id | | -| **routeFilterChangePrefixMatch** | [**List<RouteFilterChangePrefixMatch>**](RouteFilterChangePrefixMatch.md)| | | +| **routeFilterRulesPatchRequestItem** | [**List<RouteFilterRulesPatchRequestItem>**](RouteFilterRulesPatchRequestItem.md)| | | ### Return type -[**RouteFiltersData**](RouteFiltersData.md) +[**RouteFilterRulesData**](RouteFilterRulesData.md) ### Authorization diff --git a/equinix-openapi-fabric/docs/RouteFilterRulesData.md b/equinix-openapi-fabric/docs/RouteFilterRulesData.md index b67140ad..c5262cb8 100644 --- a/equinix-openapi-fabric/docs/RouteFilterRulesData.md +++ b/equinix-openapi-fabric/docs/RouteFilterRulesData.md @@ -12,6 +12,7 @@ |**uuid** | **UUID** | Route Filter Rule identifier | [optional] | |**name** | **String** | | [optional] | |**description** | **String** | Customer-provided Route Filter Rule description | [optional] | +|**state** | **RouteFilterRuleState** | | [optional] | |**prefixMatch** | **String** | prefix matching operator | [optional] | |**change** | [**RouteFilterRulesChange**](RouteFilterRulesChange.md) | | [optional] | |**action** | [**ActionEnum**](#ActionEnum) | | [optional] | diff --git a/equinix-openapi-fabric/docs/RouteFilterChangePrefixMatch.md b/equinix-openapi-fabric/docs/RouteFilterRulesPatchRequestItem.md similarity index 90% rename from equinix-openapi-fabric/docs/RouteFilterChangePrefixMatch.md rename to equinix-openapi-fabric/docs/RouteFilterRulesPatchRequestItem.md index 7b89ba82..2ddd1707 100644 --- a/equinix-openapi-fabric/docs/RouteFilterChangePrefixMatch.md +++ b/equinix-openapi-fabric/docs/RouteFilterRulesPatchRequestItem.md @@ -1,6 +1,6 @@ -# RouteFilterChangePrefixMatch +# RouteFilterRulesPatchRequestItem Route Filter Rule change operation data diff --git a/equinix-openapi-fabric/docs/RouteFiltersApi.md b/equinix-openapi-fabric/docs/RouteFiltersApi.md index 4dd26f15..f2e77d06 100644 --- a/equinix-openapi-fabric/docs/RouteFiltersApi.md +++ b/equinix-openapi-fabric/docs/RouteFiltersApi.md @@ -15,7 +15,7 @@ All URIs are relative to *https://api.equinix.com* | [**getRouteFilterChanges**](RouteFiltersApi.md#getRouteFilterChanges) | **GET** /fabric/v4/routeFilters/{routeFilterId}/changes | Get All Changes | | [**getRouteFilterConnections**](RouteFiltersApi.md#getRouteFilterConnections) | **GET** /fabric/v4/routeFilters/{routeFilterId}/connections | Get Connections | | [**patchRouteFilterByUuid**](RouteFiltersApi.md#patchRouteFilterByUuid) | **PATCH** /fabric/v4/routeFilters/{routeFilterId} | Patch Route Filter | -| [**replaceRouteFilterByUuid**](RouteFiltersApi.md#replaceRouteFilterByUuid) | **PUT** /fabric/v4/routeFilters/{routeFilterId} | Replace Route Filter | +| [**searchRouteFilters**](RouteFiltersApi.md#searchRouteFilters) | **POST** /fabric/v4/routeFilters/search | Search Route Filters | @@ -762,7 +762,7 @@ public class Example { # **patchRouteFilterByUuid** -> RouteFiltersData patchRouteFilterByUuid(routeFilterId, connectionChangeOperation) +> RouteFiltersData patchRouteFilterByUuid(routeFilterId, routeFiltersPatchRequestItem) Patch Route Filter @@ -789,9 +789,9 @@ public class Example { RouteFiltersApi apiInstance = new RouteFiltersApi(defaultClient); String routeFilterId = "routeFilterId_example"; // String | Route Filters Id - List connectionChangeOperation = Arrays.asList(); // List | + List routeFiltersPatchRequestItem = Arrays.asList(); // List | try { - RouteFiltersData result = apiInstance.patchRouteFilterByUuid(routeFilterId, connectionChangeOperation); + RouteFiltersData result = apiInstance.patchRouteFilterByUuid(routeFilterId, routeFiltersPatchRequestItem); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling RouteFiltersApi#patchRouteFilterByUuid"); @@ -809,7 +809,7 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| | **routeFilterId** | **String**| Route Filters Id | | -| **connectionChangeOperation** | [**List<ConnectionChangeOperation>**](ConnectionChangeOperation.md)| | | +| **routeFiltersPatchRequestItem** | [**List<RouteFiltersPatchRequestItem>**](RouteFiltersPatchRequestItem.md)| | | ### Return type @@ -835,13 +835,13 @@ public class Example { | **415** | Unsupported Media Type | - | | **500** | Internal server error | - | - -# **replaceRouteFilterByUuid** -> RouteFiltersData replaceRouteFilterByUuid(routeFilterId, routeFiltersBase) + +# **searchRouteFilters** +> RouteFiltersSearchResponse searchRouteFilters(routeFiltersSearchBase) -Replace Route Filter +Search Route Filters -This API provides capability to replace a Route Filter completely +This API provides capability to search Route Filters ### Example ```java @@ -863,13 +863,12 @@ public class Example { BearerAuth.setBearerToken("BEARER TOKEN"); RouteFiltersApi apiInstance = new RouteFiltersApi(defaultClient); - String routeFilterId = "routeFilterId_example"; // String | Route Filters Id - RouteFiltersBase routeFiltersBase = new RouteFiltersBase(); // RouteFiltersBase | + RouteFiltersSearchBase routeFiltersSearchBase = new RouteFiltersSearchBase(); // RouteFiltersSearchBase | try { - RouteFiltersData result = apiInstance.replaceRouteFilterByUuid(routeFilterId, routeFiltersBase); + RouteFiltersSearchResponse result = apiInstance.searchRouteFilters(routeFiltersSearchBase); System.out.println(result); } catch (ApiException e) { - System.err.println("Exception when calling RouteFiltersApi#replaceRouteFilterByUuid"); + System.err.println("Exception when calling RouteFiltersApi#searchRouteFilters"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); @@ -883,12 +882,11 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| -| **routeFilterId** | **String**| Route Filters Id | | -| **routeFiltersBase** | [**RouteFiltersBase**](RouteFiltersBase.md)| | | +| **routeFiltersSearchBase** | [**RouteFiltersSearchBase**](RouteFiltersSearchBase.md)| | | ### Return type -[**RouteFiltersData**](RouteFiltersData.md) +[**RouteFiltersSearchResponse**](RouteFiltersSearchResponse.md) ### Authorization @@ -902,7 +900,7 @@ public class Example { ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| -| **202** | Successful operation | - | +| **200** | Successful operation | - | | **400** | Bad request | - | | **401** | Unauthorized | - | | **403** | Forbidden | - | diff --git a/equinix-openapi-fabric/docs/RouteFiltersData.md b/equinix-openapi-fabric/docs/RouteFiltersData.md index 17ba8c0c..6abb909e 100644 --- a/equinix-openapi-fabric/docs/RouteFiltersData.md +++ b/equinix-openapi-fabric/docs/RouteFiltersData.md @@ -16,6 +16,7 @@ |**change** | [**RouteFiltersChange**](RouteFiltersChange.md) | | [optional] | |**notMatchedRuleAction** | [**NotMatchedRuleActionEnum**](#NotMatchedRuleActionEnum) | | [optional] | |**connectionsCount** | **Integer** | | [optional] | +|**rulesCount** | **Integer** | | [optional] | |**project** | [**RouteFiltersDataProject**](RouteFiltersDataProject.md) | | [optional] | |**notifications** | [**List<SimplifiedNotification>**](SimplifiedNotification.md) | Preferences for notifications on route filter configuration or status changes | [optional] | |**changelog** | [**Changelog**](Changelog.md) | | [optional] | diff --git a/equinix-openapi-fabric/docs/RouteFiltersPatchRequestItem.md b/equinix-openapi-fabric/docs/RouteFiltersPatchRequestItem.md new file mode 100644 index 00000000..a6c53e45 --- /dev/null +++ b/equinix-openapi-fabric/docs/RouteFiltersPatchRequestItem.md @@ -0,0 +1,16 @@ + + +# RouteFiltersPatchRequestItem + +Route Filter change operation data + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**op** | **String** | Handy shortcut for operation name | | +|**path** | **String** | path to change | | +|**value** | **Object** | new value for updated parameter | | + + + diff --git a/equinix-openapi-fabric/docs/RouteFiltersSearchBase.md b/equinix-openapi-fabric/docs/RouteFiltersSearchBase.md new file mode 100644 index 00000000..8034b61e --- /dev/null +++ b/equinix-openapi-fabric/docs/RouteFiltersSearchBase.md @@ -0,0 +1,15 @@ + + +# RouteFiltersSearchBase + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**filter** | [**RouteFiltersSearchBaseFilter**](RouteFiltersSearchBaseFilter.md) | | [optional] | +|**pagination** | [**Pagination**](Pagination.md) | | [optional] | +|**sort** | [**List<SortItem>**](SortItem.md) | | [optional] | + + + diff --git a/equinix-openapi-fabric/docs/RouteFiltersSearchBaseFilter.md b/equinix-openapi-fabric/docs/RouteFiltersSearchBaseFilter.md new file mode 100644 index 00000000..6410bb90 --- /dev/null +++ b/equinix-openapi-fabric/docs/RouteFiltersSearchBaseFilter.md @@ -0,0 +1,13 @@ + + +# RouteFiltersSearchBaseFilter + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**and** | [**List<RouteFiltersSearchFilterItem>**](RouteFiltersSearchFilterItem.md) | | [optional] | + + + diff --git a/equinix-openapi-fabric/docs/RouteFiltersSearchFilterItem.md b/equinix-openapi-fabric/docs/RouteFiltersSearchFilterItem.md new file mode 100644 index 00000000..e8b40de7 --- /dev/null +++ b/equinix-openapi-fabric/docs/RouteFiltersSearchFilterItem.md @@ -0,0 +1,27 @@ + + +# RouteFiltersSearchFilterItem + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**property** | [**PropertyEnum**](#PropertyEnum) | | [optional] | +|**operator** | **String** | | [optional] | +|**values** | **List<String>** | | [optional] | + + + +## Enum: PropertyEnum + +| Name | Value | +|---- | -----| +| TYPE | "/type" | +| NAME | "/name" | +| PROJECT_PROJECTID | "/project/projectId" | +| UUID | "/uuid" | +| STATE | "/state" | + + + diff --git a/equinix-openapi-fabric/docs/RouteFiltersSearchResponse.md b/equinix-openapi-fabric/docs/RouteFiltersSearchResponse.md new file mode 100644 index 00000000..1053e680 --- /dev/null +++ b/equinix-openapi-fabric/docs/RouteFiltersSearchResponse.md @@ -0,0 +1,14 @@ + + +# RouteFiltersSearchResponse + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**pagination** | [**Pagination**](Pagination.md) | | [optional] | +|**data** | [**List<RouteFiltersData>**](RouteFiltersData.md) | List of Route Filters | [optional] | + + + diff --git a/equinix-openapi-fabric/docs/RouterPackageCode.md b/equinix-openapi-fabric/docs/RouterPackageCode.md index b274e1e6..0662c848 100644 --- a/equinix-openapi-fabric/docs/RouterPackageCode.md +++ b/equinix-openapi-fabric/docs/RouterPackageCode.md @@ -7,7 +7,7 @@ * `LAB` (value: `"LAB"`) -* `BASIC` (value: `"BASIC"`) +* `ADVANCED` (value: `"ADVANCED"`) * `STANDARD` (value: `"STANDARD"`) diff --git a/equinix-openapi-fabric/docs/ServiceProfileTypeEnum.md b/equinix-openapi-fabric/docs/ServiceProfileTypeEnum.md index eef42f3e..3f67c0d1 100644 --- a/equinix-openapi-fabric/docs/ServiceProfileTypeEnum.md +++ b/equinix-openapi-fabric/docs/ServiceProfileTypeEnum.md @@ -9,5 +9,7 @@ * `L3_PROFILE` (value: `"L3_PROFILE"`) +* `IA_PROFILE` (value: `"IA_PROFILE"`) + diff --git a/equinix-openapi-fabric/docs/SortItem.md b/equinix-openapi-fabric/docs/SortItem.md new file mode 100644 index 00000000..f8e86f85 --- /dev/null +++ b/equinix-openapi-fabric/docs/SortItem.md @@ -0,0 +1,39 @@ + + +# SortItem + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**property** | [**PropertyEnum**](#PropertyEnum) | Possible field names to use on sorting | [optional] | +|**direction** | [**DirectionEnum**](#DirectionEnum) | Sorting direction | [optional] | + + + +## Enum: PropertyEnum + +| Name | Value | +|---- | -----| +| TYPE | "/type" | +| UUID | "/uuid" | +| NAME | "/name" | +| PROJECT_PROJECTID | "/project/projectId" | +| STATE | "/state" | +| NOTMATCHEDRULEACTION | "/notMatchedRuleAction" | +| CONNECTIONSCOUNT | "/connectionsCount" | +| CHANGELOG_CREATEDDATETIME | "/changeLog/createdDateTime" | +| CHANGELOG_UPDATEDDATETIME | "/changeLog/updatedDateTime" | + + + +## Enum: DirectionEnum + +| Name | Value | +|---- | -----| +| DESC | "DESC" | +| ASC | "ASC" | + + + diff --git a/equinix-openapi-fabric/docs/SubInterface.md b/equinix-openapi-fabric/docs/SubInterface.md index 1a413a4a..f8afbf29 100644 --- a/equinix-openapi-fabric/docs/SubInterface.md +++ b/equinix-openapi-fabric/docs/SubInterface.md @@ -8,19 +8,8 @@ Sub Interface information | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**type** | [**TypeEnum**](#TypeEnum) | type of connection vlan | [optional] | |**name** | **String** | name of subinterafce of a port | [optional] | |**unit** | **Integer** | | [optional] | -## Enum: TypeEnum - -| Name | Value | -|---- | -----| -| VNI | "VNI" | -| VXLAN | "VXLAN" | -| VLAN | "VLAN" | - - - diff --git a/equinix-openapi-fabric/docs/VirtualConnectionPriceConnectionType.md b/equinix-openapi-fabric/docs/VirtualConnectionPriceConnectionType.md index fd1c68af..04cb6b02 100644 --- a/equinix-openapi-fabric/docs/VirtualConnectionPriceConnectionType.md +++ b/equinix-openapi-fabric/docs/VirtualConnectionPriceConnectionType.md @@ -23,5 +23,7 @@ * `IPWAN_VC` (value: `"IPWAN_VC"`) +* `IA_VC` (value: `"IA_VC"`) + diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/JSON.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/JSON.java index 4615c139..bf970eb0 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/JSON.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/JSON.java @@ -128,7 +128,6 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.AccessPointSelector.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.Account.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.AddOperation.CustomTypeAdapterFactory()); - gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.AdditionalInfo.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.AdvanceConfiguration.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.AllPhysicalPortsResponse.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.AllPortsResponse.CustomTypeAdapterFactory()); @@ -212,6 +211,7 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.LinkProtocolVxlan.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.MarketingInfo.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.Md5.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.MetalInterconnection.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.Metrics.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.Metro.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.MetroError.CustomTypeAdapterFactory()); @@ -232,7 +232,6 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.NetworkSortCriteriaResponse.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.Order.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PackageChangeLog.CustomTypeAdapterFactory()); - gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PackageRequest.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PackageResponse.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.Pagination.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PaginationRequest.CustomTypeAdapterFactory()); @@ -259,6 +258,8 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PortTether.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PortV4SearchRequest.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PrecisionTimeChangeOperation.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PrecisionTimePackageRequest.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PrecisionTimePackageResponse.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PrecisionTimeServiceCreateResponse.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.PrecisionTimeServiceRequest.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.Price.CustomTypeAdapterFactory()); @@ -274,7 +275,6 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.ReplaceOperation.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterChangeData.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterChangeDataResponse.CustomTypeAdapterFactory()); - gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterChangePrefixMatch.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterConnectionsData.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterRulesBase.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterRulesChange.CustomTypeAdapterFactory()); @@ -282,13 +282,18 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterRulesChangeDataResponse.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterRulesChangeOperation.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterRulesData.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterRulesPatchRequestItem.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFilterRulesPostRequest.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersBase.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersChange.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersChangeOperation.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersData.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersDataProject.CustomTypeAdapterFactory()); - gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersDataProjectAllOf.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersPatchRequestItem.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersSearchBase.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersSearchBaseFilter.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersSearchFilterItem.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteFiltersSearchResponse.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteTableEntry.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteTableEntryConnection.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.RouteTableEntryFilter.CustomTypeAdapterFactory()); @@ -350,6 +355,7 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.SimplifiedServiceProfile.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.SortCriteria.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.SortCriteriaResponse.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.SortItem.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.Statistics.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.SubInterface.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.equinix.openapi.fabric.v4.model.TopUtilizedStatistics.CustomTypeAdapterFactory()); diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/api/RouteFilterRulesApi.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/api/RouteFilterRulesApi.java index 6b7ff2f9..ebf6d636 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/api/RouteFilterRulesApi.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/api/RouteFilterRulesApi.java @@ -28,13 +28,12 @@ import com.equinix.openapi.fabric.v4.model.Error; import com.equinix.openapi.fabric.v4.model.GetRouteFilterRulesResponse; -import com.equinix.openapi.fabric.v4.model.RouteFilterChangePrefixMatch; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesBase; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesChangeData; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesChangeDataResponse; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesData; +import com.equinix.openapi.fabric.v4.model.RouteFilterRulesPatchRequestItem; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesPostRequest; -import com.equinix.openapi.fabric.v4.model.RouteFiltersData; import java.util.UUID; import java.lang.reflect.Type; @@ -249,6 +248,12 @@ public okhttp3.Call createRouteFilterRuleAsync(String routeFilterId, RouteFilter + + + + + +
Status Code Description Response Headers
202 Successful operation -
400 Resource not found -
401 Unauthorized -
403 Forbidden -
404 Not Found -
415 Unsupported Media Type -
500 Internal server error -
*/ public okhttp3.Call createRouteFilterRulesInBulkCall(String routeFilterId, RouteFilterRulesPostRequest routeFilterRulesPostRequest, final ApiCallback _callback) throws ApiException { @@ -324,6 +329,12 @@ private okhttp3.Call createRouteFilterRulesInBulkValidateBeforeCall(String route + + + + + +
Status Code Description Response Headers
202 Successful operation -
400 Resource not found -
401 Unauthorized -
403 Forbidden -
404 Not Found -
415 Unsupported Media Type -
500 Internal server error -
*/ public GetRouteFilterRulesResponse createRouteFilterRulesInBulk(String routeFilterId, RouteFilterRulesPostRequest routeFilterRulesPostRequest) throws ApiException { @@ -342,6 +353,12 @@ public GetRouteFilterRulesResponse createRouteFilterRulesInBulk(String routeFilt + + + + + +
Status Code Description Response Headers
202 Successful operation -
400 Resource not found -
401 Unauthorized -
403 Forbidden -
404 Not Found -
415 Unsupported Media Type -
500 Internal server error -
*/ public ApiResponse createRouteFilterRulesInBulkWithHttpInfo(String routeFilterId, RouteFilterRulesPostRequest routeFilterRulesPostRequest) throws ApiException { @@ -362,6 +379,12 @@ public ApiResponse createRouteFilterRulesInBulkWith + + + + + +
Status Code Description Response Headers
202 Successful operation -
400 Resource not found -
401 Unauthorized -
403 Forbidden -
404 Not Found -
415 Unsupported Media Type -
500 Internal server error -
*/ public okhttp3.Call createRouteFilterRulesInBulkAsync(String routeFilterId, RouteFilterRulesPostRequest routeFilterRulesPostRequest, final ApiCallback _callback) throws ApiException { @@ -1029,7 +1052,7 @@ public okhttp3.Call getRouteFilterRuleChangesAsync(String routeFilterId, String - + @@ -1112,7 +1135,7 @@ private okhttp3.Call getRouteFilterRulesValidateBeforeCall(String routeFilterId,
Status Code Description Response Headers
200 Successful operation -
400 Bad request -
400 Resource not found -
401 Unauthorized -
403 Forbidden -
404 Route Filter Rule ID Not Found -
- + @@ -1136,7 +1159,7 @@ public GetRouteFilterRulesResponse getRouteFilterRules(String routeFilterId, Int
Status Code Description Response Headers
200 Successful operation -
400 Bad request -
400 Resource not found -
401 Unauthorized -
403 Forbidden -
404 Route Filter Rule ID Not Found -
- + @@ -1162,7 +1185,7 @@ public ApiResponse getRouteFilterRulesWithHttpInfo(
Status Code Description Response Headers
200 Successful operation -
400 Bad request -
400 Resource not found -
401 Unauthorized -
403 Forbidden -
404 Route Filter Rule ID Not Found -
- + @@ -1180,7 +1203,7 @@ public okhttp3.Call getRouteFilterRulesAsync(String routeFilterId, Integer offse * Build call for patchRouteFilterRuleByUuid * @param routeFilterId Route Filters Id (required) * @param routeFilterRuleId Route Filter Rules Id (required) - * @param routeFilterChangePrefixMatch (required) + * @param routeFilterRulesPatchRequestItem (required) * @param _callback Callback for upload/download progress * @return Call to execute * @throws ApiException If fail to serialize the request body object @@ -1196,7 +1219,7 @@ public okhttp3.Call getRouteFilterRulesAsync(String routeFilterId, Integer offse
Status Code Description Response Headers
200 Successful operation -
400 Bad request -
400 Resource not found -
401 Unauthorized -
403 Forbidden -
404 Route Filter Rule ID Not Found -
500 Internal server error -
*/ - public okhttp3.Call patchRouteFilterRuleByUuidCall(String routeFilterId, String routeFilterRuleId, List routeFilterChangePrefixMatch, final ApiCallback _callback) throws ApiException { + public okhttp3.Call patchRouteFilterRuleByUuidCall(String routeFilterId, String routeFilterRuleId, List routeFilterRulesPatchRequestItem, final ApiCallback _callback) throws ApiException { String basePath = null; // Operation Servers String[] localBasePaths = new String[] { }; @@ -1210,7 +1233,7 @@ public okhttp3.Call patchRouteFilterRuleByUuidCall(String routeFilterId, String basePath = null; } - Object localVarPostBody = routeFilterChangePrefixMatch; + Object localVarPostBody = routeFilterRulesPatchRequestItem; // create path and map variables String localVarPath = "/fabric/v4/routeFilters/{routeFilterId}/routeFilterRules/{routeFilterRuleId}" @@ -1244,7 +1267,7 @@ public okhttp3.Call patchRouteFilterRuleByUuidCall(String routeFilterId, String } @SuppressWarnings("rawtypes") - private okhttp3.Call patchRouteFilterRuleByUuidValidateBeforeCall(String routeFilterId, String routeFilterRuleId, List routeFilterChangePrefixMatch, final ApiCallback _callback) throws ApiException { + private okhttp3.Call patchRouteFilterRuleByUuidValidateBeforeCall(String routeFilterId, String routeFilterRuleId, List routeFilterRulesPatchRequestItem, final ApiCallback _callback) throws ApiException { // verify the required parameter 'routeFilterId' is set if (routeFilterId == null) { throw new ApiException("Missing the required parameter 'routeFilterId' when calling patchRouteFilterRuleByUuid(Async)"); @@ -1255,12 +1278,12 @@ private okhttp3.Call patchRouteFilterRuleByUuidValidateBeforeCall(String routeFi throw new ApiException("Missing the required parameter 'routeFilterRuleId' when calling patchRouteFilterRuleByUuid(Async)"); } - // verify the required parameter 'routeFilterChangePrefixMatch' is set - if (routeFilterChangePrefixMatch == null) { - throw new ApiException("Missing the required parameter 'routeFilterChangePrefixMatch' when calling patchRouteFilterRuleByUuid(Async)"); + // verify the required parameter 'routeFilterRulesPatchRequestItem' is set + if (routeFilterRulesPatchRequestItem == null) { + throw new ApiException("Missing the required parameter 'routeFilterRulesPatchRequestItem' when calling patchRouteFilterRuleByUuid(Async)"); } - return patchRouteFilterRuleByUuidCall(routeFilterId, routeFilterRuleId, routeFilterChangePrefixMatch, _callback); + return patchRouteFilterRuleByUuidCall(routeFilterId, routeFilterRuleId, routeFilterRulesPatchRequestItem, _callback); } @@ -1269,8 +1292,8 @@ private okhttp3.Call patchRouteFilterRuleByUuidValidateBeforeCall(String routeFi * This API provides capability to partially update a Route Filter Rule * @param routeFilterId Route Filters Id (required) * @param routeFilterRuleId Route Filter Rules Id (required) - * @param routeFilterChangePrefixMatch (required) - * @return RouteFiltersData + * @param routeFilterRulesPatchRequestItem (required) + * @return RouteFilterRulesData * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details @@ -1284,8 +1307,8 @@ private okhttp3.Call patchRouteFilterRuleByUuidValidateBeforeCall(String routeFi
500 Internal server error -
*/ - public RouteFiltersData patchRouteFilterRuleByUuid(String routeFilterId, String routeFilterRuleId, List routeFilterChangePrefixMatch) throws ApiException { - ApiResponse localVarResp = patchRouteFilterRuleByUuidWithHttpInfo(routeFilterId, routeFilterRuleId, routeFilterChangePrefixMatch); + public RouteFilterRulesData patchRouteFilterRuleByUuid(String routeFilterId, String routeFilterRuleId, List routeFilterRulesPatchRequestItem) throws ApiException { + ApiResponse localVarResp = patchRouteFilterRuleByUuidWithHttpInfo(routeFilterId, routeFilterRuleId, routeFilterRulesPatchRequestItem); return localVarResp.getData(); } @@ -1294,8 +1317,8 @@ public RouteFiltersData patchRouteFilterRuleByUuid(String routeFilterId, String * This API provides capability to partially update a Route Filter Rule * @param routeFilterId Route Filters Id (required) * @param routeFilterRuleId Route Filter Rules Id (required) - * @param routeFilterChangePrefixMatch (required) - * @return ApiResponse<RouteFiltersData> + * @param routeFilterRulesPatchRequestItem (required) + * @return ApiResponse<RouteFilterRulesData> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details @@ -1309,9 +1332,9 @@ public RouteFiltersData patchRouteFilterRuleByUuid(String routeFilterId, String
500 Internal server error -
*/ - public ApiResponse patchRouteFilterRuleByUuidWithHttpInfo(String routeFilterId, String routeFilterRuleId, List routeFilterChangePrefixMatch) throws ApiException { - okhttp3.Call localVarCall = patchRouteFilterRuleByUuidValidateBeforeCall(routeFilterId, routeFilterRuleId, routeFilterChangePrefixMatch, null); - Type localVarReturnType = new TypeToken(){}.getType(); + public ApiResponse patchRouteFilterRuleByUuidWithHttpInfo(String routeFilterId, String routeFilterRuleId, List routeFilterRulesPatchRequestItem) throws ApiException { + okhttp3.Call localVarCall = patchRouteFilterRuleByUuidValidateBeforeCall(routeFilterId, routeFilterRuleId, routeFilterRulesPatchRequestItem, null); + Type localVarReturnType = new TypeToken(){}.getType(); return localVarApiClient.execute(localVarCall, localVarReturnType); } @@ -1320,7 +1343,7 @@ public ApiResponse patchRouteFilterRuleByUuidWithHttpInfo(Stri * This API provides capability to partially update a Route Filter Rule * @param routeFilterId Route Filters Id (required) * @param routeFilterRuleId Route Filter Rules Id (required) - * @param routeFilterChangePrefixMatch (required) + * @param routeFilterRulesPatchRequestItem (required) * @param _callback The callback to be executed when the API call finishes * @return The request call * @throws ApiException If fail to process the API call, e.g. serializing the request body object @@ -1336,10 +1359,10 @@ public ApiResponse patchRouteFilterRuleByUuidWithHttpInfo(Stri 500 Internal server error - */ - public okhttp3.Call patchRouteFilterRuleByUuidAsync(String routeFilterId, String routeFilterRuleId, List routeFilterChangePrefixMatch, final ApiCallback _callback) throws ApiException { + public okhttp3.Call patchRouteFilterRuleByUuidAsync(String routeFilterId, String routeFilterRuleId, List routeFilterRulesPatchRequestItem, final ApiCallback _callback) throws ApiException { - okhttp3.Call localVarCall = patchRouteFilterRuleByUuidValidateBeforeCall(routeFilterId, routeFilterRuleId, routeFilterChangePrefixMatch, _callback); - Type localVarReturnType = new TypeToken(){}.getType(); + okhttp3.Call localVarCall = patchRouteFilterRuleByUuidValidateBeforeCall(routeFilterId, routeFilterRuleId, routeFilterRulesPatchRequestItem, _callback); + Type localVarReturnType = new TypeToken(){}.getType(); localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback); return localVarCall; } diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/api/RouteFiltersApi.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/api/RouteFiltersApi.java index d6847e22..af092b4e 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/api/RouteFiltersApi.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/api/RouteFiltersApi.java @@ -26,7 +26,6 @@ import java.io.IOException; -import com.equinix.openapi.fabric.v4.model.ConnectionChangeOperation; import com.equinix.openapi.fabric.v4.model.ConnectionRouteFilterData; import com.equinix.openapi.fabric.v4.model.ConnectionRouteFiltersBase; import com.equinix.openapi.fabric.v4.model.Error; @@ -36,6 +35,9 @@ import com.equinix.openapi.fabric.v4.model.RouteFilterChangeDataResponse; import com.equinix.openapi.fabric.v4.model.RouteFiltersBase; import com.equinix.openapi.fabric.v4.model.RouteFiltersData; +import com.equinix.openapi.fabric.v4.model.RouteFiltersPatchRequestItem; +import com.equinix.openapi.fabric.v4.model.RouteFiltersSearchBase; +import com.equinix.openapi.fabric.v4.model.RouteFiltersSearchResponse; import java.util.UUID; import java.lang.reflect.Type; @@ -1613,7 +1615,7 @@ public okhttp3.Call getRouteFilterConnectionsAsync(String routeFilterId, final A /** * Build call for patchRouteFilterByUuid * @param routeFilterId Route Filters Id (required) - * @param connectionChangeOperation (required) + * @param routeFiltersPatchRequestItem (required) * @param _callback Callback for upload/download progress * @return Call to execute * @throws ApiException If fail to serialize the request body object @@ -1629,7 +1631,7 @@ public okhttp3.Call getRouteFilterConnectionsAsync(String routeFilterId, final A 500 Internal server error - */ - public okhttp3.Call patchRouteFilterByUuidCall(String routeFilterId, List connectionChangeOperation, final ApiCallback _callback) throws ApiException { + public okhttp3.Call patchRouteFilterByUuidCall(String routeFilterId, List routeFiltersPatchRequestItem, final ApiCallback _callback) throws ApiException { String basePath = null; // Operation Servers String[] localBasePaths = new String[] { }; @@ -1643,7 +1645,7 @@ public okhttp3.Call patchRouteFilterByUuidCall(String routeFilterId, List connectionChangeOperation, final ApiCallback _callback) throws ApiException { + private okhttp3.Call patchRouteFilterByUuidValidateBeforeCall(String routeFilterId, List routeFiltersPatchRequestItem, final ApiCallback _callback) throws ApiException { // verify the required parameter 'routeFilterId' is set if (routeFilterId == null) { throw new ApiException("Missing the required parameter 'routeFilterId' when calling patchRouteFilterByUuid(Async)"); } - // verify the required parameter 'connectionChangeOperation' is set - if (connectionChangeOperation == null) { - throw new ApiException("Missing the required parameter 'connectionChangeOperation' when calling patchRouteFilterByUuid(Async)"); + // verify the required parameter 'routeFiltersPatchRequestItem' is set + if (routeFiltersPatchRequestItem == null) { + throw new ApiException("Missing the required parameter 'routeFiltersPatchRequestItem' when calling patchRouteFilterByUuid(Async)"); } - return patchRouteFilterByUuidCall(routeFilterId, connectionChangeOperation, _callback); + return patchRouteFilterByUuidCall(routeFilterId, routeFiltersPatchRequestItem, _callback); } @@ -1695,7 +1697,7 @@ private okhttp3.Call patchRouteFilterByUuidValidateBeforeCall(String routeFilter * Patch Route Filter * This API provides capability to partially update a Route Filter * @param routeFilterId Route Filters Id (required) - * @param connectionChangeOperation (required) + * @param routeFiltersPatchRequestItem (required) * @return RouteFiltersData * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details @@ -1710,8 +1712,8 @@ private okhttp3.Call patchRouteFilterByUuidValidateBeforeCall(String routeFilter 500 Internal server error - */ - public RouteFiltersData patchRouteFilterByUuid(String routeFilterId, List connectionChangeOperation) throws ApiException { - ApiResponse localVarResp = patchRouteFilterByUuidWithHttpInfo(routeFilterId, connectionChangeOperation); + public RouteFiltersData patchRouteFilterByUuid(String routeFilterId, List routeFiltersPatchRequestItem) throws ApiException { + ApiResponse localVarResp = patchRouteFilterByUuidWithHttpInfo(routeFilterId, routeFiltersPatchRequestItem); return localVarResp.getData(); } @@ -1719,7 +1721,7 @@ public RouteFiltersData patchRouteFilterByUuid(String routeFilterId, List 500 Internal server error - */ - public ApiResponse patchRouteFilterByUuidWithHttpInfo(String routeFilterId, List connectionChangeOperation) throws ApiException { - okhttp3.Call localVarCall = patchRouteFilterByUuidValidateBeforeCall(routeFilterId, connectionChangeOperation, null); + public ApiResponse patchRouteFilterByUuidWithHttpInfo(String routeFilterId, List routeFiltersPatchRequestItem) throws ApiException { + okhttp3.Call localVarCall = patchRouteFilterByUuidValidateBeforeCall(routeFilterId, routeFiltersPatchRequestItem, null); Type localVarReturnType = new TypeToken(){}.getType(); return localVarApiClient.execute(localVarCall, localVarReturnType); } @@ -1744,7 +1746,7 @@ public ApiResponse patchRouteFilterByUuidWithHttpInfo(String r * Patch Route Filter (asynchronously) * This API provides capability to partially update a Route Filter * @param routeFilterId Route Filters Id (required) - * @param connectionChangeOperation (required) + * @param routeFiltersPatchRequestItem (required) * @param _callback The callback to be executed when the API call finishes * @return The request call * @throws ApiException If fail to process the API call, e.g. serializing the request body object @@ -1760,24 +1762,23 @@ public ApiResponse patchRouteFilterByUuidWithHttpInfo(String r 500 Internal server error - */ - public okhttp3.Call patchRouteFilterByUuidAsync(String routeFilterId, List connectionChangeOperation, final ApiCallback _callback) throws ApiException { + public okhttp3.Call patchRouteFilterByUuidAsync(String routeFilterId, List routeFiltersPatchRequestItem, final ApiCallback _callback) throws ApiException { - okhttp3.Call localVarCall = patchRouteFilterByUuidValidateBeforeCall(routeFilterId, connectionChangeOperation, _callback); + okhttp3.Call localVarCall = patchRouteFilterByUuidValidateBeforeCall(routeFilterId, routeFiltersPatchRequestItem, _callback); Type localVarReturnType = new TypeToken(){}.getType(); localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback); return localVarCall; } /** - * Build call for replaceRouteFilterByUuid - * @param routeFilterId Route Filters Id (required) - * @param routeFiltersBase (required) + * Build call for searchRouteFilters + * @param routeFiltersSearchBase (required) * @param _callback Callback for upload/download progress * @return Call to execute * @throws ApiException If fail to serialize the request body object * @http.response.details - + @@ -1786,7 +1787,7 @@ public okhttp3.Call patchRouteFilterByUuidAsync(String routeFilterId, List
Status Code Description Response Headers
202 Successful operation -
200 Successful operation -
400 Bad request -
401 Unauthorized -
403 Forbidden -
500 Internal server error -
*/ - public okhttp3.Call replaceRouteFilterByUuidCall(String routeFilterId, RouteFiltersBase routeFiltersBase, final ApiCallback _callback) throws ApiException { + public okhttp3.Call searchRouteFiltersCall(RouteFiltersSearchBase routeFiltersSearchBase, final ApiCallback _callback) throws ApiException { String basePath = null; // Operation Servers String[] localBasePaths = new String[] { }; @@ -1800,11 +1801,10 @@ public okhttp3.Call replaceRouteFilterByUuidCall(String routeFilterId, RouteFilt basePath = null; } - Object localVarPostBody = routeFiltersBase; + Object localVarPostBody = routeFiltersSearchBase; // create path and map variables - String localVarPath = "/fabric/v4/routeFilters/{routeFilterId}" - .replace("{" + "routeFilterId" + "}", localVarApiClient.escapeString(routeFilterId.toString())); + String localVarPath = "/fabric/v4/routeFilters/search"; List localVarQueryParams = new ArrayList(); List localVarCollectionQueryParams = new ArrayList(); @@ -1829,36 +1829,30 @@ public okhttp3.Call replaceRouteFilterByUuidCall(String routeFilterId, RouteFilt } String[] localVarAuthNames = new String[] { "BearerAuth" }; - return localVarApiClient.buildCall(basePath, localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback); + return localVarApiClient.buildCall(basePath, localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback); } @SuppressWarnings("rawtypes") - private okhttp3.Call replaceRouteFilterByUuidValidateBeforeCall(String routeFilterId, RouteFiltersBase routeFiltersBase, final ApiCallback _callback) throws ApiException { - // verify the required parameter 'routeFilterId' is set - if (routeFilterId == null) { - throw new ApiException("Missing the required parameter 'routeFilterId' when calling replaceRouteFilterByUuid(Async)"); - } - - // verify the required parameter 'routeFiltersBase' is set - if (routeFiltersBase == null) { - throw new ApiException("Missing the required parameter 'routeFiltersBase' when calling replaceRouteFilterByUuid(Async)"); + private okhttp3.Call searchRouteFiltersValidateBeforeCall(RouteFiltersSearchBase routeFiltersSearchBase, final ApiCallback _callback) throws ApiException { + // verify the required parameter 'routeFiltersSearchBase' is set + if (routeFiltersSearchBase == null) { + throw new ApiException("Missing the required parameter 'routeFiltersSearchBase' when calling searchRouteFilters(Async)"); } - return replaceRouteFilterByUuidCall(routeFilterId, routeFiltersBase, _callback); + return searchRouteFiltersCall(routeFiltersSearchBase, _callback); } /** - * Replace Route Filter - * This API provides capability to replace a Route Filter completely - * @param routeFilterId Route Filters Id (required) - * @param routeFiltersBase (required) - * @return RouteFiltersData + * Search Route Filters + * This API provides capability to search Route Filters + * @param routeFiltersSearchBase (required) + * @return RouteFiltersSearchResponse * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details - + @@ -1867,22 +1861,21 @@ private okhttp3.Call replaceRouteFilterByUuidValidateBeforeCall(String routeFilt
Status Code Description Response Headers
202 Successful operation -
200 Successful operation -
400 Bad request -
401 Unauthorized -
403 Forbidden -
500 Internal server error -
*/ - public RouteFiltersData replaceRouteFilterByUuid(String routeFilterId, RouteFiltersBase routeFiltersBase) throws ApiException { - ApiResponse localVarResp = replaceRouteFilterByUuidWithHttpInfo(routeFilterId, routeFiltersBase); + public RouteFiltersSearchResponse searchRouteFilters(RouteFiltersSearchBase routeFiltersSearchBase) throws ApiException { + ApiResponse localVarResp = searchRouteFiltersWithHttpInfo(routeFiltersSearchBase); return localVarResp.getData(); } /** - * Replace Route Filter - * This API provides capability to replace a Route Filter completely - * @param routeFilterId Route Filters Id (required) - * @param routeFiltersBase (required) - * @return ApiResponse<RouteFiltersData> + * Search Route Filters + * This API provides capability to search Route Filters + * @param routeFiltersSearchBase (required) + * @return ApiResponse<RouteFiltersSearchResponse> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details - + @@ -1891,24 +1884,23 @@ public RouteFiltersData replaceRouteFilterByUuid(String routeFilterId, RouteFilt
Status Code Description Response Headers
202 Successful operation -
200 Successful operation -
400 Bad request -
401 Unauthorized -
403 Forbidden -
500 Internal server error -
*/ - public ApiResponse replaceRouteFilterByUuidWithHttpInfo(String routeFilterId, RouteFiltersBase routeFiltersBase) throws ApiException { - okhttp3.Call localVarCall = replaceRouteFilterByUuidValidateBeforeCall(routeFilterId, routeFiltersBase, null); - Type localVarReturnType = new TypeToken(){}.getType(); + public ApiResponse searchRouteFiltersWithHttpInfo(RouteFiltersSearchBase routeFiltersSearchBase) throws ApiException { + okhttp3.Call localVarCall = searchRouteFiltersValidateBeforeCall(routeFiltersSearchBase, null); + Type localVarReturnType = new TypeToken(){}.getType(); return localVarApiClient.execute(localVarCall, localVarReturnType); } /** - * Replace Route Filter (asynchronously) - * This API provides capability to replace a Route Filter completely - * @param routeFilterId Route Filters Id (required) - * @param routeFiltersBase (required) + * Search Route Filters (asynchronously) + * This API provides capability to search Route Filters + * @param routeFiltersSearchBase (required) * @param _callback The callback to be executed when the API call finishes * @return The request call * @throws ApiException If fail to process the API call, e.g. serializing the request body object * @http.response.details - + @@ -1917,10 +1909,10 @@ public ApiResponse replaceRouteFilterByUuidWithHttpInfo(String
Status Code Description Response Headers
202 Successful operation -
200 Successful operation -
400 Bad request -
401 Unauthorized -
403 Forbidden -
500 Internal server error -
*/ - public okhttp3.Call replaceRouteFilterByUuidAsync(String routeFilterId, RouteFiltersBase routeFiltersBase, final ApiCallback _callback) throws ApiException { + public okhttp3.Call searchRouteFiltersAsync(RouteFiltersSearchBase routeFiltersSearchBase, final ApiCallback _callback) throws ApiException { - okhttp3.Call localVarCall = replaceRouteFilterByUuidValidateBeforeCall(routeFilterId, routeFiltersBase, _callback); - Type localVarReturnType = new TypeToken(){}.getType(); + okhttp3.Call localVarCall = searchRouteFiltersValidateBeforeCall(routeFiltersSearchBase, _callback); + Type localVarReturnType = new TypeToken(){}.getType(); localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback); return localVarCall; } diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/AccessPoint.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/AccessPoint.java index b71389f4..342ba88f 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/AccessPoint.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/AccessPoint.java @@ -16,6 +16,7 @@ import java.util.Arrays; import com.equinix.openapi.fabric.v4.model.AccessPointType; import com.equinix.openapi.fabric.v4.model.CloudRouter; +import com.equinix.openapi.fabric.v4.model.MetalInterconnection; import com.equinix.openapi.fabric.v4.model.ModelInterface; import com.equinix.openapi.fabric.v4.model.PeeringType; import com.equinix.openapi.fabric.v4.model.SimplifiedAccount; @@ -119,6 +120,10 @@ public class AccessPoint { @SerializedName(SERIALIZED_NAME_VIRTUAL_NETWORK) private VirtualNetwork virtualNetwork; + public static final String SERIALIZED_NAME_INTERCONNECTION = "interconnection"; + @SerializedName(SERIALIZED_NAME_INTERCONNECTION) + private MetalInterconnection interconnection; + public AccessPoint() { } @@ -451,6 +456,28 @@ public void setVirtualNetwork(VirtualNetwork virtualNetwork) { this.virtualNetwork = virtualNetwork; } + + public AccessPoint interconnection(MetalInterconnection interconnection) { + + this.interconnection = interconnection; + return this; + } + + /** + * Get interconnection + * @return interconnection + **/ + @javax.annotation.Nullable + + public MetalInterconnection getInterconnection() { + return interconnection; + } + + + public void setInterconnection(MetalInterconnection interconnection) { + this.interconnection = interconnection; + } + /** * A container for additional, undeclared properties. * This is a holder for any undeclared properties as specified with @@ -520,13 +547,14 @@ public boolean equals(Object o) { Objects.equals(this.peeringType, accessPoint.peeringType) && Objects.equals(this.authenticationKey, accessPoint.authenticationKey) && Objects.equals(this.providerConnectionId, accessPoint.providerConnectionId) && - Objects.equals(this.virtualNetwork, accessPoint.virtualNetwork)&& + Objects.equals(this.virtualNetwork, accessPoint.virtualNetwork) && + Objects.equals(this.interconnection, accessPoint.interconnection)&& Objects.equals(this.additionalProperties, accessPoint.additionalProperties); } @Override public int hashCode() { - return Objects.hash(type, account, location, port, profile, router, linkProtocol, virtualDevice, _interface, network, sellerRegion, peeringType, authenticationKey, providerConnectionId, virtualNetwork, additionalProperties); + return Objects.hash(type, account, location, port, profile, router, linkProtocol, virtualDevice, _interface, network, sellerRegion, peeringType, authenticationKey, providerConnectionId, virtualNetwork, interconnection, additionalProperties); } @Override @@ -548,6 +576,7 @@ public String toString() { sb.append(" authenticationKey: ").append(toIndentedString(authenticationKey)).append("\n"); sb.append(" providerConnectionId: ").append(toIndentedString(providerConnectionId)).append("\n"); sb.append(" virtualNetwork: ").append(toIndentedString(virtualNetwork)).append("\n"); + sb.append(" interconnection: ").append(toIndentedString(interconnection)).append("\n"); sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); sb.append("}"); return sb.toString(); @@ -586,6 +615,7 @@ private String toIndentedString(Object o) { openapiFields.add("authenticationKey"); openapiFields.add("providerConnectionId"); openapiFields.add("virtualNetwork"); + openapiFields.add("interconnection"); // a set of required properties/fields (JSON key names) openapiRequiredFields = new HashSet(); @@ -652,6 +682,10 @@ public static void validateJsonObject(JsonObject jsonObj) throws IOException { if (jsonObj.get("virtualNetwork") != null && !jsonObj.get("virtualNetwork").isJsonNull()) { VirtualNetwork.validateJsonObject(jsonObj.getAsJsonObject("virtualNetwork")); } + // validate the optional field `interconnection` + if (jsonObj.get("interconnection") != null && !jsonObj.get("interconnection").isJsonNull()) { + MetalInterconnection.validateJsonObject(jsonObj.getAsJsonObject("interconnection")); + } } public static class CustomTypeAdapterFactory implements TypeAdapterFactory { diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/CloudRouterPackageType.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/CloudRouterPackageType.java index 2173a6db..a72953f8 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/CloudRouterPackageType.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/CloudRouterPackageType.java @@ -108,7 +108,7 @@ public TypeEnum read(final JsonReader jsonReader) throws IOException { public enum CodeEnum { LAB("LAB"), - BASIC("BASIC"), + ADVANCED("ADVANCED"), STANDARD("STANDARD"), diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/Code.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/Code.java index c8e2d702..1e56ad2d 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/Code.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/Code.java @@ -30,7 +30,7 @@ public enum Code { LAB("LAB"), - BASIC("BASIC"), + ADVANCED("ADVANCED"), STANDARD("STANDARD"), diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/ConnectionType.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/ConnectionType.java index 073f8ead..32e98044 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/ConnectionType.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/ConnectionType.java @@ -44,7 +44,9 @@ public enum ConnectionType { EPLAN_VC("EPLAN_VC"), - IPWAN_VC("IPWAN_VC"); + IPWAN_VC("IPWAN_VC"), + + IA_VC("IA_VC"); private String value; diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/FabricCloudRouterCode.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/FabricCloudRouterCode.java index ca6014eb..0a8151f8 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/FabricCloudRouterCode.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/FabricCloudRouterCode.java @@ -30,7 +30,7 @@ public enum FabricCloudRouterCode { LAB("LAB"), - BASIC("BASIC"), + ADVANCED("ADVANCED"), STANDARD("STANDARD"), diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolRequestType.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolRequestType.java index 9d3a925f..08965d6d 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolRequestType.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolRequestType.java @@ -34,9 +34,7 @@ public enum LinkProtocolRequestType { QINQ("QINQ"), - EVPN_VXLAN("EVPN_VXLAN"), - - UNTAGGEDEPL("UNTAGGEDEPL"); + VXLAN("VXLAN"); private String value; diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolResponse.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolResponse.java index 01e2bc0f..42bea5ce 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolResponse.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/LinkProtocolResponse.java @@ -14,7 +14,6 @@ import java.util.Objects; import java.util.Arrays; -import com.equinix.openapi.fabric.v4.model.AdditionalInfo; import com.equinix.openapi.fabric.v4.model.Changelog; import com.equinix.openapi.fabric.v4.model.LinkProtocolConnection; import com.equinix.openapi.fabric.v4.model.LinkProtocolRequestType; @@ -27,8 +26,7 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import java.util.ArrayList; -import java.util.List; +import java.net.URI; import java.util.UUID; import com.google.gson.Gson; @@ -57,6 +55,10 @@ */ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class LinkProtocolResponse { + public static final String SERIALIZED_NAME_HREF = "href"; + @SerializedName(SERIALIZED_NAME_HREF) + private URI href; + public static final String SERIALIZED_NAME_UUID = "uuid"; @SerializedName(SERIALIZED_NAME_UUID) private UUID uuid; @@ -73,6 +75,10 @@ public class LinkProtocolResponse { @SerializedName(SERIALIZED_NAME_VLAN_TAG) private Integer vlanTag; + public static final String SERIALIZED_NAME_VNI = "vni"; + @SerializedName(SERIALIZED_NAME_VNI) + private Integer vni; + public static final String SERIALIZED_NAME_VLAN_TAG_MIN = "vlanTagMin"; @SerializedName(SERIALIZED_NAME_VLAN_TAG_MIN) private Integer vlanTagMin; @@ -101,13 +107,9 @@ public class LinkProtocolResponse { @SerializedName(SERIALIZED_NAME_SUB_INTERFACE) private SubInterface subInterface; - public static final String SERIALIZED_NAME_ADDITIONAL_INFO = "additionalInfo"; - @SerializedName(SERIALIZED_NAME_ADDITIONAL_INFO) - private List additionalInfo = new ArrayList<>(); - - public static final String SERIALIZED_NAME_CONNECTION = "connection"; - @SerializedName(SERIALIZED_NAME_CONNECTION) - private LinkProtocolConnection connection; + public static final String SERIALIZED_NAME_ASSET = "asset"; + @SerializedName(SERIALIZED_NAME_ASSET) + private LinkProtocolConnection asset; public static final String SERIALIZED_NAME_SERVICE_TOKEN = "serviceToken"; @SerializedName(SERIALIZED_NAME_SERVICE_TOKEN) @@ -120,6 +122,27 @@ public class LinkProtocolResponse { public LinkProtocolResponse() { } + + public LinkProtocolResponse( + URI href + ) { + this(); + this.href = href; + } + + /** + * LinkProtocol URI + * @return href + **/ + @javax.annotation.Nullable + + public URI getHref() { + return href; + } + + + + public LinkProtocolResponse uuid(UUID uuid) { this.uuid = uuid; @@ -208,6 +231,28 @@ public void setVlanTag(Integer vlanTag) { } + public LinkProtocolResponse vni(Integer vni) { + + this.vni = vni; + return this; + } + + /** + * Get vni + * @return vni + **/ + @javax.annotation.Nullable + + public Integer getVni() { + return vni; + } + + + public void setVni(Integer vni) { + this.vni = vni; + } + + public LinkProtocolResponse vlanTagMin(Integer vlanTagMin) { this.vlanTagMin = vlanTagMin; @@ -362,55 +407,25 @@ public void setSubInterface(SubInterface subInterface) { } - public LinkProtocolResponse additionalInfo(List additionalInfo) { + public LinkProtocolResponse asset(LinkProtocolConnection asset) { - this.additionalInfo = additionalInfo; - return this; - } - - public LinkProtocolResponse addAdditionalInfoItem(AdditionalInfo additionalInfoItem) { - if (this.additionalInfo == null) { - this.additionalInfo = new ArrayList<>(); - } - this.additionalInfo.add(additionalInfoItem); + this.asset = asset; return this; } /** - * Get additionalInfo - * @return additionalInfo + * Get asset + * @return asset **/ @javax.annotation.Nullable - public List getAdditionalInfo() { - return additionalInfo; + public LinkProtocolConnection getAsset() { + return asset; } - public void setAdditionalInfo(List additionalInfo) { - this.additionalInfo = additionalInfo; - } - - - public LinkProtocolResponse connection(LinkProtocolConnection connection) { - - this.connection = connection; - return this; - } - - /** - * Get connection - * @return connection - **/ - @javax.annotation.Nullable - - public LinkProtocolConnection getConnection() { - return connection; - } - - - public void setConnection(LinkProtocolConnection connection) { - this.connection = connection; + public void setAsset(LinkProtocolConnection asset) { + this.asset = asset; } @@ -512,10 +527,12 @@ public boolean equals(Object o) { return false; } LinkProtocolResponse linkProtocolResponse = (LinkProtocolResponse) o; - return Objects.equals(this.uuid, linkProtocolResponse.uuid) && + return Objects.equals(this.href, linkProtocolResponse.href) && + Objects.equals(this.uuid, linkProtocolResponse.uuid) && Objects.equals(this.state, linkProtocolResponse.state) && Objects.equals(this.type, linkProtocolResponse.type) && Objects.equals(this.vlanTag, linkProtocolResponse.vlanTag) && + Objects.equals(this.vni, linkProtocolResponse.vni) && Objects.equals(this.vlanTagMin, linkProtocolResponse.vlanTagMin) && Objects.equals(this.vlanTagMax, linkProtocolResponse.vlanTagMax) && Objects.equals(this.vlanSTag, linkProtocolResponse.vlanSTag) && @@ -523,8 +540,7 @@ public boolean equals(Object o) { Objects.equals(this.vlanCTagMin, linkProtocolResponse.vlanCTagMin) && Objects.equals(this.vlanCTagMax, linkProtocolResponse.vlanCTagMax) && Objects.equals(this.subInterface, linkProtocolResponse.subInterface) && - Objects.equals(this.additionalInfo, linkProtocolResponse.additionalInfo) && - Objects.equals(this.connection, linkProtocolResponse.connection) && + Objects.equals(this.asset, linkProtocolResponse.asset) && Objects.equals(this.serviceToken, linkProtocolResponse.serviceToken) && Objects.equals(this.changeLog, linkProtocolResponse.changeLog)&& Objects.equals(this.additionalProperties, linkProtocolResponse.additionalProperties); @@ -532,17 +548,19 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash(uuid, state, type, vlanTag, vlanTagMin, vlanTagMax, vlanSTag, vlanCTag, vlanCTagMin, vlanCTagMax, subInterface, additionalInfo, connection, serviceToken, changeLog, additionalProperties); + return Objects.hash(href, uuid, state, type, vlanTag, vni, vlanTagMin, vlanTagMax, vlanSTag, vlanCTag, vlanCTagMin, vlanCTagMax, subInterface, asset, serviceToken, changeLog, additionalProperties); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class LinkProtocolResponse {\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" state: ").append(toIndentedString(state)).append("\n"); sb.append(" type: ").append(toIndentedString(type)).append("\n"); sb.append(" vlanTag: ").append(toIndentedString(vlanTag)).append("\n"); + sb.append(" vni: ").append(toIndentedString(vni)).append("\n"); sb.append(" vlanTagMin: ").append(toIndentedString(vlanTagMin)).append("\n"); sb.append(" vlanTagMax: ").append(toIndentedString(vlanTagMax)).append("\n"); sb.append(" vlanSTag: ").append(toIndentedString(vlanSTag)).append("\n"); @@ -550,8 +568,7 @@ public String toString() { sb.append(" vlanCTagMin: ").append(toIndentedString(vlanCTagMin)).append("\n"); sb.append(" vlanCTagMax: ").append(toIndentedString(vlanCTagMax)).append("\n"); sb.append(" subInterface: ").append(toIndentedString(subInterface)).append("\n"); - sb.append(" additionalInfo: ").append(toIndentedString(additionalInfo)).append("\n"); - sb.append(" connection: ").append(toIndentedString(connection)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); sb.append(" serviceToken: ").append(toIndentedString(serviceToken)).append("\n"); sb.append(" changeLog: ").append(toIndentedString(changeLog)).append("\n"); sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); @@ -577,10 +594,12 @@ private String toIndentedString(Object o) { static { // a set of all properties/fields (JSON key names) openapiFields = new HashSet(); + openapiFields.add("href"); openapiFields.add("uuid"); openapiFields.add("state"); openapiFields.add("type"); openapiFields.add("vlanTag"); + openapiFields.add("vni"); openapiFields.add("vlanTagMin"); openapiFields.add("vlanTagMax"); openapiFields.add("vlanSTag"); @@ -588,8 +607,7 @@ private String toIndentedString(Object o) { openapiFields.add("vlanCTagMin"); openapiFields.add("vlanCTagMax"); openapiFields.add("subInterface"); - openapiFields.add("additionalInfo"); - openapiFields.add("connection"); + openapiFields.add("asset"); openapiFields.add("serviceToken"); openapiFields.add("changeLog"); @@ -609,6 +627,9 @@ public static void validateJsonObject(JsonObject jsonObj) throws IOException { throw new IllegalArgumentException(String.format("The required field(s) %s in LinkProtocolResponse is not found in the empty JSON string", LinkProtocolResponse.openapiRequiredFields.toString())); } } + if ((jsonObj.get("href") != null && !jsonObj.get("href").isJsonNull()) && !jsonObj.get("href").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `href` to be a primitive type in the JSON string but got `%s`", jsonObj.get("href").toString())); + } if ((jsonObj.get("uuid") != null && !jsonObj.get("uuid").isJsonNull()) && !jsonObj.get("uuid").isJsonPrimitive()) { throw new IllegalArgumentException(String.format("Expected the field `uuid` to be a primitive type in the JSON string but got `%s`", jsonObj.get("uuid").toString())); } @@ -616,23 +637,9 @@ public static void validateJsonObject(JsonObject jsonObj) throws IOException { if (jsonObj.get("subInterface") != null && !jsonObj.get("subInterface").isJsonNull()) { SubInterface.validateJsonObject(jsonObj.getAsJsonObject("subInterface")); } - if (jsonObj.get("additionalInfo") != null && !jsonObj.get("additionalInfo").isJsonNull()) { - JsonArray jsonArrayadditionalInfo = jsonObj.getAsJsonArray("additionalInfo"); - if (jsonArrayadditionalInfo != null) { - // ensure the json data is an array - if (!jsonObj.get("additionalInfo").isJsonArray()) { - throw new IllegalArgumentException(String.format("Expected the field `additionalInfo` to be an array in the JSON string but got `%s`", jsonObj.get("additionalInfo").toString())); - } - - // validate the optional field `additionalInfo` (array) - for (int i = 0; i < jsonArrayadditionalInfo.size(); i++) { - AdditionalInfo.validateJsonObject(jsonArrayadditionalInfo.get(i).getAsJsonObject()); - }; - } - } - // validate the optional field `connection` - if (jsonObj.get("connection") != null && !jsonObj.get("connection").isJsonNull()) { - LinkProtocolConnection.validateJsonObject(jsonObj.getAsJsonObject("connection")); + // validate the optional field `asset` + if (jsonObj.get("asset") != null && !jsonObj.get("asset").isJsonNull()) { + LinkProtocolConnection.validateJsonObject(jsonObj.getAsJsonObject("asset")); } // validate the optional field `serviceToken` if (jsonObj.get("serviceToken") != null && !jsonObj.get("serviceToken").isJsonNull()) { diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectAllOf.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/MetalInterconnection.java similarity index 74% rename from equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectAllOf.java rename to equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/MetalInterconnection.java index f838443f..fb9072df 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectAllOf.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/MetalInterconnection.java @@ -20,7 +20,7 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import java.net.URI; +import java.util.UUID; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -44,36 +44,36 @@ import com.equinix.openapi.fabric.JSON; /** - * RouteFiltersDataProjectAllOf + * Metal Interconnection */ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class RouteFiltersDataProjectAllOf { - public static final String SERIALIZED_NAME_HREF = "href"; - @SerializedName(SERIALIZED_NAME_HREF) - private URI href; +public class MetalInterconnection { + public static final String SERIALIZED_NAME_UUID = "uuid"; + @SerializedName(SERIALIZED_NAME_UUID) + private UUID uuid; - public RouteFiltersDataProjectAllOf() { + public MetalInterconnection() { } - public RouteFiltersDataProjectAllOf href(URI href) { + public MetalInterconnection uuid(UUID uuid) { - this.href = href; + this.uuid = uuid; return this; } /** - * Project URI - * @return href + * Equinix Metal Interconnection + * @return uuid **/ @javax.annotation.Nullable - public URI getHref() { - return href; + public UUID getUuid() { + return uuid; } - public void setHref(URI href) { - this.href = href; + public void setUuid(UUID uuid) { + this.uuid = uuid; } /** @@ -89,9 +89,9 @@ public void setHref(URI href) { * * @param key name of the property * @param value value of the property - * @return the RouteFiltersDataProjectAllOf instance itself + * @return the MetalInterconnection instance itself */ - public RouteFiltersDataProjectAllOf putAdditionalProperty(String key, Object value) { + public MetalInterconnection putAdditionalProperty(String key, Object value) { if (this.additionalProperties == null) { this.additionalProperties = new HashMap(); } @@ -130,21 +130,21 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - RouteFiltersDataProjectAllOf routeFiltersDataProjectAllOf = (RouteFiltersDataProjectAllOf) o; - return Objects.equals(this.href, routeFiltersDataProjectAllOf.href)&& - Objects.equals(this.additionalProperties, routeFiltersDataProjectAllOf.additionalProperties); + MetalInterconnection metalInterconnection = (MetalInterconnection) o; + return Objects.equals(this.uuid, metalInterconnection.uuid)&& + Objects.equals(this.additionalProperties, metalInterconnection.additionalProperties); } @Override public int hashCode() { - return Objects.hash(href, additionalProperties); + return Objects.hash(uuid, additionalProperties); } @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class RouteFiltersDataProjectAllOf {\n"); - sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append("class MetalInterconnection {\n"); + sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); sb.append("}"); return sb.toString(); @@ -168,7 +168,7 @@ private String toIndentedString(Object o) { static { // a set of all properties/fields (JSON key names) openapiFields = new HashSet(); - openapiFields.add("href"); + openapiFields.add("uuid"); // a set of required properties/fields (JSON key names) openapiRequiredFields = new HashSet(); @@ -178,16 +178,16 @@ private String toIndentedString(Object o) { * Validates the JSON Object and throws an exception if issues found * * @param jsonObj JSON Object - * @throws IOException if the JSON Object is invalid with respect to RouteFiltersDataProjectAllOf + * @throws IOException if the JSON Object is invalid with respect to MetalInterconnection */ public static void validateJsonObject(JsonObject jsonObj) throws IOException { if (jsonObj == null) { - if (!RouteFiltersDataProjectAllOf.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null - throw new IllegalArgumentException(String.format("The required field(s) %s in RouteFiltersDataProjectAllOf is not found in the empty JSON string", RouteFiltersDataProjectAllOf.openapiRequiredFields.toString())); + if (!MetalInterconnection.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in MetalInterconnection is not found in the empty JSON string", MetalInterconnection.openapiRequiredFields.toString())); } } - if ((jsonObj.get("href") != null && !jsonObj.get("href").isJsonNull()) && !jsonObj.get("href").isJsonPrimitive()) { - throw new IllegalArgumentException(String.format("Expected the field `href` to be a primitive type in the JSON string but got `%s`", jsonObj.get("href").toString())); + if ((jsonObj.get("uuid") != null && !jsonObj.get("uuid").isJsonNull()) && !jsonObj.get("uuid").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `uuid` to be a primitive type in the JSON string but got `%s`", jsonObj.get("uuid").toString())); } } @@ -195,16 +195,16 @@ public static class CustomTypeAdapterFactory implements TypeAdapterFactory { @SuppressWarnings("unchecked") @Override public TypeAdapter create(Gson gson, TypeToken type) { - if (!RouteFiltersDataProjectAllOf.class.isAssignableFrom(type.getRawType())) { - return null; // this class only serializes 'RouteFiltersDataProjectAllOf' and its subtypes + if (!MetalInterconnection.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'MetalInterconnection' and its subtypes } final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); - final TypeAdapter thisAdapter - = gson.getDelegateAdapter(this, TypeToken.get(RouteFiltersDataProjectAllOf.class)); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(MetalInterconnection.class)); - return (TypeAdapter) new TypeAdapter() { + return (TypeAdapter) new TypeAdapter() { @Override - public void write(JsonWriter out, RouteFiltersDataProjectAllOf value) throws IOException { + public void write(JsonWriter out, MetalInterconnection value) throws IOException { JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); obj.remove("additionalProperties"); // serialize additional properties @@ -227,11 +227,11 @@ else if (entry.getValue() instanceof Character) } @Override - public RouteFiltersDataProjectAllOf read(JsonReader in) throws IOException { + public MetalInterconnection read(JsonReader in) throws IOException { JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); validateJsonObject(jsonObj); // store additional fields in the deserialized instance - RouteFiltersDataProjectAllOf instance = thisAdapter.fromJsonTree(jsonObj); + MetalInterconnection instance = thisAdapter.fromJsonTree(jsonObj); for (Map.Entry entry : jsonObj.entrySet()) { if (!openapiFields.contains(entry.getKey())) { if (entry.getValue().isJsonPrimitive()) { // primitive type @@ -258,18 +258,18 @@ else if (entry.getValue().getAsJsonPrimitive().isBoolean()) } /** - * Create an instance of RouteFiltersDataProjectAllOf given an JSON string + * Create an instance of MetalInterconnection given an JSON string * * @param jsonString JSON string - * @return An instance of RouteFiltersDataProjectAllOf - * @throws IOException if the JSON string is invalid with respect to RouteFiltersDataProjectAllOf + * @return An instance of MetalInterconnection + * @throws IOException if the JSON string is invalid with respect to MetalInterconnection */ - public static RouteFiltersDataProjectAllOf fromJson(String jsonString) throws IOException { - return JSON.getGson().fromJson(jsonString, RouteFiltersDataProjectAllOf.class); + public static MetalInterconnection fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, MetalInterconnection.class); } /** - * Convert an instance of RouteFiltersDataProjectAllOf to an JSON string + * Convert an instance of MetalInterconnection to an JSON string * * @return JSON string */ diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/NetworkScope.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/NetworkScope.java index e7c98a8e..cbdaf0c8 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/NetworkScope.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/NetworkScope.java @@ -30,7 +30,9 @@ public enum NetworkScope { REGIONAL("REGIONAL"), - GLOBAL("GLOBAL"); + GLOBAL("GLOBAL"), + + LOCAL("LOCAL"); private String value; diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PackageRequest.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageRequest.java similarity index 83% rename from equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PackageRequest.java rename to equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageRequest.java index fa27c837..868a09fc 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PackageRequest.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageRequest.java @@ -47,7 +47,7 @@ * EPT Package Request */ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class PackageRequest { +public class PrecisionTimePackageRequest { public static final String SERIALIZED_NAME_HREF = "href"; @SerializedName(SERIALIZED_NAME_HREF) private URI href; @@ -107,10 +107,10 @@ public CodeEnum read(final JsonReader jsonReader) throws IOException { @SerializedName(SERIALIZED_NAME_CODE) private CodeEnum code; - public PackageRequest() { + public PrecisionTimePackageRequest() { } - public PackageRequest href(URI href) { + public PrecisionTimePackageRequest href(URI href) { this.href = href; return this; @@ -132,7 +132,7 @@ public void setHref(URI href) { } - public PackageRequest code(CodeEnum code) { + public PrecisionTimePackageRequest code(CodeEnum code) { this.code = code; return this; @@ -166,9 +166,9 @@ public void setCode(CodeEnum code) { * * @param key name of the property * @param value value of the property - * @return the PackageRequest instance itself + * @return the PrecisionTimePackageRequest instance itself */ - public PackageRequest putAdditionalProperty(String key, Object value) { + public PrecisionTimePackageRequest putAdditionalProperty(String key, Object value) { if (this.additionalProperties == null) { this.additionalProperties = new HashMap(); } @@ -207,10 +207,10 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PackageRequest packageRequest = (PackageRequest) o; - return Objects.equals(this.href, packageRequest.href) && - Objects.equals(this.code, packageRequest.code)&& - Objects.equals(this.additionalProperties, packageRequest.additionalProperties); + PrecisionTimePackageRequest precisionTimePackageRequest = (PrecisionTimePackageRequest) o; + return Objects.equals(this.href, precisionTimePackageRequest.href) && + Objects.equals(this.code, precisionTimePackageRequest.code)&& + Objects.equals(this.additionalProperties, precisionTimePackageRequest.additionalProperties); } @Override @@ -221,7 +221,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class PackageRequest {\n"); + sb.append("class PrecisionTimePackageRequest {\n"); sb.append(" href: ").append(toIndentedString(href)).append("\n"); sb.append(" code: ").append(toIndentedString(code)).append("\n"); sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); @@ -259,17 +259,17 @@ private String toIndentedString(Object o) { * Validates the JSON Object and throws an exception if issues found * * @param jsonObj JSON Object - * @throws IOException if the JSON Object is invalid with respect to PackageRequest + * @throws IOException if the JSON Object is invalid with respect to PrecisionTimePackageRequest */ public static void validateJsonObject(JsonObject jsonObj) throws IOException { if (jsonObj == null) { - if (!PackageRequest.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null - throw new IllegalArgumentException(String.format("The required field(s) %s in PackageRequest is not found in the empty JSON string", PackageRequest.openapiRequiredFields.toString())); + if (!PrecisionTimePackageRequest.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in PrecisionTimePackageRequest is not found in the empty JSON string", PrecisionTimePackageRequest.openapiRequiredFields.toString())); } } // check to make sure all required properties/fields are present in the JSON string - for (String requiredField : PackageRequest.openapiRequiredFields) { + for (String requiredField : PrecisionTimePackageRequest.openapiRequiredFields) { if (jsonObj.get(requiredField) == null) { throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonObj.toString())); } @@ -286,16 +286,16 @@ public static class CustomTypeAdapterFactory implements TypeAdapterFactory { @SuppressWarnings("unchecked") @Override public TypeAdapter create(Gson gson, TypeToken type) { - if (!PackageRequest.class.isAssignableFrom(type.getRawType())) { - return null; // this class only serializes 'PackageRequest' and its subtypes + if (!PrecisionTimePackageRequest.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'PrecisionTimePackageRequest' and its subtypes } final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); - final TypeAdapter thisAdapter - = gson.getDelegateAdapter(this, TypeToken.get(PackageRequest.class)); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(PrecisionTimePackageRequest.class)); - return (TypeAdapter) new TypeAdapter() { + return (TypeAdapter) new TypeAdapter() { @Override - public void write(JsonWriter out, PackageRequest value) throws IOException { + public void write(JsonWriter out, PrecisionTimePackageRequest value) throws IOException { JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); obj.remove("additionalProperties"); // serialize additional properties @@ -318,11 +318,11 @@ else if (entry.getValue() instanceof Character) } @Override - public PackageRequest read(JsonReader in) throws IOException { + public PrecisionTimePackageRequest read(JsonReader in) throws IOException { JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); validateJsonObject(jsonObj); // store additional fields in the deserialized instance - PackageRequest instance = thisAdapter.fromJsonTree(jsonObj); + PrecisionTimePackageRequest instance = thisAdapter.fromJsonTree(jsonObj); for (Map.Entry entry : jsonObj.entrySet()) { if (!openapiFields.contains(entry.getKey())) { if (entry.getValue().isJsonPrimitive()) { // primitive type @@ -349,18 +349,18 @@ else if (entry.getValue().getAsJsonPrimitive().isBoolean()) } /** - * Create an instance of PackageRequest given an JSON string + * Create an instance of PrecisionTimePackageRequest given an JSON string * * @param jsonString JSON string - * @return An instance of PackageRequest - * @throws IOException if the JSON string is invalid with respect to PackageRequest + * @return An instance of PrecisionTimePackageRequest + * @throws IOException if the JSON string is invalid with respect to PrecisionTimePackageRequest */ - public static PackageRequest fromJson(String jsonString) throws IOException { - return JSON.getGson().fromJson(jsonString, PackageRequest.class); + public static PrecisionTimePackageRequest fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, PrecisionTimePackageRequest.class); } /** - * Convert an instance of PackageRequest to an JSON string + * Convert an instance of PrecisionTimePackageRequest to an JSON string * * @return JSON string */ diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponse.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponse.java new file mode 100644 index 00000000..cd189ee9 --- /dev/null +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponse.java @@ -0,0 +1,717 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import java.util.Objects; +import java.util.Arrays; +import com.equinix.openapi.fabric.v4.model.Changelog; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.net.URI; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParseException; +import com.google.gson.TypeAdapterFactory; +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Type; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import com.equinix.openapi.fabric.JSON; + +/** + * EPT Service Package Information + */ +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class PrecisionTimePackageResponse { + public static final String SERIALIZED_NAME_HREF = "href"; + @SerializedName(SERIALIZED_NAME_HREF) + private URI href; + + /** + * Gets or Sets code + */ + @JsonAdapter(CodeEnum.Adapter.class) + public enum CodeEnum { + NTP_STANDARD("NTP_STANDARD"), + + NTP_ENTERPRISE("NTP_ENTERPRISE"), + + PTP_STANDARD("PTP_STANDARD"), + + PTP_ENTERPRISE("PTP_ENTERPRISE"); + + private String value; + + CodeEnum(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static CodeEnum fromValue(String value) { + for (CodeEnum b : CodeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final CodeEnum enumeration) throws IOException { + jsonWriter.value(enumeration.getValue()); + } + + @Override + public CodeEnum read(final JsonReader jsonReader) throws IOException { + String value = jsonReader.nextString(); + return CodeEnum.fromValue(value); + } + } + } + + public static final String SERIALIZED_NAME_CODE = "code"; + @SerializedName(SERIALIZED_NAME_CODE) + private CodeEnum code; + + /** + * Gets or Sets type + */ + @JsonAdapter(TypeEnum.Adapter.class) + public enum TypeEnum { + TIME_SERVICE_PACKAGE("TIME_SERVICE_PACKAGE"); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final TypeEnum enumeration) throws IOException { + jsonWriter.value(enumeration.getValue()); + } + + @Override + public TypeEnum read(final JsonReader jsonReader) throws IOException { + String value = jsonReader.nextString(); + return TypeEnum.fromValue(value); + } + } + } + + public static final String SERIALIZED_NAME_TYPE = "type"; + @SerializedName(SERIALIZED_NAME_TYPE) + private TypeEnum type; + + public static final String SERIALIZED_NAME_BANDWIDTH = "bandwidth"; + @SerializedName(SERIALIZED_NAME_BANDWIDTH) + private Integer bandwidth; + + public static final String SERIALIZED_NAME_CLIENTS_PER_SECOND_MAX = "clientsPerSecondMax"; + @SerializedName(SERIALIZED_NAME_CLIENTS_PER_SECOND_MAX) + private Integer clientsPerSecondMax; + + public static final String SERIALIZED_NAME_REDUNDANCY_SUPPORTED = "redundancySupported"; + @SerializedName(SERIALIZED_NAME_REDUNDANCY_SUPPORTED) + private Boolean redundancySupported; + + public static final String SERIALIZED_NAME_MULTI_SUBNET_SUPPORTED = "multiSubnetSupported"; + @SerializedName(SERIALIZED_NAME_MULTI_SUBNET_SUPPORTED) + private Boolean multiSubnetSupported; + + public static final String SERIALIZED_NAME_ACCURACY_UNIT = "accuracyUnit"; + @SerializedName(SERIALIZED_NAME_ACCURACY_UNIT) + private String accuracyUnit; + + public static final String SERIALIZED_NAME_ACCURACY_SLA = "accuracySla"; + @SerializedName(SERIALIZED_NAME_ACCURACY_SLA) + private Integer accuracySla; + + public static final String SERIALIZED_NAME_ACCURACY_AVG_MIN = "accuracyAvgMin"; + @SerializedName(SERIALIZED_NAME_ACCURACY_AVG_MIN) + private Integer accuracyAvgMin; + + public static final String SERIALIZED_NAME_ACCURACY_AVG_MAX = "accuracyAvgMax"; + @SerializedName(SERIALIZED_NAME_ACCURACY_AVG_MAX) + private Integer accuracyAvgMax; + + public static final String SERIALIZED_NAME_CHANGELOG = "changelog"; + @SerializedName(SERIALIZED_NAME_CHANGELOG) + private Changelog changelog; + + public PrecisionTimePackageResponse() { + } + + public PrecisionTimePackageResponse href(URI href) { + + this.href = href; + return this; + } + + /** + * Get href + * @return href + **/ + @javax.annotation.Nullable + + public URI getHref() { + return href; + } + + + public void setHref(URI href) { + this.href = href; + } + + + public PrecisionTimePackageResponse code(CodeEnum code) { + + this.code = code; + return this; + } + + /** + * Get code + * @return code + **/ + @javax.annotation.Nonnull + + public CodeEnum getCode() { + return code; + } + + + public void setCode(CodeEnum code) { + this.code = code; + } + + + public PrecisionTimePackageResponse type(TypeEnum type) { + + this.type = type; + return this; + } + + /** + * Get type + * @return type + **/ + @javax.annotation.Nullable + + public TypeEnum getType() { + return type; + } + + + public void setType(TypeEnum type) { + this.type = type; + } + + + public PrecisionTimePackageResponse bandwidth(Integer bandwidth) { + + this.bandwidth = bandwidth; + return this; + } + + /** + * Get bandwidth + * @return bandwidth + **/ + @javax.annotation.Nullable + + public Integer getBandwidth() { + return bandwidth; + } + + + public void setBandwidth(Integer bandwidth) { + this.bandwidth = bandwidth; + } + + + public PrecisionTimePackageResponse clientsPerSecondMax(Integer clientsPerSecondMax) { + + this.clientsPerSecondMax = clientsPerSecondMax; + return this; + } + + /** + * Get clientsPerSecondMax + * @return clientsPerSecondMax + **/ + @javax.annotation.Nullable + + public Integer getClientsPerSecondMax() { + return clientsPerSecondMax; + } + + + public void setClientsPerSecondMax(Integer clientsPerSecondMax) { + this.clientsPerSecondMax = clientsPerSecondMax; + } + + + public PrecisionTimePackageResponse redundancySupported(Boolean redundancySupported) { + + this.redundancySupported = redundancySupported; + return this; + } + + /** + * Get redundancySupported + * @return redundancySupported + **/ + @javax.annotation.Nullable + + public Boolean getRedundancySupported() { + return redundancySupported; + } + + + public void setRedundancySupported(Boolean redundancySupported) { + this.redundancySupported = redundancySupported; + } + + + public PrecisionTimePackageResponse multiSubnetSupported(Boolean multiSubnetSupported) { + + this.multiSubnetSupported = multiSubnetSupported; + return this; + } + + /** + * Get multiSubnetSupported + * @return multiSubnetSupported + **/ + @javax.annotation.Nullable + + public Boolean getMultiSubnetSupported() { + return multiSubnetSupported; + } + + + public void setMultiSubnetSupported(Boolean multiSubnetSupported) { + this.multiSubnetSupported = multiSubnetSupported; + } + + + public PrecisionTimePackageResponse accuracyUnit(String accuracyUnit) { + + this.accuracyUnit = accuracyUnit; + return this; + } + + /** + * Get accuracyUnit + * @return accuracyUnit + **/ + @javax.annotation.Nullable + + public String getAccuracyUnit() { + return accuracyUnit; + } + + + public void setAccuracyUnit(String accuracyUnit) { + this.accuracyUnit = accuracyUnit; + } + + + public PrecisionTimePackageResponse accuracySla(Integer accuracySla) { + + this.accuracySla = accuracySla; + return this; + } + + /** + * Get accuracySla + * @return accuracySla + **/ + @javax.annotation.Nullable + + public Integer getAccuracySla() { + return accuracySla; + } + + + public void setAccuracySla(Integer accuracySla) { + this.accuracySla = accuracySla; + } + + + public PrecisionTimePackageResponse accuracyAvgMin(Integer accuracyAvgMin) { + + this.accuracyAvgMin = accuracyAvgMin; + return this; + } + + /** + * Get accuracyAvgMin + * @return accuracyAvgMin + **/ + @javax.annotation.Nullable + + public Integer getAccuracyAvgMin() { + return accuracyAvgMin; + } + + + public void setAccuracyAvgMin(Integer accuracyAvgMin) { + this.accuracyAvgMin = accuracyAvgMin; + } + + + public PrecisionTimePackageResponse accuracyAvgMax(Integer accuracyAvgMax) { + + this.accuracyAvgMax = accuracyAvgMax; + return this; + } + + /** + * Get accuracyAvgMax + * @return accuracyAvgMax + **/ + @javax.annotation.Nullable + + public Integer getAccuracyAvgMax() { + return accuracyAvgMax; + } + + + public void setAccuracyAvgMax(Integer accuracyAvgMax) { + this.accuracyAvgMax = accuracyAvgMax; + } + + + public PrecisionTimePackageResponse changelog(Changelog changelog) { + + this.changelog = changelog; + return this; + } + + /** + * Get changelog + * @return changelog + **/ + @javax.annotation.Nullable + + public Changelog getChangelog() { + return changelog; + } + + + public void setChangelog(Changelog changelog) { + this.changelog = changelog; + } + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. + * If the property does not already exist, create it otherwise replace it. + * + * @param key name of the property + * @param value value of the property + * @return the PrecisionTimePackageResponse instance itself + */ + public PrecisionTimePackageResponse putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return a map of objects + */ + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key name of the property + * @return an object + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PrecisionTimePackageResponse precisionTimePackageResponse = (PrecisionTimePackageResponse) o; + return Objects.equals(this.href, precisionTimePackageResponse.href) && + Objects.equals(this.code, precisionTimePackageResponse.code) && + Objects.equals(this.type, precisionTimePackageResponse.type) && + Objects.equals(this.bandwidth, precisionTimePackageResponse.bandwidth) && + Objects.equals(this.clientsPerSecondMax, precisionTimePackageResponse.clientsPerSecondMax) && + Objects.equals(this.redundancySupported, precisionTimePackageResponse.redundancySupported) && + Objects.equals(this.multiSubnetSupported, precisionTimePackageResponse.multiSubnetSupported) && + Objects.equals(this.accuracyUnit, precisionTimePackageResponse.accuracyUnit) && + Objects.equals(this.accuracySla, precisionTimePackageResponse.accuracySla) && + Objects.equals(this.accuracyAvgMin, precisionTimePackageResponse.accuracyAvgMin) && + Objects.equals(this.accuracyAvgMax, precisionTimePackageResponse.accuracyAvgMax) && + Objects.equals(this.changelog, precisionTimePackageResponse.changelog)&& + Objects.equals(this.additionalProperties, precisionTimePackageResponse.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(href, code, type, bandwidth, clientsPerSecondMax, redundancySupported, multiSubnetSupported, accuracyUnit, accuracySla, accuracyAvgMin, accuracyAvgMax, changelog, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PrecisionTimePackageResponse {\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" code: ").append(toIndentedString(code)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" bandwidth: ").append(toIndentedString(bandwidth)).append("\n"); + sb.append(" clientsPerSecondMax: ").append(toIndentedString(clientsPerSecondMax)).append("\n"); + sb.append(" redundancySupported: ").append(toIndentedString(redundancySupported)).append("\n"); + sb.append(" multiSubnetSupported: ").append(toIndentedString(multiSubnetSupported)).append("\n"); + sb.append(" accuracyUnit: ").append(toIndentedString(accuracyUnit)).append("\n"); + sb.append(" accuracySla: ").append(toIndentedString(accuracySla)).append("\n"); + sb.append(" accuracyAvgMin: ").append(toIndentedString(accuracyAvgMin)).append("\n"); + sb.append(" accuracyAvgMax: ").append(toIndentedString(accuracyAvgMax)).append("\n"); + sb.append(" changelog: ").append(toIndentedString(changelog)).append("\n"); + sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + + public static HashSet openapiFields; + public static HashSet openapiRequiredFields; + + static { + // a set of all properties/fields (JSON key names) + openapiFields = new HashSet(); + openapiFields.add("href"); + openapiFields.add("code"); + openapiFields.add("type"); + openapiFields.add("bandwidth"); + openapiFields.add("clientsPerSecondMax"); + openapiFields.add("redundancySupported"); + openapiFields.add("multiSubnetSupported"); + openapiFields.add("accuracyUnit"); + openapiFields.add("accuracySla"); + openapiFields.add("accuracyAvgMin"); + openapiFields.add("accuracyAvgMax"); + openapiFields.add("changelog"); + + // a set of required properties/fields (JSON key names) + openapiRequiredFields = new HashSet(); + openapiRequiredFields.add("code"); + } + + /** + * Validates the JSON Object and throws an exception if issues found + * + * @param jsonObj JSON Object + * @throws IOException if the JSON Object is invalid with respect to PrecisionTimePackageResponse + */ + public static void validateJsonObject(JsonObject jsonObj) throws IOException { + if (jsonObj == null) { + if (!PrecisionTimePackageResponse.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in PrecisionTimePackageResponse is not found in the empty JSON string", PrecisionTimePackageResponse.openapiRequiredFields.toString())); + } + } + + // check to make sure all required properties/fields are present in the JSON string + for (String requiredField : PrecisionTimePackageResponse.openapiRequiredFields) { + if (jsonObj.get(requiredField) == null) { + throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonObj.toString())); + } + } + if ((jsonObj.get("href") != null && !jsonObj.get("href").isJsonNull()) && !jsonObj.get("href").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `href` to be a primitive type in the JSON string but got `%s`", jsonObj.get("href").toString())); + } + if (!jsonObj.get("code").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `code` to be a primitive type in the JSON string but got `%s`", jsonObj.get("code").toString())); + } + if ((jsonObj.get("type") != null && !jsonObj.get("type").isJsonNull()) && !jsonObj.get("type").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `type` to be a primitive type in the JSON string but got `%s`", jsonObj.get("type").toString())); + } + if ((jsonObj.get("accuracyUnit") != null && !jsonObj.get("accuracyUnit").isJsonNull()) && !jsonObj.get("accuracyUnit").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `accuracyUnit` to be a primitive type in the JSON string but got `%s`", jsonObj.get("accuracyUnit").toString())); + } + // validate the optional field `changelog` + if (jsonObj.get("changelog") != null && !jsonObj.get("changelog").isJsonNull()) { + Changelog.validateJsonObject(jsonObj.getAsJsonObject("changelog")); + } + } + + public static class CustomTypeAdapterFactory implements TypeAdapterFactory { + @SuppressWarnings("unchecked") + @Override + public TypeAdapter create(Gson gson, TypeToken type) { + if (!PrecisionTimePackageResponse.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'PrecisionTimePackageResponse' and its subtypes + } + final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(PrecisionTimePackageResponse.class)); + + return (TypeAdapter) new TypeAdapter() { + @Override + public void write(JsonWriter out, PrecisionTimePackageResponse value) throws IOException { + JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); + obj.remove("additionalProperties"); + // serialize additional properties + if (value.getAdditionalProperties() != null) { + for (Map.Entry entry : value.getAdditionalProperties().entrySet()) { + if (entry.getValue() instanceof String) + obj.addProperty(entry.getKey(), (String) entry.getValue()); + else if (entry.getValue() instanceof Number) + obj.addProperty(entry.getKey(), (Number) entry.getValue()); + else if (entry.getValue() instanceof Boolean) + obj.addProperty(entry.getKey(), (Boolean) entry.getValue()); + else if (entry.getValue() instanceof Character) + obj.addProperty(entry.getKey(), (Character) entry.getValue()); + else { + obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject()); + } + } + } + elementAdapter.write(out, obj); + } + + @Override + public PrecisionTimePackageResponse read(JsonReader in) throws IOException { + JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); + validateJsonObject(jsonObj); + // store additional fields in the deserialized instance + PrecisionTimePackageResponse instance = thisAdapter.fromJsonTree(jsonObj); + for (Map.Entry entry : jsonObj.entrySet()) { + if (!openapiFields.contains(entry.getKey())) { + if (entry.getValue().isJsonPrimitive()) { // primitive type + if (entry.getValue().getAsJsonPrimitive().isString()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString()); + else if (entry.getValue().getAsJsonPrimitive().isNumber()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber()); + else if (entry.getValue().getAsJsonPrimitive().isBoolean()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean()); + else + throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString())); + } else if (entry.getValue().isJsonArray()) { + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class)); + } else { // JSON object + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class)); + } + } + } + return instance; + } + + }.nullSafe(); + } + } + + /** + * Create an instance of PrecisionTimePackageResponse given an JSON string + * + * @param jsonString JSON string + * @return An instance of PrecisionTimePackageResponse + * @throws IOException if the JSON string is invalid with respect to PrecisionTimePackageResponse + */ + public static PrecisionTimePackageResponse fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, PrecisionTimePackageResponse.class); + } + + /** + * Convert an instance of PrecisionTimePackageResponse to an JSON string + * + * @return JSON string + */ + public String toJson() { + return JSON.getGson().toJson(this); + } +} + diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponse.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponse.java index 8836e0f6..dce9881e 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponse.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponse.java @@ -18,7 +18,7 @@ import com.equinix.openapi.fabric.v4.model.AdvanceConfiguration; import com.equinix.openapi.fabric.v4.model.FabricConnectionUuid; import com.equinix.openapi.fabric.v4.model.Ipv4; -import com.equinix.openapi.fabric.v4.model.PackageResponse; +import com.equinix.openapi.fabric.v4.model.PrecisionTimePackageResponse; import com.equinix.openapi.fabric.v4.model.Project; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; @@ -193,7 +193,7 @@ public StateEnum read(final JsonReader jsonReader) throws IOException { public static final String SERIALIZED_NAME_PACKAGE = "package"; @SerializedName(SERIALIZED_NAME_PACKAGE) - private PackageResponse _package; + private PrecisionTimePackageResponse _package; public static final String SERIALIZED_NAME_CONNECTIONS = "connections"; @SerializedName(SERIALIZED_NAME_CONNECTIONS) @@ -350,7 +350,7 @@ public void setState(StateEnum state) { } - public PrecisionTimeServiceCreateResponse _package(PackageResponse _package) { + public PrecisionTimeServiceCreateResponse _package(PrecisionTimePackageResponse _package) { this._package = _package; return this; @@ -362,12 +362,12 @@ public PrecisionTimeServiceCreateResponse _package(PackageResponse _package) { **/ @javax.annotation.Nonnull - public PackageResponse getPackage() { + public PrecisionTimePackageResponse getPackage() { return _package; } - public void setPackage(PackageResponse _package) { + public void setPackage(PrecisionTimePackageResponse _package) { this._package = _package; } @@ -664,7 +664,7 @@ public static void validateJsonObject(JsonObject jsonObj) throws IOException { throw new IllegalArgumentException(String.format("Expected the field `state` to be a primitive type in the JSON string but got `%s`", jsonObj.get("state").toString())); } // validate the required field `package` - PackageResponse.validateJsonObject(jsonObj.getAsJsonObject("package")); + PrecisionTimePackageResponse.validateJsonObject(jsonObj.getAsJsonObject("package")); if (jsonObj.get("connections") != null && !jsonObj.get("connections").isJsonNull()) { JsonArray jsonArrayconnections = jsonObj.getAsJsonArray("connections"); if (jsonArrayconnections != null) { diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequest.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequest.java index a9e75515..233e3c6c 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequest.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequest.java @@ -17,7 +17,7 @@ import com.equinix.openapi.fabric.v4.model.AdvanceConfiguration; import com.equinix.openapi.fabric.v4.model.FabricConnectionUuid; import com.equinix.openapi.fabric.v4.model.Ipv4; -import com.equinix.openapi.fabric.v4.model.PackageRequest; +import com.equinix.openapi.fabric.v4.model.PrecisionTimePackageRequest; import com.equinix.openapi.fabric.v4.model.Project; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; @@ -115,7 +115,7 @@ public TypeEnum read(final JsonReader jsonReader) throws IOException { public static final String SERIALIZED_NAME_PACKAGE = "package"; @SerializedName(SERIALIZED_NAME_PACKAGE) - private PackageRequest _package; + private PrecisionTimePackageRequest _package; public static final String SERIALIZED_NAME_CONNECTIONS = "connections"; @SerializedName(SERIALIZED_NAME_CONNECTIONS) @@ -202,7 +202,7 @@ public void setDescription(String description) { } - public PrecisionTimeServiceRequest _package(PackageRequest _package) { + public PrecisionTimeServiceRequest _package(PrecisionTimePackageRequest _package) { this._package = _package; return this; @@ -214,12 +214,12 @@ public PrecisionTimeServiceRequest _package(PackageRequest _package) { **/ @javax.annotation.Nonnull - public PackageRequest getPackage() { + public PrecisionTimePackageRequest getPackage() { return _package; } - public void setPackage(PackageRequest _package) { + public void setPackage(PrecisionTimePackageRequest _package) { this._package = _package; } @@ -469,7 +469,7 @@ public static void validateJsonObject(JsonObject jsonObj) throws IOException { throw new IllegalArgumentException(String.format("Expected the field `description` to be a primitive type in the JSON string but got `%s`", jsonObj.get("description").toString())); } // validate the required field `package` - PackageRequest.validateJsonObject(jsonObj.getAsJsonObject("package")); + PrecisionTimePackageRequest.validateJsonObject(jsonObj.getAsJsonObject("package")); // ensure the json data is an array if (!jsonObj.get("connections").isJsonArray()) { throw new IllegalArgumentException(String.format("Expected the field `connections` to be an array in the JSON string but got `%s`", jsonObj.get("connections").toString())); diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleState.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleState.java new file mode 100644 index 00000000..23ee900a --- /dev/null +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleState.java @@ -0,0 +1,82 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import java.util.Objects; +import java.util.Arrays; +import com.google.gson.annotations.SerializedName; + +import java.io.IOException; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; + +/** + * Route Filter Rule status + */ +@JsonAdapter(RouteFilterRuleState.Adapter.class) +public enum RouteFilterRuleState { + + PROVISIONING("PROVISIONING"), + + REPROVISIONING("REPROVISIONING"), + + DEPROVISIONING("DEPROVISIONING"), + + PROVISIONED("PROVISIONED"), + + DEPROVISIONED("DEPROVISIONED"), + + NOT_PROVISIONED("NOT_PROVISIONED"), + + NOT_DEPROVISIONED("NOT_DEPROVISIONED"); + + private String value; + + RouteFilterRuleState(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static RouteFilterRuleState fromValue(String value) { + for (RouteFilterRuleState b : RouteFilterRuleState.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final RouteFilterRuleState enumeration) throws IOException { + jsonWriter.value(enumeration.getValue()); + } + + @Override + public RouteFilterRuleState read(final JsonReader jsonReader) throws IOException { + String value = jsonReader.nextString(); + return RouteFilterRuleState.fromValue(value); + } + } +} + diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesData.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesData.java index ee7f07f9..f2d9eb35 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesData.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesData.java @@ -15,6 +15,7 @@ import java.util.Objects; import java.util.Arrays; import com.equinix.openapi.fabric.v4.model.Changelog; +import com.equinix.openapi.fabric.v4.model.RouteFilterRuleState; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesChange; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; @@ -118,6 +119,10 @@ public TypeEnum read(final JsonReader jsonReader) throws IOException { @SerializedName(SERIALIZED_NAME_DESCRIPTION) private String description; + public static final String SERIALIZED_NAME_STATE = "state"; + @SerializedName(SERIALIZED_NAME_STATE) + private RouteFilterRuleState state; + public static final String SERIALIZED_NAME_PREFIX_MATCH = "prefixMatch"; @SerializedName(SERIALIZED_NAME_PREFIX_MATCH) private String prefixMatch = "orlonger"; @@ -298,6 +303,28 @@ public void setDescription(String description) { } + public RouteFilterRulesData state(RouteFilterRuleState state) { + + this.state = state; + return this; + } + + /** + * Get state + * @return state + **/ + @javax.annotation.Nullable + + public RouteFilterRuleState getState() { + return state; + } + + + public void setState(RouteFilterRuleState state) { + this.state = state; + } + + public RouteFilterRulesData prefixMatch(String prefixMatch) { this.prefixMatch = prefixMatch; @@ -467,6 +494,7 @@ public boolean equals(Object o) { Objects.equals(this.uuid, routeFilterRulesData.uuid) && Objects.equals(this.name, routeFilterRulesData.name) && Objects.equals(this.description, routeFilterRulesData.description) && + Objects.equals(this.state, routeFilterRulesData.state) && Objects.equals(this.prefixMatch, routeFilterRulesData.prefixMatch) && Objects.equals(this.change, routeFilterRulesData.change) && Objects.equals(this.action, routeFilterRulesData.action) && @@ -477,7 +505,7 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash(href, type, uuid, name, description, prefixMatch, change, action, prefix, changelog, additionalProperties); + return Objects.hash(href, type, uuid, name, description, state, prefixMatch, change, action, prefix, changelog, additionalProperties); } @Override @@ -489,6 +517,7 @@ public String toString() { sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" name: ").append(toIndentedString(name)).append("\n"); sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" state: ").append(toIndentedString(state)).append("\n"); sb.append(" prefixMatch: ").append(toIndentedString(prefixMatch)).append("\n"); sb.append(" change: ").append(toIndentedString(change)).append("\n"); sb.append(" action: ").append(toIndentedString(action)).append("\n"); @@ -522,6 +551,7 @@ private String toIndentedString(Object o) { openapiFields.add("uuid"); openapiFields.add("name"); openapiFields.add("description"); + openapiFields.add("state"); openapiFields.add("prefixMatch"); openapiFields.add("change"); openapiFields.add("action"); diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItem.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItem.java new file mode 100644 index 00000000..d578ad81 --- /dev/null +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItem.java @@ -0,0 +1,350 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import java.util.Objects; +import java.util.Arrays; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParseException; +import com.google.gson.TypeAdapterFactory; +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Type; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import com.equinix.openapi.fabric.JSON; + +/** + * Route Filter Rule change operation data + */ +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class RouteFilterRulesPatchRequestItem { + public static final String SERIALIZED_NAME_OP = "op"; + @SerializedName(SERIALIZED_NAME_OP) + private String op; + + public static final String SERIALIZED_NAME_PATH = "path"; + @SerializedName(SERIALIZED_NAME_PATH) + private String path; + + public static final String SERIALIZED_NAME_VALUE = "value"; + @SerializedName(SERIALIZED_NAME_VALUE) + private Object value; + + public RouteFilterRulesPatchRequestItem() { + } + + public RouteFilterRulesPatchRequestItem op(String op) { + + this.op = op; + return this; + } + + /** + * Handy shortcut for operation name + * @return op + **/ + @javax.annotation.Nonnull + + public String getOp() { + return op; + } + + + public void setOp(String op) { + this.op = op; + } + + + public RouteFilterRulesPatchRequestItem path(String path) { + + this.path = path; + return this; + } + + /** + * path to change + * @return path + **/ + @javax.annotation.Nonnull + + public String getPath() { + return path; + } + + + public void setPath(String path) { + this.path = path; + } + + + public RouteFilterRulesPatchRequestItem value(Object value) { + + this.value = value; + return this; + } + + /** + * new value for updated parameter + * @return value + **/ + @javax.annotation.Nonnull + + public Object getValue() { + return value; + } + + + public void setValue(Object value) { + this.value = value; + } + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. + * If the property does not already exist, create it otherwise replace it. + * + * @param key name of the property + * @param value value of the property + * @return the RouteFilterRulesPatchRequestItem instance itself + */ + public RouteFilterRulesPatchRequestItem putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return a map of objects + */ + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key name of the property + * @return an object + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RouteFilterRulesPatchRequestItem routeFilterRulesPatchRequestItem = (RouteFilterRulesPatchRequestItem) o; + return Objects.equals(this.op, routeFilterRulesPatchRequestItem.op) && + Objects.equals(this.path, routeFilterRulesPatchRequestItem.path) && + Objects.equals(this.value, routeFilterRulesPatchRequestItem.value)&& + Objects.equals(this.additionalProperties, routeFilterRulesPatchRequestItem.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(op, path, value, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class RouteFilterRulesPatchRequestItem {\n"); + sb.append(" op: ").append(toIndentedString(op)).append("\n"); + sb.append(" path: ").append(toIndentedString(path)).append("\n"); + sb.append(" value: ").append(toIndentedString(value)).append("\n"); + sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + + public static HashSet openapiFields; + public static HashSet openapiRequiredFields; + + static { + // a set of all properties/fields (JSON key names) + openapiFields = new HashSet(); + openapiFields.add("op"); + openapiFields.add("path"); + openapiFields.add("value"); + + // a set of required properties/fields (JSON key names) + openapiRequiredFields = new HashSet(); + openapiRequiredFields.add("op"); + openapiRequiredFields.add("path"); + openapiRequiredFields.add("value"); + } + + /** + * Validates the JSON Object and throws an exception if issues found + * + * @param jsonObj JSON Object + * @throws IOException if the JSON Object is invalid with respect to RouteFilterRulesPatchRequestItem + */ + public static void validateJsonObject(JsonObject jsonObj) throws IOException { + if (jsonObj == null) { + if (!RouteFilterRulesPatchRequestItem.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in RouteFilterRulesPatchRequestItem is not found in the empty JSON string", RouteFilterRulesPatchRequestItem.openapiRequiredFields.toString())); + } + } + + // check to make sure all required properties/fields are present in the JSON string + for (String requiredField : RouteFilterRulesPatchRequestItem.openapiRequiredFields) { + if (jsonObj.get(requiredField) == null) { + throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonObj.toString())); + } + } + if (!jsonObj.get("op").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `op` to be a primitive type in the JSON string but got `%s`", jsonObj.get("op").toString())); + } + if (!jsonObj.get("path").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `path` to be a primitive type in the JSON string but got `%s`", jsonObj.get("path").toString())); + } + } + + public static class CustomTypeAdapterFactory implements TypeAdapterFactory { + @SuppressWarnings("unchecked") + @Override + public TypeAdapter create(Gson gson, TypeToken type) { + if (!RouteFilterRulesPatchRequestItem.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'RouteFilterRulesPatchRequestItem' and its subtypes + } + final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(RouteFilterRulesPatchRequestItem.class)); + + return (TypeAdapter) new TypeAdapter() { + @Override + public void write(JsonWriter out, RouteFilterRulesPatchRequestItem value) throws IOException { + JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); + obj.remove("additionalProperties"); + // serialize additional properties + if (value.getAdditionalProperties() != null) { + for (Map.Entry entry : value.getAdditionalProperties().entrySet()) { + if (entry.getValue() instanceof String) + obj.addProperty(entry.getKey(), (String) entry.getValue()); + else if (entry.getValue() instanceof Number) + obj.addProperty(entry.getKey(), (Number) entry.getValue()); + else if (entry.getValue() instanceof Boolean) + obj.addProperty(entry.getKey(), (Boolean) entry.getValue()); + else if (entry.getValue() instanceof Character) + obj.addProperty(entry.getKey(), (Character) entry.getValue()); + else { + obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject()); + } + } + } + elementAdapter.write(out, obj); + } + + @Override + public RouteFilterRulesPatchRequestItem read(JsonReader in) throws IOException { + JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); + validateJsonObject(jsonObj); + // store additional fields in the deserialized instance + RouteFilterRulesPatchRequestItem instance = thisAdapter.fromJsonTree(jsonObj); + for (Map.Entry entry : jsonObj.entrySet()) { + if (!openapiFields.contains(entry.getKey())) { + if (entry.getValue().isJsonPrimitive()) { // primitive type + if (entry.getValue().getAsJsonPrimitive().isString()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString()); + else if (entry.getValue().getAsJsonPrimitive().isNumber()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber()); + else if (entry.getValue().getAsJsonPrimitive().isBoolean()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean()); + else + throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString())); + } else if (entry.getValue().isJsonArray()) { + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class)); + } else { // JSON object + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class)); + } + } + } + return instance; + } + + }.nullSafe(); + } + } + + /** + * Create an instance of RouteFilterRulesPatchRequestItem given an JSON string + * + * @param jsonString JSON string + * @return An instance of RouteFilterRulesPatchRequestItem + * @throws IOException if the JSON string is invalid with respect to RouteFilterRulesPatchRequestItem + */ + public static RouteFilterRulesPatchRequestItem fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, RouteFilterRulesPatchRequestItem.class); + } + + /** + * Convert an instance of RouteFilterRulesPatchRequestItem to an JSON string + * + * @return JSON string + */ + public String toJson() { + return JSON.getGson().toJson(this); + } +} + diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersData.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersData.java index 0b2c0c2b..75c3f8f7 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersData.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersData.java @@ -186,6 +186,10 @@ public NotMatchedRuleActionEnum read(final JsonReader jsonReader) throws IOExcep @SerializedName(SERIALIZED_NAME_CONNECTIONS_COUNT) private Integer connectionsCount; + public static final String SERIALIZED_NAME_RULES_COUNT = "rulesCount"; + @SerializedName(SERIALIZED_NAME_RULES_COUNT) + private Integer rulesCount; + public static final String SERIALIZED_NAME_PROJECT = "project"; @SerializedName(SERIALIZED_NAME_PROJECT) private RouteFiltersDataProject project; @@ -399,6 +403,28 @@ public void setConnectionsCount(Integer connectionsCount) { } + public RouteFiltersData rulesCount(Integer rulesCount) { + + this.rulesCount = rulesCount; + return this; + } + + /** + * Get rulesCount + * @return rulesCount + **/ + @javax.annotation.Nullable + + public Integer getRulesCount() { + return rulesCount; + } + + + public void setRulesCount(Integer rulesCount) { + this.rulesCount = rulesCount; + } + + public RouteFiltersData project(RouteFiltersDataProject project) { this.project = project; @@ -536,6 +562,7 @@ public boolean equals(Object o) { Objects.equals(this.change, routeFiltersData.change) && Objects.equals(this.notMatchedRuleAction, routeFiltersData.notMatchedRuleAction) && Objects.equals(this.connectionsCount, routeFiltersData.connectionsCount) && + Objects.equals(this.rulesCount, routeFiltersData.rulesCount) && Objects.equals(this.project, routeFiltersData.project) && Objects.equals(this.notifications, routeFiltersData.notifications) && Objects.equals(this.changelog, routeFiltersData.changelog)&& @@ -544,7 +571,7 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash(href, type, uuid, name, description, state, change, notMatchedRuleAction, connectionsCount, project, notifications, changelog, additionalProperties); + return Objects.hash(href, type, uuid, name, description, state, change, notMatchedRuleAction, connectionsCount, rulesCount, project, notifications, changelog, additionalProperties); } @Override @@ -560,6 +587,7 @@ public String toString() { sb.append(" change: ").append(toIndentedString(change)).append("\n"); sb.append(" notMatchedRuleAction: ").append(toIndentedString(notMatchedRuleAction)).append("\n"); sb.append(" connectionsCount: ").append(toIndentedString(connectionsCount)).append("\n"); + sb.append(" rulesCount: ").append(toIndentedString(rulesCount)).append("\n"); sb.append(" project: ").append(toIndentedString(project)).append("\n"); sb.append(" notifications: ").append(toIndentedString(notifications)).append("\n"); sb.append(" changelog: ").append(toIndentedString(changelog)).append("\n"); @@ -595,6 +623,7 @@ private String toIndentedString(Object o) { openapiFields.add("change"); openapiFields.add("notMatchedRuleAction"); openapiFields.add("connectionsCount"); + openapiFields.add("rulesCount"); openapiFields.add("project"); openapiFields.add("notifications"); openapiFields.add("changelog"); diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangePrefixMatch.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersPatchRequestItem.java similarity index 83% rename from equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangePrefixMatch.java rename to equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersPatchRequestItem.java index 10d32e6b..bfc45861 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangePrefixMatch.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersPatchRequestItem.java @@ -43,10 +43,10 @@ import com.equinix.openapi.fabric.JSON; /** - * Route Filter Rule change operation data + * Route Filter change operation data */ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class RouteFilterChangePrefixMatch { +public class RouteFiltersPatchRequestItem { public static final String SERIALIZED_NAME_OP = "op"; @SerializedName(SERIALIZED_NAME_OP) private String op; @@ -59,10 +59,10 @@ public class RouteFilterChangePrefixMatch { @SerializedName(SERIALIZED_NAME_VALUE) private Object value; - public RouteFilterChangePrefixMatch() { + public RouteFiltersPatchRequestItem() { } - public RouteFilterChangePrefixMatch op(String op) { + public RouteFiltersPatchRequestItem op(String op) { this.op = op; return this; @@ -84,7 +84,7 @@ public void setOp(String op) { } - public RouteFilterChangePrefixMatch path(String path) { + public RouteFiltersPatchRequestItem path(String path) { this.path = path; return this; @@ -106,7 +106,7 @@ public void setPath(String path) { } - public RouteFilterChangePrefixMatch value(Object value) { + public RouteFiltersPatchRequestItem value(Object value) { this.value = value; return this; @@ -140,9 +140,9 @@ public void setValue(Object value) { * * @param key name of the property * @param value value of the property - * @return the RouteFilterChangePrefixMatch instance itself + * @return the RouteFiltersPatchRequestItem instance itself */ - public RouteFilterChangePrefixMatch putAdditionalProperty(String key, Object value) { + public RouteFiltersPatchRequestItem putAdditionalProperty(String key, Object value) { if (this.additionalProperties == null) { this.additionalProperties = new HashMap(); } @@ -181,11 +181,11 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - RouteFilterChangePrefixMatch routeFilterChangePrefixMatch = (RouteFilterChangePrefixMatch) o; - return Objects.equals(this.op, routeFilterChangePrefixMatch.op) && - Objects.equals(this.path, routeFilterChangePrefixMatch.path) && - Objects.equals(this.value, routeFilterChangePrefixMatch.value)&& - Objects.equals(this.additionalProperties, routeFilterChangePrefixMatch.additionalProperties); + RouteFiltersPatchRequestItem routeFiltersPatchRequestItem = (RouteFiltersPatchRequestItem) o; + return Objects.equals(this.op, routeFiltersPatchRequestItem.op) && + Objects.equals(this.path, routeFiltersPatchRequestItem.path) && + Objects.equals(this.value, routeFiltersPatchRequestItem.value)&& + Objects.equals(this.additionalProperties, routeFiltersPatchRequestItem.additionalProperties); } @Override @@ -196,7 +196,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class RouteFilterChangePrefixMatch {\n"); + sb.append("class RouteFiltersPatchRequestItem {\n"); sb.append(" op: ").append(toIndentedString(op)).append("\n"); sb.append(" path: ").append(toIndentedString(path)).append("\n"); sb.append(" value: ").append(toIndentedString(value)).append("\n"); @@ -238,17 +238,17 @@ private String toIndentedString(Object o) { * Validates the JSON Object and throws an exception if issues found * * @param jsonObj JSON Object - * @throws IOException if the JSON Object is invalid with respect to RouteFilterChangePrefixMatch + * @throws IOException if the JSON Object is invalid with respect to RouteFiltersPatchRequestItem */ public static void validateJsonObject(JsonObject jsonObj) throws IOException { if (jsonObj == null) { - if (!RouteFilterChangePrefixMatch.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null - throw new IllegalArgumentException(String.format("The required field(s) %s in RouteFilterChangePrefixMatch is not found in the empty JSON string", RouteFilterChangePrefixMatch.openapiRequiredFields.toString())); + if (!RouteFiltersPatchRequestItem.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in RouteFiltersPatchRequestItem is not found in the empty JSON string", RouteFiltersPatchRequestItem.openapiRequiredFields.toString())); } } // check to make sure all required properties/fields are present in the JSON string - for (String requiredField : RouteFilterChangePrefixMatch.openapiRequiredFields) { + for (String requiredField : RouteFiltersPatchRequestItem.openapiRequiredFields) { if (jsonObj.get(requiredField) == null) { throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonObj.toString())); } @@ -265,16 +265,16 @@ public static class CustomTypeAdapterFactory implements TypeAdapterFactory { @SuppressWarnings("unchecked") @Override public TypeAdapter create(Gson gson, TypeToken type) { - if (!RouteFilterChangePrefixMatch.class.isAssignableFrom(type.getRawType())) { - return null; // this class only serializes 'RouteFilterChangePrefixMatch' and its subtypes + if (!RouteFiltersPatchRequestItem.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'RouteFiltersPatchRequestItem' and its subtypes } final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); - final TypeAdapter thisAdapter - = gson.getDelegateAdapter(this, TypeToken.get(RouteFilterChangePrefixMatch.class)); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(RouteFiltersPatchRequestItem.class)); - return (TypeAdapter) new TypeAdapter() { + return (TypeAdapter) new TypeAdapter() { @Override - public void write(JsonWriter out, RouteFilterChangePrefixMatch value) throws IOException { + public void write(JsonWriter out, RouteFiltersPatchRequestItem value) throws IOException { JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); obj.remove("additionalProperties"); // serialize additional properties @@ -297,11 +297,11 @@ else if (entry.getValue() instanceof Character) } @Override - public RouteFilterChangePrefixMatch read(JsonReader in) throws IOException { + public RouteFiltersPatchRequestItem read(JsonReader in) throws IOException { JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); validateJsonObject(jsonObj); // store additional fields in the deserialized instance - RouteFilterChangePrefixMatch instance = thisAdapter.fromJsonTree(jsonObj); + RouteFiltersPatchRequestItem instance = thisAdapter.fromJsonTree(jsonObj); for (Map.Entry entry : jsonObj.entrySet()) { if (!openapiFields.contains(entry.getKey())) { if (entry.getValue().isJsonPrimitive()) { // primitive type @@ -328,18 +328,18 @@ else if (entry.getValue().getAsJsonPrimitive().isBoolean()) } /** - * Create an instance of RouteFilterChangePrefixMatch given an JSON string + * Create an instance of RouteFiltersPatchRequestItem given an JSON string * * @param jsonString JSON string - * @return An instance of RouteFilterChangePrefixMatch - * @throws IOException if the JSON string is invalid with respect to RouteFilterChangePrefixMatch + * @return An instance of RouteFiltersPatchRequestItem + * @throws IOException if the JSON string is invalid with respect to RouteFiltersPatchRequestItem */ - public static RouteFilterChangePrefixMatch fromJson(String jsonString) throws IOException { - return JSON.getGson().fromJson(jsonString, RouteFilterChangePrefixMatch.class); + public static RouteFiltersPatchRequestItem fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, RouteFiltersPatchRequestItem.class); } /** - * Convert an instance of RouteFilterChangePrefixMatch to an JSON string + * Convert an instance of RouteFiltersPatchRequestItem to an JSON string * * @return JSON string */ diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBase.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBase.java new file mode 100644 index 00000000..4fd81a6c --- /dev/null +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBase.java @@ -0,0 +1,369 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import java.util.Objects; +import java.util.Arrays; +import com.equinix.openapi.fabric.v4.model.Pagination; +import com.equinix.openapi.fabric.v4.model.RouteFiltersSearchBaseFilter; +import com.equinix.openapi.fabric.v4.model.SortItem; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParseException; +import com.google.gson.TypeAdapterFactory; +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Type; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import com.equinix.openapi.fabric.JSON; + +/** + * RouteFiltersSearchBase + */ +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class RouteFiltersSearchBase { + public static final String SERIALIZED_NAME_FILTER = "filter"; + @SerializedName(SERIALIZED_NAME_FILTER) + private RouteFiltersSearchBaseFilter filter; + + public static final String SERIALIZED_NAME_PAGINATION = "pagination"; + @SerializedName(SERIALIZED_NAME_PAGINATION) + private Pagination pagination; + + public static final String SERIALIZED_NAME_SORT = "sort"; + @SerializedName(SERIALIZED_NAME_SORT) + private List sort = new ArrayList<>(); + + public RouteFiltersSearchBase() { + } + + public RouteFiltersSearchBase filter(RouteFiltersSearchBaseFilter filter) { + + this.filter = filter; + return this; + } + + /** + * Get filter + * @return filter + **/ + @javax.annotation.Nullable + + public RouteFiltersSearchBaseFilter getFilter() { + return filter; + } + + + public void setFilter(RouteFiltersSearchBaseFilter filter) { + this.filter = filter; + } + + + public RouteFiltersSearchBase pagination(Pagination pagination) { + + this.pagination = pagination; + return this; + } + + /** + * Get pagination + * @return pagination + **/ + @javax.annotation.Nullable + + public Pagination getPagination() { + return pagination; + } + + + public void setPagination(Pagination pagination) { + this.pagination = pagination; + } + + + public RouteFiltersSearchBase sort(List sort) { + + this.sort = sort; + return this; + } + + public RouteFiltersSearchBase addSortItem(SortItem sortItem) { + if (this.sort == null) { + this.sort = new ArrayList<>(); + } + this.sort.add(sortItem); + return this; + } + + /** + * Get sort + * @return sort + **/ + @javax.annotation.Nullable + + public List getSort() { + return sort; + } + + + public void setSort(List sort) { + this.sort = sort; + } + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. + * If the property does not already exist, create it otherwise replace it. + * + * @param key name of the property + * @param value value of the property + * @return the RouteFiltersSearchBase instance itself + */ + public RouteFiltersSearchBase putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return a map of objects + */ + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key name of the property + * @return an object + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RouteFiltersSearchBase routeFiltersSearchBase = (RouteFiltersSearchBase) o; + return Objects.equals(this.filter, routeFiltersSearchBase.filter) && + Objects.equals(this.pagination, routeFiltersSearchBase.pagination) && + Objects.equals(this.sort, routeFiltersSearchBase.sort)&& + Objects.equals(this.additionalProperties, routeFiltersSearchBase.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(filter, pagination, sort, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class RouteFiltersSearchBase {\n"); + sb.append(" filter: ").append(toIndentedString(filter)).append("\n"); + sb.append(" pagination: ").append(toIndentedString(pagination)).append("\n"); + sb.append(" sort: ").append(toIndentedString(sort)).append("\n"); + sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + + public static HashSet openapiFields; + public static HashSet openapiRequiredFields; + + static { + // a set of all properties/fields (JSON key names) + openapiFields = new HashSet(); + openapiFields.add("filter"); + openapiFields.add("pagination"); + openapiFields.add("sort"); + + // a set of required properties/fields (JSON key names) + openapiRequiredFields = new HashSet(); + } + + /** + * Validates the JSON Object and throws an exception if issues found + * + * @param jsonObj JSON Object + * @throws IOException if the JSON Object is invalid with respect to RouteFiltersSearchBase + */ + public static void validateJsonObject(JsonObject jsonObj) throws IOException { + if (jsonObj == null) { + if (!RouteFiltersSearchBase.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in RouteFiltersSearchBase is not found in the empty JSON string", RouteFiltersSearchBase.openapiRequiredFields.toString())); + } + } + // validate the optional field `filter` + if (jsonObj.get("filter") != null && !jsonObj.get("filter").isJsonNull()) { + RouteFiltersSearchBaseFilter.validateJsonObject(jsonObj.getAsJsonObject("filter")); + } + // validate the optional field `pagination` + if (jsonObj.get("pagination") != null && !jsonObj.get("pagination").isJsonNull()) { + Pagination.validateJsonObject(jsonObj.getAsJsonObject("pagination")); + } + if (jsonObj.get("sort") != null && !jsonObj.get("sort").isJsonNull()) { + JsonArray jsonArraysort = jsonObj.getAsJsonArray("sort"); + if (jsonArraysort != null) { + // ensure the json data is an array + if (!jsonObj.get("sort").isJsonArray()) { + throw new IllegalArgumentException(String.format("Expected the field `sort` to be an array in the JSON string but got `%s`", jsonObj.get("sort").toString())); + } + + // validate the optional field `sort` (array) + for (int i = 0; i < jsonArraysort.size(); i++) { + SortItem.validateJsonObject(jsonArraysort.get(i).getAsJsonObject()); + }; + } + } + } + + public static class CustomTypeAdapterFactory implements TypeAdapterFactory { + @SuppressWarnings("unchecked") + @Override + public TypeAdapter create(Gson gson, TypeToken type) { + if (!RouteFiltersSearchBase.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'RouteFiltersSearchBase' and its subtypes + } + final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(RouteFiltersSearchBase.class)); + + return (TypeAdapter) new TypeAdapter() { + @Override + public void write(JsonWriter out, RouteFiltersSearchBase value) throws IOException { + JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); + obj.remove("additionalProperties"); + // serialize additional properties + if (value.getAdditionalProperties() != null) { + for (Map.Entry entry : value.getAdditionalProperties().entrySet()) { + if (entry.getValue() instanceof String) + obj.addProperty(entry.getKey(), (String) entry.getValue()); + else if (entry.getValue() instanceof Number) + obj.addProperty(entry.getKey(), (Number) entry.getValue()); + else if (entry.getValue() instanceof Boolean) + obj.addProperty(entry.getKey(), (Boolean) entry.getValue()); + else if (entry.getValue() instanceof Character) + obj.addProperty(entry.getKey(), (Character) entry.getValue()); + else { + obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject()); + } + } + } + elementAdapter.write(out, obj); + } + + @Override + public RouteFiltersSearchBase read(JsonReader in) throws IOException { + JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); + validateJsonObject(jsonObj); + // store additional fields in the deserialized instance + RouteFiltersSearchBase instance = thisAdapter.fromJsonTree(jsonObj); + for (Map.Entry entry : jsonObj.entrySet()) { + if (!openapiFields.contains(entry.getKey())) { + if (entry.getValue().isJsonPrimitive()) { // primitive type + if (entry.getValue().getAsJsonPrimitive().isString()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString()); + else if (entry.getValue().getAsJsonPrimitive().isNumber()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber()); + else if (entry.getValue().getAsJsonPrimitive().isBoolean()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean()); + else + throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString())); + } else if (entry.getValue().isJsonArray()) { + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class)); + } else { // JSON object + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class)); + } + } + } + return instance; + } + + }.nullSafe(); + } + } + + /** + * Create an instance of RouteFiltersSearchBase given an JSON string + * + * @param jsonString JSON string + * @return An instance of RouteFiltersSearchBase + * @throws IOException if the JSON string is invalid with respect to RouteFiltersSearchBase + */ + public static RouteFiltersSearchBase fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, RouteFiltersSearchBase.class); + } + + /** + * Convert an instance of RouteFiltersSearchBase to an JSON string + * + * @return JSON string + */ + public String toJson() { + return JSON.getGson().toJson(this); + } +} + diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/AdditionalInfo.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilter.java similarity index 68% rename from equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/AdditionalInfo.java rename to equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilter.java index 1251cd01..ac16b7e4 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/AdditionalInfo.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilter.java @@ -14,12 +14,15 @@ import java.util.Objects; import java.util.Arrays; +import com.equinix.openapi.fabric.v4.model.RouteFiltersSearchFilterItem; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; import com.google.gson.annotations.SerializedName; import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; +import java.util.ArrayList; +import java.util.List; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -43,62 +46,44 @@ import com.equinix.openapi.fabric.JSON; /** - * Additional information + * RouteFiltersSearchBaseFilter */ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") -public class AdditionalInfo { - public static final String SERIALIZED_NAME_KEY = "key"; - @SerializedName(SERIALIZED_NAME_KEY) - private String key; - - public static final String SERIALIZED_NAME_VALUE = "value"; - @SerializedName(SERIALIZED_NAME_VALUE) - private String value; +public class RouteFiltersSearchBaseFilter { + public static final String SERIALIZED_NAME_AND = "and"; + @SerializedName(SERIALIZED_NAME_AND) + private List and = new ArrayList<>(); - public AdditionalInfo() { + public RouteFiltersSearchBaseFilter() { } - public AdditionalInfo key(String key) { + public RouteFiltersSearchBaseFilter and(List and) { - this.key = key; + this.and = and; return this; } - /** - * Key - * @return key - **/ - @javax.annotation.Nullable - - public String getKey() { - return key; - } - - - public void setKey(String key) { - this.key = key; - } - - - public AdditionalInfo value(String value) { - - this.value = value; + public RouteFiltersSearchBaseFilter addAndItem(RouteFiltersSearchFilterItem andItem) { + if (this.and == null) { + this.and = new ArrayList<>(); + } + this.and.add(andItem); return this; } /** - * Value - * @return value + * Get and + * @return and **/ @javax.annotation.Nullable - public String getValue() { - return value; + public List getAnd() { + return and; } - public void setValue(String value) { - this.value = value; + public void setAnd(List and) { + this.and = and; } /** @@ -114,9 +99,9 @@ public void setValue(String value) { * * @param key name of the property * @param value value of the property - * @return the AdditionalInfo instance itself + * @return the RouteFiltersSearchBaseFilter instance itself */ - public AdditionalInfo putAdditionalProperty(String key, Object value) { + public RouteFiltersSearchBaseFilter putAdditionalProperty(String key, Object value) { if (this.additionalProperties == null) { this.additionalProperties = new HashMap(); } @@ -155,23 +140,21 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - AdditionalInfo additionalInfo = (AdditionalInfo) o; - return Objects.equals(this.key, additionalInfo.key) && - Objects.equals(this.value, additionalInfo.value)&& - Objects.equals(this.additionalProperties, additionalInfo.additionalProperties); + RouteFiltersSearchBaseFilter routeFiltersSearchBaseFilter = (RouteFiltersSearchBaseFilter) o; + return Objects.equals(this.and, routeFiltersSearchBaseFilter.and)&& + Objects.equals(this.additionalProperties, routeFiltersSearchBaseFilter.additionalProperties); } @Override public int hashCode() { - return Objects.hash(key, value, additionalProperties); + return Objects.hash(and, additionalProperties); } @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class AdditionalInfo {\n"); - sb.append(" key: ").append(toIndentedString(key)).append("\n"); - sb.append(" value: ").append(toIndentedString(value)).append("\n"); + sb.append("class RouteFiltersSearchBaseFilter {\n"); + sb.append(" and: ").append(toIndentedString(and)).append("\n"); sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); sb.append("}"); return sb.toString(); @@ -195,8 +178,7 @@ private String toIndentedString(Object o) { static { // a set of all properties/fields (JSON key names) openapiFields = new HashSet(); - openapiFields.add("key"); - openapiFields.add("value"); + openapiFields.add("and"); // a set of required properties/fields (JSON key names) openapiRequiredFields = new HashSet(); @@ -206,19 +188,27 @@ private String toIndentedString(Object o) { * Validates the JSON Object and throws an exception if issues found * * @param jsonObj JSON Object - * @throws IOException if the JSON Object is invalid with respect to AdditionalInfo + * @throws IOException if the JSON Object is invalid with respect to RouteFiltersSearchBaseFilter */ public static void validateJsonObject(JsonObject jsonObj) throws IOException { if (jsonObj == null) { - if (!AdditionalInfo.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null - throw new IllegalArgumentException(String.format("The required field(s) %s in AdditionalInfo is not found in the empty JSON string", AdditionalInfo.openapiRequiredFields.toString())); + if (!RouteFiltersSearchBaseFilter.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in RouteFiltersSearchBaseFilter is not found in the empty JSON string", RouteFiltersSearchBaseFilter.openapiRequiredFields.toString())); } } - if ((jsonObj.get("key") != null && !jsonObj.get("key").isJsonNull()) && !jsonObj.get("key").isJsonPrimitive()) { - throw new IllegalArgumentException(String.format("Expected the field `key` to be a primitive type in the JSON string but got `%s`", jsonObj.get("key").toString())); - } - if ((jsonObj.get("value") != null && !jsonObj.get("value").isJsonNull()) && !jsonObj.get("value").isJsonPrimitive()) { - throw new IllegalArgumentException(String.format("Expected the field `value` to be a primitive type in the JSON string but got `%s`", jsonObj.get("value").toString())); + if (jsonObj.get("and") != null && !jsonObj.get("and").isJsonNull()) { + JsonArray jsonArrayand = jsonObj.getAsJsonArray("and"); + if (jsonArrayand != null) { + // ensure the json data is an array + if (!jsonObj.get("and").isJsonArray()) { + throw new IllegalArgumentException(String.format("Expected the field `and` to be an array in the JSON string but got `%s`", jsonObj.get("and").toString())); + } + + // validate the optional field `and` (array) + for (int i = 0; i < jsonArrayand.size(); i++) { + RouteFiltersSearchFilterItem.validateJsonObject(jsonArrayand.get(i).getAsJsonObject()); + }; + } } } @@ -226,16 +216,16 @@ public static class CustomTypeAdapterFactory implements TypeAdapterFactory { @SuppressWarnings("unchecked") @Override public TypeAdapter create(Gson gson, TypeToken type) { - if (!AdditionalInfo.class.isAssignableFrom(type.getRawType())) { - return null; // this class only serializes 'AdditionalInfo' and its subtypes + if (!RouteFiltersSearchBaseFilter.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'RouteFiltersSearchBaseFilter' and its subtypes } final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); - final TypeAdapter thisAdapter - = gson.getDelegateAdapter(this, TypeToken.get(AdditionalInfo.class)); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(RouteFiltersSearchBaseFilter.class)); - return (TypeAdapter) new TypeAdapter() { + return (TypeAdapter) new TypeAdapter() { @Override - public void write(JsonWriter out, AdditionalInfo value) throws IOException { + public void write(JsonWriter out, RouteFiltersSearchBaseFilter value) throws IOException { JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); obj.remove("additionalProperties"); // serialize additional properties @@ -258,11 +248,11 @@ else if (entry.getValue() instanceof Character) } @Override - public AdditionalInfo read(JsonReader in) throws IOException { + public RouteFiltersSearchBaseFilter read(JsonReader in) throws IOException { JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); validateJsonObject(jsonObj); // store additional fields in the deserialized instance - AdditionalInfo instance = thisAdapter.fromJsonTree(jsonObj); + RouteFiltersSearchBaseFilter instance = thisAdapter.fromJsonTree(jsonObj); for (Map.Entry entry : jsonObj.entrySet()) { if (!openapiFields.contains(entry.getKey())) { if (entry.getValue().isJsonPrimitive()) { // primitive type @@ -289,18 +279,18 @@ else if (entry.getValue().getAsJsonPrimitive().isBoolean()) } /** - * Create an instance of AdditionalInfo given an JSON string + * Create an instance of RouteFiltersSearchBaseFilter given an JSON string * * @param jsonString JSON string - * @return An instance of AdditionalInfo - * @throws IOException if the JSON string is invalid with respect to AdditionalInfo + * @return An instance of RouteFiltersSearchBaseFilter + * @throws IOException if the JSON string is invalid with respect to RouteFiltersSearchBaseFilter */ - public static AdditionalInfo fromJson(String jsonString) throws IOException { - return JSON.getGson().fromJson(jsonString, AdditionalInfo.class); + public static RouteFiltersSearchBaseFilter fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, RouteFiltersSearchBaseFilter.class); } /** - * Convert an instance of AdditionalInfo to an JSON string + * Convert an instance of RouteFiltersSearchBaseFilter to an JSON string * * @return JSON string */ diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItem.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItem.java new file mode 100644 index 00000000..40a95ad6 --- /dev/null +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItem.java @@ -0,0 +1,407 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import java.util.Objects; +import java.util.Arrays; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParseException; +import com.google.gson.TypeAdapterFactory; +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Type; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import com.equinix.openapi.fabric.JSON; + +/** + * RouteFiltersSearchFilterItem + */ +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class RouteFiltersSearchFilterItem { + /** + * Gets or Sets property + */ + @JsonAdapter(PropertyEnum.Adapter.class) + public enum PropertyEnum { + TYPE("/type"), + + NAME("/name"), + + PROJECT_PROJECTID("/project/projectId"), + + UUID("/uuid"), + + STATE("/state"); + + private String value; + + PropertyEnum(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static PropertyEnum fromValue(String value) { + for (PropertyEnum b : PropertyEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final PropertyEnum enumeration) throws IOException { + jsonWriter.value(enumeration.getValue()); + } + + @Override + public PropertyEnum read(final JsonReader jsonReader) throws IOException { + String value = jsonReader.nextString(); + return PropertyEnum.fromValue(value); + } + } + } + + public static final String SERIALIZED_NAME_PROPERTY = "property"; + @SerializedName(SERIALIZED_NAME_PROPERTY) + private PropertyEnum property; + + public static final String SERIALIZED_NAME_OPERATOR = "operator"; + @SerializedName(SERIALIZED_NAME_OPERATOR) + private String operator; + + public static final String SERIALIZED_NAME_VALUES = "values"; + @SerializedName(SERIALIZED_NAME_VALUES) + private List values = new ArrayList<>(); + + public RouteFiltersSearchFilterItem() { + } + + public RouteFiltersSearchFilterItem property(PropertyEnum property) { + + this.property = property; + return this; + } + + /** + * Get property + * @return property + **/ + @javax.annotation.Nullable + + public PropertyEnum getProperty() { + return property; + } + + + public void setProperty(PropertyEnum property) { + this.property = property; + } + + + public RouteFiltersSearchFilterItem operator(String operator) { + + this.operator = operator; + return this; + } + + /** + * Get operator + * @return operator + **/ + @javax.annotation.Nullable + + public String getOperator() { + return operator; + } + + + public void setOperator(String operator) { + this.operator = operator; + } + + + public RouteFiltersSearchFilterItem values(List values) { + + this.values = values; + return this; + } + + public RouteFiltersSearchFilterItem addValuesItem(String valuesItem) { + if (this.values == null) { + this.values = new ArrayList<>(); + } + this.values.add(valuesItem); + return this; + } + + /** + * Get values + * @return values + **/ + @javax.annotation.Nullable + + public List getValues() { + return values; + } + + + public void setValues(List values) { + this.values = values; + } + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. + * If the property does not already exist, create it otherwise replace it. + * + * @param key name of the property + * @param value value of the property + * @return the RouteFiltersSearchFilterItem instance itself + */ + public RouteFiltersSearchFilterItem putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return a map of objects + */ + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key name of the property + * @return an object + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RouteFiltersSearchFilterItem routeFiltersSearchFilterItem = (RouteFiltersSearchFilterItem) o; + return Objects.equals(this.property, routeFiltersSearchFilterItem.property) && + Objects.equals(this.operator, routeFiltersSearchFilterItem.operator) && + Objects.equals(this.values, routeFiltersSearchFilterItem.values)&& + Objects.equals(this.additionalProperties, routeFiltersSearchFilterItem.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(property, operator, values, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class RouteFiltersSearchFilterItem {\n"); + sb.append(" property: ").append(toIndentedString(property)).append("\n"); + sb.append(" operator: ").append(toIndentedString(operator)).append("\n"); + sb.append(" values: ").append(toIndentedString(values)).append("\n"); + sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + + public static HashSet openapiFields; + public static HashSet openapiRequiredFields; + + static { + // a set of all properties/fields (JSON key names) + openapiFields = new HashSet(); + openapiFields.add("property"); + openapiFields.add("operator"); + openapiFields.add("values"); + + // a set of required properties/fields (JSON key names) + openapiRequiredFields = new HashSet(); + } + + /** + * Validates the JSON Object and throws an exception if issues found + * + * @param jsonObj JSON Object + * @throws IOException if the JSON Object is invalid with respect to RouteFiltersSearchFilterItem + */ + public static void validateJsonObject(JsonObject jsonObj) throws IOException { + if (jsonObj == null) { + if (!RouteFiltersSearchFilterItem.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in RouteFiltersSearchFilterItem is not found in the empty JSON string", RouteFiltersSearchFilterItem.openapiRequiredFields.toString())); + } + } + if ((jsonObj.get("property") != null && !jsonObj.get("property").isJsonNull()) && !jsonObj.get("property").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `property` to be a primitive type in the JSON string but got `%s`", jsonObj.get("property").toString())); + } + if ((jsonObj.get("operator") != null && !jsonObj.get("operator").isJsonNull()) && !jsonObj.get("operator").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `operator` to be a primitive type in the JSON string but got `%s`", jsonObj.get("operator").toString())); + } + // ensure the optional json data is an array if present + if (jsonObj.get("values") != null && !jsonObj.get("values").isJsonArray()) { + throw new IllegalArgumentException(String.format("Expected the field `values` to be an array in the JSON string but got `%s`", jsonObj.get("values").toString())); + } + } + + public static class CustomTypeAdapterFactory implements TypeAdapterFactory { + @SuppressWarnings("unchecked") + @Override + public TypeAdapter create(Gson gson, TypeToken type) { + if (!RouteFiltersSearchFilterItem.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'RouteFiltersSearchFilterItem' and its subtypes + } + final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(RouteFiltersSearchFilterItem.class)); + + return (TypeAdapter) new TypeAdapter() { + @Override + public void write(JsonWriter out, RouteFiltersSearchFilterItem value) throws IOException { + JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); + obj.remove("additionalProperties"); + // serialize additional properties + if (value.getAdditionalProperties() != null) { + for (Map.Entry entry : value.getAdditionalProperties().entrySet()) { + if (entry.getValue() instanceof String) + obj.addProperty(entry.getKey(), (String) entry.getValue()); + else if (entry.getValue() instanceof Number) + obj.addProperty(entry.getKey(), (Number) entry.getValue()); + else if (entry.getValue() instanceof Boolean) + obj.addProperty(entry.getKey(), (Boolean) entry.getValue()); + else if (entry.getValue() instanceof Character) + obj.addProperty(entry.getKey(), (Character) entry.getValue()); + else { + obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject()); + } + } + } + elementAdapter.write(out, obj); + } + + @Override + public RouteFiltersSearchFilterItem read(JsonReader in) throws IOException { + JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); + validateJsonObject(jsonObj); + // store additional fields in the deserialized instance + RouteFiltersSearchFilterItem instance = thisAdapter.fromJsonTree(jsonObj); + for (Map.Entry entry : jsonObj.entrySet()) { + if (!openapiFields.contains(entry.getKey())) { + if (entry.getValue().isJsonPrimitive()) { // primitive type + if (entry.getValue().getAsJsonPrimitive().isString()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString()); + else if (entry.getValue().getAsJsonPrimitive().isNumber()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber()); + else if (entry.getValue().getAsJsonPrimitive().isBoolean()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean()); + else + throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString())); + } else if (entry.getValue().isJsonArray()) { + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class)); + } else { // JSON object + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class)); + } + } + } + return instance; + } + + }.nullSafe(); + } + } + + /** + * Create an instance of RouteFiltersSearchFilterItem given an JSON string + * + * @param jsonString JSON string + * @return An instance of RouteFiltersSearchFilterItem + * @throws IOException if the JSON string is invalid with respect to RouteFiltersSearchFilterItem + */ + public static RouteFiltersSearchFilterItem fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, RouteFiltersSearchFilterItem.class); + } + + /** + * Convert an instance of RouteFiltersSearchFilterItem to an JSON string + * + * @return JSON string + */ + public String toJson() { + return JSON.getGson().toJson(this); + } +} + diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponse.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponse.java new file mode 100644 index 00000000..5f3126bc --- /dev/null +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponse.java @@ -0,0 +1,335 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import java.util.Objects; +import java.util.Arrays; +import com.equinix.openapi.fabric.v4.model.Pagination; +import com.equinix.openapi.fabric.v4.model.RouteFiltersData; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParseException; +import com.google.gson.TypeAdapterFactory; +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Type; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import com.equinix.openapi.fabric.JSON; + +/** + * RouteFiltersSearchResponse + */ +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class RouteFiltersSearchResponse { + public static final String SERIALIZED_NAME_PAGINATION = "pagination"; + @SerializedName(SERIALIZED_NAME_PAGINATION) + private Pagination pagination; + + public static final String SERIALIZED_NAME_DATA = "data"; + @SerializedName(SERIALIZED_NAME_DATA) + private List data = new ArrayList<>(); + + public RouteFiltersSearchResponse() { + } + + public RouteFiltersSearchResponse pagination(Pagination pagination) { + + this.pagination = pagination; + return this; + } + + /** + * Get pagination + * @return pagination + **/ + @javax.annotation.Nullable + + public Pagination getPagination() { + return pagination; + } + + + public void setPagination(Pagination pagination) { + this.pagination = pagination; + } + + + public RouteFiltersSearchResponse data(List data) { + + this.data = data; + return this; + } + + public RouteFiltersSearchResponse addDataItem(RouteFiltersData dataItem) { + if (this.data == null) { + this.data = new ArrayList<>(); + } + this.data.add(dataItem); + return this; + } + + /** + * List of Route Filters + * @return data + **/ + @javax.annotation.Nullable + + public List getData() { + return data; + } + + + public void setData(List data) { + this.data = data; + } + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. + * If the property does not already exist, create it otherwise replace it. + * + * @param key name of the property + * @param value value of the property + * @return the RouteFiltersSearchResponse instance itself + */ + public RouteFiltersSearchResponse putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return a map of objects + */ + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key name of the property + * @return an object + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RouteFiltersSearchResponse routeFiltersSearchResponse = (RouteFiltersSearchResponse) o; + return Objects.equals(this.pagination, routeFiltersSearchResponse.pagination) && + Objects.equals(this.data, routeFiltersSearchResponse.data)&& + Objects.equals(this.additionalProperties, routeFiltersSearchResponse.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(pagination, data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class RouteFiltersSearchResponse {\n"); + sb.append(" pagination: ").append(toIndentedString(pagination)).append("\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + + public static HashSet openapiFields; + public static HashSet openapiRequiredFields; + + static { + // a set of all properties/fields (JSON key names) + openapiFields = new HashSet(); + openapiFields.add("pagination"); + openapiFields.add("data"); + + // a set of required properties/fields (JSON key names) + openapiRequiredFields = new HashSet(); + } + + /** + * Validates the JSON Object and throws an exception if issues found + * + * @param jsonObj JSON Object + * @throws IOException if the JSON Object is invalid with respect to RouteFiltersSearchResponse + */ + public static void validateJsonObject(JsonObject jsonObj) throws IOException { + if (jsonObj == null) { + if (!RouteFiltersSearchResponse.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in RouteFiltersSearchResponse is not found in the empty JSON string", RouteFiltersSearchResponse.openapiRequiredFields.toString())); + } + } + // validate the optional field `pagination` + if (jsonObj.get("pagination") != null && !jsonObj.get("pagination").isJsonNull()) { + Pagination.validateJsonObject(jsonObj.getAsJsonObject("pagination")); + } + if (jsonObj.get("data") != null && !jsonObj.get("data").isJsonNull()) { + JsonArray jsonArraydata = jsonObj.getAsJsonArray("data"); + if (jsonArraydata != null) { + // ensure the json data is an array + if (!jsonObj.get("data").isJsonArray()) { + throw new IllegalArgumentException(String.format("Expected the field `data` to be an array in the JSON string but got `%s`", jsonObj.get("data").toString())); + } + + // validate the optional field `data` (array) + for (int i = 0; i < jsonArraydata.size(); i++) { + RouteFiltersData.validateJsonObject(jsonArraydata.get(i).getAsJsonObject()); + }; + } + } + } + + public static class CustomTypeAdapterFactory implements TypeAdapterFactory { + @SuppressWarnings("unchecked") + @Override + public TypeAdapter create(Gson gson, TypeToken type) { + if (!RouteFiltersSearchResponse.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'RouteFiltersSearchResponse' and its subtypes + } + final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(RouteFiltersSearchResponse.class)); + + return (TypeAdapter) new TypeAdapter() { + @Override + public void write(JsonWriter out, RouteFiltersSearchResponse value) throws IOException { + JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); + obj.remove("additionalProperties"); + // serialize additional properties + if (value.getAdditionalProperties() != null) { + for (Map.Entry entry : value.getAdditionalProperties().entrySet()) { + if (entry.getValue() instanceof String) + obj.addProperty(entry.getKey(), (String) entry.getValue()); + else if (entry.getValue() instanceof Number) + obj.addProperty(entry.getKey(), (Number) entry.getValue()); + else if (entry.getValue() instanceof Boolean) + obj.addProperty(entry.getKey(), (Boolean) entry.getValue()); + else if (entry.getValue() instanceof Character) + obj.addProperty(entry.getKey(), (Character) entry.getValue()); + else { + obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject()); + } + } + } + elementAdapter.write(out, obj); + } + + @Override + public RouteFiltersSearchResponse read(JsonReader in) throws IOException { + JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); + validateJsonObject(jsonObj); + // store additional fields in the deserialized instance + RouteFiltersSearchResponse instance = thisAdapter.fromJsonTree(jsonObj); + for (Map.Entry entry : jsonObj.entrySet()) { + if (!openapiFields.contains(entry.getKey())) { + if (entry.getValue().isJsonPrimitive()) { // primitive type + if (entry.getValue().getAsJsonPrimitive().isString()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString()); + else if (entry.getValue().getAsJsonPrimitive().isNumber()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber()); + else if (entry.getValue().getAsJsonPrimitive().isBoolean()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean()); + else + throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString())); + } else if (entry.getValue().isJsonArray()) { + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class)); + } else { // JSON object + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class)); + } + } + } + return instance; + } + + }.nullSafe(); + } + } + + /** + * Create an instance of RouteFiltersSearchResponse given an JSON string + * + * @param jsonString JSON string + * @return An instance of RouteFiltersSearchResponse + * @throws IOException if the JSON string is invalid with respect to RouteFiltersSearchResponse + */ + public static RouteFiltersSearchResponse fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, RouteFiltersSearchResponse.class); + } + + /** + * Convert an instance of RouteFiltersSearchResponse to an JSON string + * + * @return JSON string + */ + public String toJson() { + return JSON.getGson().toJson(this); + } +} + diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouterPackageCode.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouterPackageCode.java index 193ce666..e787a91c 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouterPackageCode.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/RouterPackageCode.java @@ -30,7 +30,7 @@ public enum RouterPackageCode { LAB("LAB"), - BASIC("BASIC"), + ADVANCED("ADVANCED"), STANDARD("STANDARD"), diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/ServiceProfileTypeEnum.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/ServiceProfileTypeEnum.java index 3d2091c6..da92e706 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/ServiceProfileTypeEnum.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/ServiceProfileTypeEnum.java @@ -30,7 +30,9 @@ public enum ServiceProfileTypeEnum { L2_PROFILE("L2_PROFILE"), - L3_PROFILE("L3_PROFILE"); + L3_PROFILE("L3_PROFILE"), + + IA_PROFILE("IA_PROFILE"); private String value; diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/SortItem.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/SortItem.java new file mode 100644 index 00000000..f36235d1 --- /dev/null +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/SortItem.java @@ -0,0 +1,419 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import java.util.Objects; +import java.util.Arrays; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParseException; +import com.google.gson.TypeAdapterFactory; +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Type; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import com.equinix.openapi.fabric.JSON; + +/** + * SortItem + */ +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class SortItem { + /** + * Possible field names to use on sorting + */ + @JsonAdapter(PropertyEnum.Adapter.class) + public enum PropertyEnum { + TYPE("/type"), + + UUID("/uuid"), + + NAME("/name"), + + PROJECT_PROJECTID("/project/projectId"), + + STATE("/state"), + + NOTMATCHEDRULEACTION("/notMatchedRuleAction"), + + CONNECTIONSCOUNT("/connectionsCount"), + + CHANGELOG_CREATEDDATETIME("/changeLog/createdDateTime"), + + CHANGELOG_UPDATEDDATETIME("/changeLog/updatedDateTime"); + + private String value; + + PropertyEnum(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static PropertyEnum fromValue(String value) { + for (PropertyEnum b : PropertyEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final PropertyEnum enumeration) throws IOException { + jsonWriter.value(enumeration.getValue()); + } + + @Override + public PropertyEnum read(final JsonReader jsonReader) throws IOException { + String value = jsonReader.nextString(); + return PropertyEnum.fromValue(value); + } + } + } + + public static final String SERIALIZED_NAME_PROPERTY = "property"; + @SerializedName(SERIALIZED_NAME_PROPERTY) + private PropertyEnum property = PropertyEnum.CHANGELOG_UPDATEDDATETIME; + + /** + * Sorting direction + */ + @JsonAdapter(DirectionEnum.Adapter.class) + public enum DirectionEnum { + DESC("DESC"), + + ASC("ASC"); + + private String value; + + DirectionEnum(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static DirectionEnum fromValue(String value) { + for (DirectionEnum b : DirectionEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final DirectionEnum enumeration) throws IOException { + jsonWriter.value(enumeration.getValue()); + } + + @Override + public DirectionEnum read(final JsonReader jsonReader) throws IOException { + String value = jsonReader.nextString(); + return DirectionEnum.fromValue(value); + } + } + } + + public static final String SERIALIZED_NAME_DIRECTION = "direction"; + @SerializedName(SERIALIZED_NAME_DIRECTION) + private DirectionEnum direction = DirectionEnum.DESC; + + public SortItem() { + } + + public SortItem property(PropertyEnum property) { + + this.property = property; + return this; + } + + /** + * Possible field names to use on sorting + * @return property + **/ + @javax.annotation.Nullable + + public PropertyEnum getProperty() { + return property; + } + + + public void setProperty(PropertyEnum property) { + this.property = property; + } + + + public SortItem direction(DirectionEnum direction) { + + this.direction = direction; + return this; + } + + /** + * Sorting direction + * @return direction + **/ + @javax.annotation.Nullable + + public DirectionEnum getDirection() { + return direction; + } + + + public void setDirection(DirectionEnum direction) { + this.direction = direction; + } + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. + * If the property does not already exist, create it otherwise replace it. + * + * @param key name of the property + * @param value value of the property + * @return the SortItem instance itself + */ + public SortItem putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return a map of objects + */ + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key name of the property + * @return an object + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SortItem sortItem = (SortItem) o; + return Objects.equals(this.property, sortItem.property) && + Objects.equals(this.direction, sortItem.direction)&& + Objects.equals(this.additionalProperties, sortItem.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(property, direction, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SortItem {\n"); + sb.append(" property: ").append(toIndentedString(property)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + + public static HashSet openapiFields; + public static HashSet openapiRequiredFields; + + static { + // a set of all properties/fields (JSON key names) + openapiFields = new HashSet(); + openapiFields.add("property"); + openapiFields.add("direction"); + + // a set of required properties/fields (JSON key names) + openapiRequiredFields = new HashSet(); + } + + /** + * Validates the JSON Object and throws an exception if issues found + * + * @param jsonObj JSON Object + * @throws IOException if the JSON Object is invalid with respect to SortItem + */ + public static void validateJsonObject(JsonObject jsonObj) throws IOException { + if (jsonObj == null) { + if (!SortItem.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null + throw new IllegalArgumentException(String.format("The required field(s) %s in SortItem is not found in the empty JSON string", SortItem.openapiRequiredFields.toString())); + } + } + if ((jsonObj.get("property") != null && !jsonObj.get("property").isJsonNull()) && !jsonObj.get("property").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `property` to be a primitive type in the JSON string but got `%s`", jsonObj.get("property").toString())); + } + if ((jsonObj.get("direction") != null && !jsonObj.get("direction").isJsonNull()) && !jsonObj.get("direction").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format("Expected the field `direction` to be a primitive type in the JSON string but got `%s`", jsonObj.get("direction").toString())); + } + } + + public static class CustomTypeAdapterFactory implements TypeAdapterFactory { + @SuppressWarnings("unchecked") + @Override + public TypeAdapter create(Gson gson, TypeToken type) { + if (!SortItem.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'SortItem' and its subtypes + } + final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(SortItem.class)); + + return (TypeAdapter) new TypeAdapter() { + @Override + public void write(JsonWriter out, SortItem value) throws IOException { + JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); + obj.remove("additionalProperties"); + // serialize additional properties + if (value.getAdditionalProperties() != null) { + for (Map.Entry entry : value.getAdditionalProperties().entrySet()) { + if (entry.getValue() instanceof String) + obj.addProperty(entry.getKey(), (String) entry.getValue()); + else if (entry.getValue() instanceof Number) + obj.addProperty(entry.getKey(), (Number) entry.getValue()); + else if (entry.getValue() instanceof Boolean) + obj.addProperty(entry.getKey(), (Boolean) entry.getValue()); + else if (entry.getValue() instanceof Character) + obj.addProperty(entry.getKey(), (Character) entry.getValue()); + else { + obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject()); + } + } + } + elementAdapter.write(out, obj); + } + + @Override + public SortItem read(JsonReader in) throws IOException { + JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject(); + validateJsonObject(jsonObj); + // store additional fields in the deserialized instance + SortItem instance = thisAdapter.fromJsonTree(jsonObj); + for (Map.Entry entry : jsonObj.entrySet()) { + if (!openapiFields.contains(entry.getKey())) { + if (entry.getValue().isJsonPrimitive()) { // primitive type + if (entry.getValue().getAsJsonPrimitive().isString()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString()); + else if (entry.getValue().getAsJsonPrimitive().isNumber()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber()); + else if (entry.getValue().getAsJsonPrimitive().isBoolean()) + instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean()); + else + throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString())); + } else if (entry.getValue().isJsonArray()) { + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class)); + } else { // JSON object + instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class)); + } + } + } + return instance; + } + + }.nullSafe(); + } + } + + /** + * Create an instance of SortItem given an JSON string + * + * @param jsonString JSON string + * @return An instance of SortItem + * @throws IOException if the JSON string is invalid with respect to SortItem + */ + public static SortItem fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, SortItem.class); + } + + /** + * Convert an instance of SortItem to an JSON string + * + * @return JSON string + */ + public String toJson() { + return JSON.getGson().toJson(this); + } +} + diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/SubInterface.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/SubInterface.java index e4dafc36..559dd3cc 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/SubInterface.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/SubInterface.java @@ -47,59 +47,6 @@ */ @javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class SubInterface { - /** - * type of connection vlan - */ - @JsonAdapter(TypeEnum.Adapter.class) - public enum TypeEnum { - VNI("VNI"), - - VXLAN("VXLAN"), - - VLAN("VLAN"); - - private String value; - - TypeEnum(String value) { - this.value = value; - } - - public String getValue() { - return value; - } - - @Override - public String toString() { - return String.valueOf(value); - } - - public static TypeEnum fromValue(String value) { - for (TypeEnum b : TypeEnum.values()) { - if (b.value.equals(value)) { - return b; - } - } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); - } - - public static class Adapter extends TypeAdapter { - @Override - public void write(final JsonWriter jsonWriter, final TypeEnum enumeration) throws IOException { - jsonWriter.value(enumeration.getValue()); - } - - @Override - public TypeEnum read(final JsonReader jsonReader) throws IOException { - String value = jsonReader.nextString(); - return TypeEnum.fromValue(value); - } - } - } - - public static final String SERIALIZED_NAME_TYPE = "type"; - @SerializedName(SERIALIZED_NAME_TYPE) - private TypeEnum type; - public static final String SERIALIZED_NAME_NAME = "name"; @SerializedName(SERIALIZED_NAME_NAME) private String name; @@ -111,28 +58,6 @@ public TypeEnum read(final JsonReader jsonReader) throws IOException { public SubInterface() { } - public SubInterface type(TypeEnum type) { - - this.type = type; - return this; - } - - /** - * type of connection vlan - * @return type - **/ - @javax.annotation.Nullable - - public TypeEnum getType() { - return type; - } - - - public void setType(TypeEnum type) { - this.type = type; - } - - public SubInterface name(String name) { this.name = name; @@ -231,22 +156,20 @@ public boolean equals(Object o) { return false; } SubInterface subInterface = (SubInterface) o; - return Objects.equals(this.type, subInterface.type) && - Objects.equals(this.name, subInterface.name) && + return Objects.equals(this.name, subInterface.name) && Objects.equals(this.unit, subInterface.unit)&& Objects.equals(this.additionalProperties, subInterface.additionalProperties); } @Override public int hashCode() { - return Objects.hash(type, name, unit, additionalProperties); + return Objects.hash(name, unit, additionalProperties); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class SubInterface {\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); sb.append(" name: ").append(toIndentedString(name)).append("\n"); sb.append(" unit: ").append(toIndentedString(unit)).append("\n"); sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); @@ -272,7 +195,6 @@ private String toIndentedString(Object o) { static { // a set of all properties/fields (JSON key names) openapiFields = new HashSet(); - openapiFields.add("type"); openapiFields.add("name"); openapiFields.add("unit"); @@ -292,9 +214,6 @@ public static void validateJsonObject(JsonObject jsonObj) throws IOException { throw new IllegalArgumentException(String.format("The required field(s) %s in SubInterface is not found in the empty JSON string", SubInterface.openapiRequiredFields.toString())); } } - if ((jsonObj.get("type") != null && !jsonObj.get("type").isJsonNull()) && !jsonObj.get("type").isJsonPrimitive()) { - throw new IllegalArgumentException(String.format("Expected the field `type` to be a primitive type in the JSON string but got `%s`", jsonObj.get("type").toString())); - } if ((jsonObj.get("name") != null && !jsonObj.get("name").isJsonNull()) && !jsonObj.get("name").isJsonPrimitive()) { throw new IllegalArgumentException(String.format("Expected the field `name` to be a primitive type in the JSON string but got `%s`", jsonObj.get("name").toString())); } diff --git a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/VirtualConnectionPriceConnectionType.java b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/VirtualConnectionPriceConnectionType.java index 2626c3ff..4f36abe4 100644 --- a/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/VirtualConnectionPriceConnectionType.java +++ b/equinix-openapi-fabric/src/main/java/com/equinix/openapi/fabric/v4/model/VirtualConnectionPriceConnectionType.java @@ -44,7 +44,9 @@ public enum VirtualConnectionPriceConnectionType { EPLAN_VC("EPLAN_VC"), - IPWAN_VC("IPWAN_VC"); + IPWAN_VC("IPWAN_VC"), + + IA_VC("IA_VC"); private String value; diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/api/RouteFilterRulesApiTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/api/RouteFilterRulesApiTest.java index a67f896a..e5adedff 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/api/RouteFilterRulesApiTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/api/RouteFilterRulesApiTest.java @@ -15,13 +15,12 @@ import com.equinix.openapi.fabric.ApiException; import com.equinix.openapi.fabric.v4.model.Error; import com.equinix.openapi.fabric.v4.model.GetRouteFilterRulesResponse; -import com.equinix.openapi.fabric.v4.model.RouteFilterChangePrefixMatch; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesBase; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesChangeData; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesChangeDataResponse; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesData; +import com.equinix.openapi.fabric.v4.model.RouteFilterRulesPatchRequestItem; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesPostRequest; -import com.equinix.openapi.fabric.v4.model.RouteFiltersData; import java.util.UUID; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; @@ -159,8 +158,8 @@ public void getRouteFilterRulesTest() throws ApiException { public void patchRouteFilterRuleByUuidTest() throws ApiException { String routeFilterId = null; String routeFilterRuleId = null; - List routeFilterChangePrefixMatch = null; - RouteFiltersData response = api.patchRouteFilterRuleByUuid(routeFilterId, routeFilterRuleId, routeFilterChangePrefixMatch); + List routeFilterRulesPatchRequestItem = null; + RouteFilterRulesData response = api.patchRouteFilterRuleByUuid(routeFilterId, routeFilterRuleId, routeFilterRulesPatchRequestItem); // TODO: test validations } diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/api/RouteFiltersApiTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/api/RouteFiltersApiTest.java index 58323c85..4060786f 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/api/RouteFiltersApiTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/api/RouteFiltersApiTest.java @@ -13,7 +13,6 @@ package com.equinix.openapi.fabric.v4.api; import com.equinix.openapi.fabric.ApiException; -import com.equinix.openapi.fabric.v4.model.ConnectionChangeOperation; import com.equinix.openapi.fabric.v4.model.ConnectionRouteFilterData; import com.equinix.openapi.fabric.v4.model.ConnectionRouteFiltersBase; import com.equinix.openapi.fabric.v4.model.Error; @@ -23,6 +22,9 @@ import com.equinix.openapi.fabric.v4.model.RouteFilterChangeDataResponse; import com.equinix.openapi.fabric.v4.model.RouteFiltersBase; import com.equinix.openapi.fabric.v4.model.RouteFiltersData; +import com.equinix.openapi.fabric.v4.model.RouteFiltersPatchRequestItem; +import com.equinix.openapi.fabric.v4.model.RouteFiltersSearchBase; +import com.equinix.openapi.fabric.v4.model.RouteFiltersSearchResponse; import java.util.UUID; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; @@ -197,23 +199,22 @@ public void getRouteFilterConnectionsTest() throws ApiException { @Test public void patchRouteFilterByUuidTest() throws ApiException { String routeFilterId = null; - List connectionChangeOperation = null; - RouteFiltersData response = api.patchRouteFilterByUuid(routeFilterId, connectionChangeOperation); + List routeFiltersPatchRequestItem = null; + RouteFiltersData response = api.patchRouteFilterByUuid(routeFilterId, routeFiltersPatchRequestItem); // TODO: test validations } /** - * Replace Route Filter + * Search Route Filters * - * This API provides capability to replace a Route Filter completely + * This API provides capability to search Route Filters * * @throws ApiException if the Api call fails */ @Test - public void replaceRouteFilterByUuidTest() throws ApiException { - String routeFilterId = null; - RouteFiltersBase routeFiltersBase = null; - RouteFiltersData response = api.replaceRouteFilterByUuid(routeFilterId, routeFiltersBase); + public void searchRouteFiltersTest() throws ApiException { + RouteFiltersSearchBase routeFiltersSearchBase = null; + RouteFiltersSearchResponse response = api.searchRouteFilters(routeFiltersSearchBase); // TODO: test validations } diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/AccessPointTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/AccessPointTest.java index ccfc7a1b..079d5701 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/AccessPointTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/AccessPointTest.java @@ -14,6 +14,7 @@ import com.equinix.openapi.fabric.v4.model.AccessPointType; import com.equinix.openapi.fabric.v4.model.CloudRouter; +import com.equinix.openapi.fabric.v4.model.MetalInterconnection; import com.equinix.openapi.fabric.v4.model.ModelInterface; import com.equinix.openapi.fabric.v4.model.PeeringType; import com.equinix.openapi.fabric.v4.model.SimplifiedAccount; @@ -168,4 +169,12 @@ public void virtualNetworkTest() { // TODO: test virtualNetwork } + /** + * Test the property 'interconnection' + */ + @Test + public void interconnectionTest() { + // TODO: test interconnection + } + } diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/LinkProtocolResponseTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/LinkProtocolResponseTest.java index 5270c3da..b8bfc673 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/LinkProtocolResponseTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/LinkProtocolResponseTest.java @@ -12,7 +12,6 @@ package com.equinix.openapi.fabric.v4.model; -import com.equinix.openapi.fabric.v4.model.AdditionalInfo; import com.equinix.openapi.fabric.v4.model.Changelog; import com.equinix.openapi.fabric.v4.model.LinkProtocolConnection; import com.equinix.openapi.fabric.v4.model.LinkProtocolRequestType; @@ -25,8 +24,7 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import java.util.ArrayList; -import java.util.List; +import java.net.URI; import java.util.UUID; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; @@ -46,6 +44,14 @@ public void testLinkProtocolResponse() { // TODO: test LinkProtocolResponse } + /** + * Test the property 'href' + */ + @Test + public void hrefTest() { + // TODO: test href + } + /** * Test the property 'uuid' */ @@ -78,6 +84,14 @@ public void vlanTagTest() { // TODO: test vlanTag } + /** + * Test the property 'vni' + */ + @Test + public void vniTest() { + // TODO: test vni + } + /** * Test the property 'vlanTagMin' */ @@ -135,19 +149,11 @@ public void subInterfaceTest() { } /** - * Test the property 'additionalInfo' - */ - @Test - public void additionalInfoTest() { - // TODO: test additionalInfo - } - - /** - * Test the property 'connection' + * Test the property 'asset' */ @Test - public void connectionTest() { - // TODO: test connection + public void assetTest() { + // TODO: test asset } /** diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectAllOfTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/MetalInterconnectionTest.java similarity index 72% rename from equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectAllOfTest.java rename to equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/MetalInterconnectionTest.java index be23bc17..257b716c 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataProjectAllOfTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/MetalInterconnectionTest.java @@ -18,31 +18,31 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import java.io.IOException; -import java.net.URI; +import java.util.UUID; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; /** - * Model tests for RouteFiltersDataProjectAllOf + * Model tests for MetalInterconnection */ -public class RouteFiltersDataProjectAllOfTest { - private final RouteFiltersDataProjectAllOf model = new RouteFiltersDataProjectAllOf(); +public class MetalInterconnectionTest { + private final MetalInterconnection model = new MetalInterconnection(); /** - * Model tests for RouteFiltersDataProjectAllOf + * Model tests for MetalInterconnection */ @Test - public void testRouteFiltersDataProjectAllOf() { - // TODO: test RouteFiltersDataProjectAllOf + public void testMetalInterconnection() { + // TODO: test MetalInterconnection } /** - * Test the property 'href' + * Test the property 'uuid' */ @Test - public void hrefTest() { - // TODO: test href + public void uuidTest() { + // TODO: test uuid } } diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PackageRequestTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageRequestTest.java similarity index 80% rename from equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PackageRequestTest.java rename to equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageRequestTest.java index 8477fd54..58514ba8 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PackageRequestTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageRequestTest.java @@ -24,17 +24,17 @@ /** - * Model tests for PackageRequest + * Model tests for PrecisionTimePackageRequest */ -public class PackageRequestTest { - private final PackageRequest model = new PackageRequest(); +public class PrecisionTimePackageRequestTest { + private final PrecisionTimePackageRequest model = new PrecisionTimePackageRequest(); /** - * Model tests for PackageRequest + * Model tests for PrecisionTimePackageRequest */ @Test - public void testPackageRequest() { - // TODO: test PackageRequest + public void testPrecisionTimePackageRequest() { + // TODO: test PrecisionTimePackageRequest } /** diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponseTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponseTest.java new file mode 100644 index 00000000..a44e65f8 --- /dev/null +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimePackageResponseTest.java @@ -0,0 +1,137 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import com.equinix.openapi.fabric.v4.model.Changelog; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.net.URI; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + + +/** + * Model tests for PrecisionTimePackageResponse + */ +public class PrecisionTimePackageResponseTest { + private final PrecisionTimePackageResponse model = new PrecisionTimePackageResponse(); + + /** + * Model tests for PrecisionTimePackageResponse + */ + @Test + public void testPrecisionTimePackageResponse() { + // TODO: test PrecisionTimePackageResponse + } + + /** + * Test the property 'href' + */ + @Test + public void hrefTest() { + // TODO: test href + } + + /** + * Test the property 'code' + */ + @Test + public void codeTest() { + // TODO: test code + } + + /** + * Test the property 'type' + */ + @Test + public void typeTest() { + // TODO: test type + } + + /** + * Test the property 'bandwidth' + */ + @Test + public void bandwidthTest() { + // TODO: test bandwidth + } + + /** + * Test the property 'clientsPerSecondMax' + */ + @Test + public void clientsPerSecondMaxTest() { + // TODO: test clientsPerSecondMax + } + + /** + * Test the property 'redundancySupported' + */ + @Test + public void redundancySupportedTest() { + // TODO: test redundancySupported + } + + /** + * Test the property 'multiSubnetSupported' + */ + @Test + public void multiSubnetSupportedTest() { + // TODO: test multiSubnetSupported + } + + /** + * Test the property 'accuracyUnit' + */ + @Test + public void accuracyUnitTest() { + // TODO: test accuracyUnit + } + + /** + * Test the property 'accuracySla' + */ + @Test + public void accuracySlaTest() { + // TODO: test accuracySla + } + + /** + * Test the property 'accuracyAvgMin' + */ + @Test + public void accuracyAvgMinTest() { + // TODO: test accuracyAvgMin + } + + /** + * Test the property 'accuracyAvgMax' + */ + @Test + public void accuracyAvgMaxTest() { + // TODO: test accuracyAvgMax + } + + /** + * Test the property 'changelog' + */ + @Test + public void changelogTest() { + // TODO: test changelog + } + +} diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponseTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponseTest.java index 248b123f..cdc5a3ab 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponseTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceCreateResponseTest.java @@ -16,7 +16,7 @@ import com.equinix.openapi.fabric.v4.model.AdvanceConfiguration; import com.equinix.openapi.fabric.v4.model.FabricConnectionUuid; import com.equinix.openapi.fabric.v4.model.Ipv4; -import com.equinix.openapi.fabric.v4.model.PackageResponse; +import com.equinix.openapi.fabric.v4.model.PrecisionTimePackageResponse; import com.equinix.openapi.fabric.v4.model.Project; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequestTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequestTest.java index 87a07791..ed7de2d7 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequestTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/PrecisionTimeServiceRequestTest.java @@ -15,7 +15,7 @@ import com.equinix.openapi.fabric.v4.model.AdvanceConfiguration; import com.equinix.openapi.fabric.v4.model.FabricConnectionUuid; import com.equinix.openapi.fabric.v4.model.Ipv4; -import com.equinix.openapi.fabric.v4.model.PackageRequest; +import com.equinix.openapi.fabric.v4.model.PrecisionTimePackageRequest; import com.equinix.openapi.fabric.v4.model.Project; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleStateTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleStateTest.java new file mode 100644 index 00000000..ebb3fc3b --- /dev/null +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRuleStateTest.java @@ -0,0 +1,32 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import com.google.gson.annotations.SerializedName; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + + +/** + * Model tests for RouteFilterRuleState + */ +public class RouteFilterRuleStateTest { + /** + * Model tests for RouteFilterRuleState + */ + @Test + public void testRouteFilterRuleState() { + // TODO: test RouteFilterRuleState + } + +} diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesDataTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesDataTest.java index 8f653fed..cfee9ba0 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesDataTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesDataTest.java @@ -13,6 +13,7 @@ package com.equinix.openapi.fabric.v4.model; import com.equinix.openapi.fabric.v4.model.Changelog; +import com.equinix.openapi.fabric.v4.model.RouteFilterRuleState; import com.equinix.openapi.fabric.v4.model.RouteFilterRulesChange; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; @@ -80,6 +81,14 @@ public void descriptionTest() { // TODO: test description } + /** + * Test the property 'state' + */ + @Test + public void stateTest() { + // TODO: test state + } + /** * Test the property 'prefixMatch' */ diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItemTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItemTest.java new file mode 100644 index 00000000..371a82d1 --- /dev/null +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterRulesPatchRequestItemTest.java @@ -0,0 +1,63 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + + +/** + * Model tests for RouteFilterRulesPatchRequestItem + */ +public class RouteFilterRulesPatchRequestItemTest { + private final RouteFilterRulesPatchRequestItem model = new RouteFilterRulesPatchRequestItem(); + + /** + * Model tests for RouteFilterRulesPatchRequestItem + */ + @Test + public void testRouteFilterRulesPatchRequestItem() { + // TODO: test RouteFilterRulesPatchRequestItem + } + + /** + * Test the property 'op' + */ + @Test + public void opTest() { + // TODO: test op + } + + /** + * Test the property 'path' + */ + @Test + public void pathTest() { + // TODO: test path + } + + /** + * Test the property 'value' + */ + @Test + public void valueTest() { + // TODO: test value + } + +} diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataTest.java index 81e4c736..9070d682 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersDataTest.java @@ -117,6 +117,14 @@ public void connectionsCountTest() { // TODO: test connectionsCount } + /** + * Test the property 'rulesCount' + */ + @Test + public void rulesCountTest() { + // TODO: test rulesCount + } + /** * Test the property 'project' */ diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangePrefixMatchTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersPatchRequestItemTest.java similarity index 81% rename from equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangePrefixMatchTest.java rename to equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersPatchRequestItemTest.java index 11e037bf..864a9368 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFilterChangePrefixMatchTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersPatchRequestItemTest.java @@ -23,17 +23,17 @@ /** - * Model tests for RouteFilterChangePrefixMatch + * Model tests for RouteFiltersPatchRequestItem */ -public class RouteFilterChangePrefixMatchTest { - private final RouteFilterChangePrefixMatch model = new RouteFilterChangePrefixMatch(); +public class RouteFiltersPatchRequestItemTest { + private final RouteFiltersPatchRequestItem model = new RouteFiltersPatchRequestItem(); /** - * Model tests for RouteFilterChangePrefixMatch + * Model tests for RouteFiltersPatchRequestItem */ @Test - public void testRouteFilterChangePrefixMatch() { - // TODO: test RouteFilterChangePrefixMatch + public void testRouteFiltersPatchRequestItem() { + // TODO: test RouteFiltersPatchRequestItem } /** diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilterTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilterTest.java new file mode 100644 index 00000000..973287ac --- /dev/null +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseFilterTest.java @@ -0,0 +1,50 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import com.equinix.openapi.fabric.v4.model.RouteFiltersSearchFilterItem; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + + +/** + * Model tests for RouteFiltersSearchBaseFilter + */ +public class RouteFiltersSearchBaseFilterTest { + private final RouteFiltersSearchBaseFilter model = new RouteFiltersSearchBaseFilter(); + + /** + * Model tests for RouteFiltersSearchBaseFilter + */ + @Test + public void testRouteFiltersSearchBaseFilter() { + // TODO: test RouteFiltersSearchBaseFilter + } + + /** + * Test the property 'and' + */ + @Test + public void andTest() { + // TODO: test and + } + +} diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseTest.java new file mode 100644 index 00000000..ee559ee8 --- /dev/null +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchBaseTest.java @@ -0,0 +1,68 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import com.equinix.openapi.fabric.v4.model.Pagination; +import com.equinix.openapi.fabric.v4.model.RouteFiltersSearchBaseFilter; +import com.equinix.openapi.fabric.v4.model.SortItem; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + + +/** + * Model tests for RouteFiltersSearchBase + */ +public class RouteFiltersSearchBaseTest { + private final RouteFiltersSearchBase model = new RouteFiltersSearchBase(); + + /** + * Model tests for RouteFiltersSearchBase + */ + @Test + public void testRouteFiltersSearchBase() { + // TODO: test RouteFiltersSearchBase + } + + /** + * Test the property 'filter' + */ + @Test + public void filterTest() { + // TODO: test filter + } + + /** + * Test the property 'pagination' + */ + @Test + public void paginationTest() { + // TODO: test pagination + } + + /** + * Test the property 'sort' + */ + @Test + public void sortTest() { + // TODO: test sort + } + +} diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItemTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItemTest.java new file mode 100644 index 00000000..a3cf84f0 --- /dev/null +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchFilterItemTest.java @@ -0,0 +1,65 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + + +/** + * Model tests for RouteFiltersSearchFilterItem + */ +public class RouteFiltersSearchFilterItemTest { + private final RouteFiltersSearchFilterItem model = new RouteFiltersSearchFilterItem(); + + /** + * Model tests for RouteFiltersSearchFilterItem + */ + @Test + public void testRouteFiltersSearchFilterItem() { + // TODO: test RouteFiltersSearchFilterItem + } + + /** + * Test the property 'property' + */ + @Test + public void propertyTest() { + // TODO: test property + } + + /** + * Test the property 'operator' + */ + @Test + public void operatorTest() { + // TODO: test operator + } + + /** + * Test the property 'values' + */ + @Test + public void valuesTest() { + // TODO: test values + } + +} diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponseTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponseTest.java new file mode 100644 index 00000000..8d36544f --- /dev/null +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/RouteFiltersSearchResponseTest.java @@ -0,0 +1,59 @@ +/* + * Equinix Fabric API v4 + * Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to:
1. Cloud Service Providers - Clouds, network and other service providers.
2. Enterprises - Other Equinix customers, vendors and partners.
3. Myself - Another customer instance deployed at Equinix.
+ * + * Contact: api-support@equinix.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.equinix.openapi.fabric.v4.model; + +import com.equinix.openapi.fabric.v4.model.Pagination; +import com.equinix.openapi.fabric.v4.model.RouteFiltersData; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + + +/** + * Model tests for RouteFiltersSearchResponse + */ +public class RouteFiltersSearchResponseTest { + private final RouteFiltersSearchResponse model = new RouteFiltersSearchResponse(); + + /** + * Model tests for RouteFiltersSearchResponse + */ + @Test + public void testRouteFiltersSearchResponse() { + // TODO: test RouteFiltersSearchResponse + } + + /** + * Test the property 'pagination' + */ + @Test + public void paginationTest() { + // TODO: test pagination + } + + /** + * Test the property 'data' + */ + @Test + public void dataTest() { + // TODO: test data + } + +} diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/AdditionalInfoTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/SortItemTest.java similarity index 74% rename from equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/AdditionalInfoTest.java rename to equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/SortItemTest.java index 7e7aa755..1a95c876 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/AdditionalInfoTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/SortItemTest.java @@ -23,33 +23,33 @@ /** - * Model tests for AdditionalInfo + * Model tests for SortItem */ -public class AdditionalInfoTest { - private final AdditionalInfo model = new AdditionalInfo(); +public class SortItemTest { + private final SortItem model = new SortItem(); /** - * Model tests for AdditionalInfo + * Model tests for SortItem */ @Test - public void testAdditionalInfo() { - // TODO: test AdditionalInfo + public void testSortItem() { + // TODO: test SortItem } /** - * Test the property 'key' + * Test the property 'property' */ @Test - public void keyTest() { - // TODO: test key + public void propertyTest() { + // TODO: test property } /** - * Test the property 'value' + * Test the property 'direction' */ @Test - public void valueTest() { - // TODO: test value + public void directionTest() { + // TODO: test direction } } diff --git a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/SubInterfaceTest.java b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/SubInterfaceTest.java index 37030c0b..8700dbd8 100644 --- a/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/SubInterfaceTest.java +++ b/equinix-openapi-fabric/src/test/java/com/equinix/openapi/fabric/v4/model/SubInterfaceTest.java @@ -36,14 +36,6 @@ public void testSubInterface() { // TODO: test SubInterface } - /** - * Test the property 'type' - */ - @Test - public void typeTest() { - // TODO: test type - } - /** * Test the property 'name' */ From 862faf2df2aee1236623f15f5c05b415090afcf0 Mon Sep 17 00:00:00 2001 From: thogarty Date: Thu, 15 Feb 2024 19:59:03 +0000 Subject: [PATCH 3/3] [create-pull-request] automated change --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index e2052223..fd784a21 100644 --- a/Makefile +++ b/Makefile @@ -27,7 +27,7 @@ CRI:=docker # nerdctl OPENAPI_CODEGEN_TAG=v6.4.0 OPENAPI_CODEGEN_IMAGE=openapitools/openapi-generator-cli:${OPENAPI_CODEGEN_TAG} DOCKER_OPENAPI=${CRI} run --rm -u ${CURRENT_UID}:${CURRENT_GID} -v $(CURDIR):/local ${OPENAPI_CODEGEN_IMAGE} -OPENAPI_URL="https://app.swaggerhub.com/apiproxy/registry/equinix-api/fabric/4.11" +OPENAPI_URL="https://app.swaggerhub.com/apiproxy/registry/equinix-api/fabric/4.12" generate: clean fetch pre-spec-patch pull docker_generate build_client