Commit 6e4de84c authored by Walter Featherstone's avatar Walter Featherstone

Sepeated ServiceInfo POST message body

Signed-off-by: Walter Featherstone's avatarfeatherstone <walter.featherstone@viavisolutions.com>
parent 614bb942
{
"git.ignoreLimitWarning": true
}
\ No newline at end of file
...@@ -338,7 +338,7 @@ ...@@ -338,7 +338,7 @@
} }
}, },
"requestBody": { "requestBody": {
"$ref": "#/components/requestBodies/Services" "$ref": "#/components/requestBodies/Services.Post"
} }
} }
}, },
...@@ -1130,6 +1130,7 @@ ...@@ -1130,6 +1130,7 @@
"ServiceInfo.TransportId": { "ServiceInfo.TransportId": {
"description": "Identifier of the platform-provided transport to be used by the service. Valid identifiers may be obtained using the \"Transport information query\" procedure. May be present in POST requests to signal the use of a platform-provided transport for the service, and shall be absent otherwise.", "description": "Identifier of the platform-provided transport to be used by the service. Valid identifiers may be obtained using the \"Transport information query\" procedure. May be present in POST requests to signal the use of a platform-provided transport for the service, and shall be absent otherwise.",
"type": "string", "type": "string",
"writeOnly": true,
"example": "Rest1" "example": "Rest1"
}, },
"ServiceInfo.Version": { "ServiceInfo.Version": {
...@@ -1147,7 +1148,7 @@ ...@@ -1147,7 +1148,7 @@
"type": "boolean", "type": "boolean",
"example": true "example": true
}, },
"ServiceInfo": { "ServiceInfo.Post": {
"description": "This type represents the general information of a mobile edge service.", "description": "This type represents the general information of a mobile edge service.",
"type": "object", "type": "object",
"required": [ "required": [
...@@ -1156,6 +1157,18 @@ ...@@ -1156,6 +1157,18 @@
"state", "state",
"serializer" "serializer"
], ],
"oneOf": [
{
"required": [
"transportId"
]
},
{
"required": [
"transportInfo"
]
}
],
"properties": { "properties": {
"serInstanceId": { "serInstanceId": {
"$ref": "#/components/schemas/ServiceInfo.SerInstanceId" "$ref": "#/components/schemas/ServiceInfo.SerInstanceId"
...@@ -1192,6 +1205,49 @@ ...@@ -1192,6 +1205,49 @@
} }
} }
}, },
"ServiceInfo": {
"description": "This type represents the general information of a mobile edge service.",
"type": "object",
"required": [
"serName",
"version",
"state",
"transportInfo",
"serializer"
],
"properties": {
"serInstanceId": {
"$ref": "#/components/schemas/ServiceInfo.SerInstanceId"
},
"serName": {
"$ref": "#/components/schemas/ServiceInfo.SerName"
},
"serCategory": {
"$ref": "#/components/schemas/CategoryRef"
},
"version": {
"$ref": "#/components/schemas/ServiceInfo.Version"
},
"state": {
"$ref": "#/components/schemas/ServiceInfo.State"
},
"transportInfo": {
"$ref": "#/components/schemas/TransportInfo"
},
"serializer": {
"$ref": "#/components/schemas/SerializerTypes"
},
"scopeOfLocality": {
"$ref": "#/components/schemas/LocalityTypes"
},
"consumedLocalOnly": {
"$ref": "#/components/schemas/ServiceInfo.ConsumedLocalOnly"
},
"isLocal": {
"$ref": "#/components/schemas/ServiceInfo.IsLocal"
}
}
},
"Subscription": { "Subscription": {
"description": "A link to the related subscription", "description": "A link to the related subscription",
"type": "object", "type": "object",
...@@ -2098,6 +2154,11 @@ ...@@ -2098,6 +2154,11 @@
} }
} }
} }
},
"links": {
"getTransportInfo": {
"$ref": "#/components/links/GetTransportInfo"
}
} }
}, },
"Error.400": { "Error.400": {
...@@ -2208,6 +2269,17 @@ ...@@ -2208,6 +2269,17 @@
"description": "New ServiceInfo with updated \"state\" is included as entity body of the request", "description": "New ServiceInfo with updated \"state\" is included as entity body of the request",
"required": true "required": true
}, },
"Services.Post": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceInfo.Post"
}
}
},
"description": "New ServiceInfo with updated \"state\" is included as entity body of the request",
"required": true
},
"ServicesServiceId": { "ServicesServiceId": {
"content": { "content": {
"application/json": { "application/json": {
...@@ -2313,6 +2385,13 @@ ...@@ -2313,6 +2385,13 @@
"trafficRuleId": "$response.body#/trafficRuleId" "trafficRuleId": "$response.body#/trafficRuleId"
} }
}, },
"GetTransportInfo": {
"operationId": "AppServices_POST",
"description": "The `id` value returned in the response can be used as the `transportId` parameter in `POST /applications/{appInstanceId}/services`. The first transport is provided as the link as wildcards are not supported",
"parameters": {
"transportId": "$response.body#/0/id"
}
},
"GetIndividualMeMp1Subscription": { "GetIndividualMeMp1Subscription": {
"operationId": "ApplicationsSubscription_GET", "operationId": "ApplicationsSubscription_GET",
"description": "The `subscriptionId` value returned in the response can be used as the `subscriptionId` parameter in `GET /applications/{appInstanceId}/subscriptions/{subscriptionType}/{subscriptionId}`", "description": "The `subscriptionId` value returned in the response can be used as the `subscriptionId` parameter in `GET /applications/{appInstanceId}/subscriptions/{subscriptionType}/{subscriptionId}`",
......
...@@ -232,7 +232,7 @@ paths: ...@@ -232,7 +232,7 @@ paths:
'404': '404':
$ref: '#/components/responses/Error.404' $ref: '#/components/responses/Error.404'
requestBody: requestBody:
$ref: '#/components/requestBodies/Services' $ref: '#/components/requestBodies/Services.Post'
'/applications/{appInstanceId}/services/{serviceId}': '/applications/{appInstanceId}/services/{serviceId}':
parameters: parameters:
- $ref: '#/components/parameters/Path.AppInstanceId' - $ref: '#/components/parameters/Path.AppInstanceId'
...@@ -308,10 +308,6 @@ paths: ...@@ -308,10 +308,6 @@ paths:
$ref: '#/components/responses/Error.403' $ref: '#/components/responses/Error.403'
'404': '404':
$ref: '#/components/responses/Error.404' $ref: '#/components/responses/Error.404'
'/timing/current_time': '/timing/current_time':
get: get:
description: >- description: >-
...@@ -867,6 +863,7 @@ components: ...@@ -867,6 +863,7 @@ components:
platform-provided transport for the service, and shall be absent platform-provided transport for the service, and shall be absent
otherwise. otherwise.
type: string type: string
writeOnly: true
example: 'Rest1' example: 'Rest1'
ServiceInfo.Version: ServiceInfo.Version:
description: Service version description: Service version
...@@ -885,7 +882,7 @@ components: ...@@ -885,7 +882,7 @@ components:
by scopeOfLocality) as the consuming MEC application. by scopeOfLocality) as the consuming MEC application.
type: boolean type: boolean
example: true example: true
ServiceInfo: ServiceInfo.Post:
description: This type represents the general information of a mobile edge service. description: This type represents the general information of a mobile edge service.
type: object type: object
required: required:
...@@ -893,6 +890,9 @@ components: ...@@ -893,6 +890,9 @@ components:
- version - version
- state - state
- serializer - serializer
oneOf:
- required: [transportId]
- required: [transportInfo]
properties: properties:
serInstanceId: serInstanceId:
$ref: '#/components/schemas/ServiceInfo.SerInstanceId' $ref: '#/components/schemas/ServiceInfo.SerInstanceId'
...@@ -914,6 +914,36 @@ components: ...@@ -914,6 +914,36 @@ components:
$ref: '#/components/schemas/LocalityTypes' $ref: '#/components/schemas/LocalityTypes'
consumedLocalOnly: consumedLocalOnly:
$ref: '#/components/schemas/ServiceInfo.ConsumedLocalOnly' $ref: '#/components/schemas/ServiceInfo.ConsumedLocalOnly'
isLocal:
$ref: '#/components/schemas/ServiceInfo.IsLocal'
ServiceInfo:
description: This type represents the general information of a mobile edge service.
type: object
required:
- serName
- version
- state
- transportInfo
- serializer
properties:
serInstanceId:
$ref: '#/components/schemas/ServiceInfo.SerInstanceId'
serName:
$ref: '#/components/schemas/ServiceInfo.SerName'
serCategory:
$ref: '#/components/schemas/CategoryRef'
version:
$ref: '#/components/schemas/ServiceInfo.Version'
state:
$ref: '#/components/schemas/ServiceInfo.State'
transportInfo:
$ref: '#/components/schemas/TransportInfo'
serializer:
$ref: '#/components/schemas/SerializerTypes'
scopeOfLocality:
$ref: '#/components/schemas/LocalityTypes'
consumedLocalOnly:
$ref: '#/components/schemas/ServiceInfo.ConsumedLocalOnly'
isLocal: isLocal:
$ref: '#/components/schemas/ServiceInfo.IsLocal' $ref: '#/components/schemas/ServiceInfo.IsLocal'
Subscription: Subscription:
...@@ -1637,6 +1667,9 @@ components: ...@@ -1637,6 +1667,9 @@ components:
minItems: 0 minItems: 0
items: items:
$ref: '#/components/schemas/TransportInfo' $ref: '#/components/schemas/TransportInfo'
links:
getTransportInfo:
$ref: '#/components/links/GetTransportInfo'
Error.400: Error.400:
description: Bad Request description: Bad Request
content: content:
...@@ -1705,6 +1738,15 @@ components: ...@@ -1705,6 +1738,15 @@ components:
New ServiceInfo with updated "state" is included as entity body of the New ServiceInfo with updated "state" is included as entity body of the
request request
required: true required: true
Services.Post:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceInfo.Post'
description: >-
New ServiceInfo with updated "state" is included as entity body of the
request
required: true
ServicesServiceId: ServicesServiceId:
content: content:
application/json: application/json:
...@@ -1774,6 +1816,11 @@ components: ...@@ -1774,6 +1816,11 @@ components:
description: The `trafficRuleId` value returned in the response can be used as the `trafficRuleId` parameter in `PUT /applications/{appInstanceId}/traffic_rules/{trafficRuleId}` description: The `trafficRuleId` value returned in the response can be used as the `trafficRuleId` parameter in `PUT /applications/{appInstanceId}/traffic_rules/{trafficRuleId}`
parameters: parameters:
trafficRuleId: '$response.body#/trafficRuleId' trafficRuleId: '$response.body#/trafficRuleId'
GetTransportInfo:
operationId: AppServices_POST
description: The `id` value returned in the response can be used as the `transportId` parameter in `POST /applications/{appInstanceId}/services`. The first transport is provided as the link as wildcards are not supported
parameters:
transportId: '$response.body#/0/id'
GetIndividualMeMp1Subscription: GetIndividualMeMp1Subscription:
operationId: ApplicationsSubscription_GET operationId: ApplicationsSubscription_GET
description: The `subscriptionId` value returned in the response can be used as the `subscriptionId` parameter in `GET /applications/{appInstanceId}/subscriptions/{subscriptionType}/{subscriptionId}` description: The `subscriptionId` value returned in the response can be used as the `subscriptionId` parameter in `GET /applications/{appInstanceId}/subscriptions/{subscriptionType}/{subscriptionId}`
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment