aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--a1-policy-management/api/pms-api.json633
-rw-r--r--a1-policy-management/pom.xml6
2 files changed, 499 insertions, 140 deletions
diff --git a/a1-policy-management/api/pms-api.json b/a1-policy-management/api/pms-api.json
index 5c5915c5..a81070f7 100644
--- a/a1-policy-management/api/pms-api.json
+++ b/a1-policy-management/api/pms-api.json
@@ -15,18 +15,22 @@
"type": "integer",
"example": 404
}
- }
+ },
+ "example": null
},
"void": {
"description": "Void/empty",
- "type": "object"
+ "type": "object",
+ "example": null
},
"status_info_v2": {
"type": "object",
"properties": {"status": {
"description": "status text",
- "type": "string"
- }}
+ "type": "string",
+ "example": null
+ }},
+ "example": null
},
"ric_info_v2": {
"description": "Information for a Near-RT RIC",
@@ -34,15 +38,18 @@
"properties": {
"ric_id": {
"description": "identity of the Near-RT RIC",
- "type": "string"
+ "type": "string",
+ "example": null
},
"managed_element_ids": {
"description": "O1 identities for managed entities",
"type": "array",
"items": {
"description": "O1 identities for managed entities",
- "type": "string"
- }
+ "type": "string",
+ "example": null
+ },
+ "example": null
},
"state": {
"description": "Represents the states for a Near-RT RIC",
@@ -52,17 +59,21 @@
"AVAILABLE",
"SYNCHRONIZING",
"CONSISTENCY_CHECK"
- ]
+ ],
+ "example": null
},
"policytype_ids": {
"description": "supported policy types",
"type": "array",
"items": {
"description": "supported policy types",
- "type": "string"
- }
+ "type": "string",
+ "example": null
+ },
+ "example": null
}
- }
+ },
+ "example": null
},
"service_registration_info_v2": {
"description": "Information for one service",
@@ -71,18 +82,22 @@
"properties": {
"callback_url": {
"description": "callback for notifying of Near-RT RIC state changes",
- "type": "string"
+ "type": "string",
+ "example": null
},
"service_id": {
"description": "identity of the service",
- "type": "string"
+ "type": "string",
+ "example": null
},
"keep_alive_interval_seconds": {
"format": "int64",
"description": "keep alive interval for the service. This is used to enable optional heartbeat supervision of the service. If set (> 0) the registered service should regularly invoke a 'keepalive' REST call. When a service fails to invoke this 'keepalive' call within the configured time, the service is considered unavailable. An unavailable service will be automatically deregistered and its policies will be deleted. Value 0 means timeout supervision is disabled.",
- "type": "integer"
+ "type": "integer",
+ "example": null
}
- }
+ },
+ "example": null
},
"policy_info_list_v2": {
"description": "List of policy information",
@@ -90,8 +105,10 @@
"properties": {"policies": {
"description": "List of policy information",
"type": "array",
- "items": {"$ref": "#/components/schemas/policy_info_v2"}
- }}
+ "items": {"$ref": "#/components/schemas/policy_info_v2"},
+ "example": null
+ }},
+ "example": null
},
"policy_status_info_v2": {
"description": "Status for one A1-P Policy",
@@ -99,13 +116,16 @@
"properties": {
"last_modified": {
"description": "timestamp, last modification time",
- "type": "string"
+ "type": "string",
+ "example": null
},
"status": {
"description": "the Policy status",
- "type": "object"
+ "type": "object",
+ "example": null
}
- }
+ },
+ "example": null
},
"service_status_v2": {
"description": "List of service information",
@@ -113,23 +133,28 @@
"properties": {
"callback_url": {
"description": "callback for notifying of RIC synchronization",
- "type": "string"
+ "type": "string",
+ "example": null
},
"service_id": {
"description": "identity of the service",
- "type": "string"
+ "type": "string",
+ "example": null
},
"keep_alive_interval_seconds": {
"format": "int64",
"description": "policy keep alive timeout",
- "type": "integer"
+ "type": "integer",
+ "example": null
},
"time_since_last_activity_seconds": {
"format": "int64",
"description": "time since last invocation by the service",
- "type": "integer"
+ "type": "integer",
+ "example": null
}
- }
+ },
+ "example": null
},
"ric_info_list_v2": {
"description": "List of Near-RT RIC information",
@@ -137,16 +162,20 @@
"properties": {"rics": {
"description": "List of Near-RT RIC information",
"type": "array",
- "items": {"$ref": "#/components/schemas/ric_info_v2"}
- }}
+ "items": {"$ref": "#/components/schemas/ric_info_v2"},
+ "example": null
+ }},
+ "example": null
},
"policytype_v2": {
"description": "Policy type",
"type": "object",
"properties": {"policy_schema": {
"description": "Policy type json schema. The schema is a json object following http://json-schema.org/draft-07/schema",
- "type": "object"
- }}
+ "type": "object",
+ "example": null
+ }},
+ "example": null
},
"policytype_id_list_v2": {
"description": "Information about policy types",
@@ -156,9 +185,12 @@
"type": "array",
"items": {
"description": "Policy type identities",
- "type": "string"
- }
- }}
+ "type": "string",
+ "example": null
+ },
+ "example": null
+ }},
+ "example": null
},
"policy_info_v2": {
"description": "Information for one A1-P Policy",
@@ -173,33 +205,41 @@
"properties": {
"ric_id": {
"description": "identity of the target Near-RT RIC",
- "type": "string"
+ "type": "string",
+ "example": null
},
"policy_id": {
"description": "identity of the policy",
- "type": "string"
+ "type": "string",
+ "example": null
},
"transient": {
"description": "if true, the policy is deleted at RIC restart. If false, its value is maintained by this service until explicitly deleted. Default false.",
- "type": "boolean"
+ "type": "boolean",
+ "example": null
},
"service_id": {
"description": "the identity of the service owning the policy",
- "type": "string"
+ "type": "string",
+ "example": null
},
"policy_data": {
"description": "the configuration of the policy",
- "type": "object"
+ "type": "object",
+ "example": null
},
"status_notification_uri": {
"description": "Callback URI for policy status updates",
- "type": "string"
+ "type": "string",
+ "example": null
},
"policytype_id": {
"description": "identity of the policy type",
- "type": "string"
+ "type": "string",
+ "example": null
}
- }
+ },
+ "example": null
},
"policy_id_list_v2": {
"description": "A list of policy identities",
@@ -209,9 +249,12 @@
"type": "array",
"items": {
"description": "Policy identities",
- "type": "string"
- }
- }}
+ "type": "string",
+ "example": null
+ },
+ "example": null
+ }},
+ "example": null
},
"service_list_v2": {
"description": "List of service information",
@@ -219,8 +262,10 @@
"properties": {"service_list": {
"description": "List of service information",
"type": "array",
- "items": {"$ref": "#/components/schemas/service_status_v2"}
- }}
+ "items": {"$ref": "#/components/schemas/service_status_v2"},
+ "example": null
+ }},
+ "example": null
},
"service_callback_info_v2": {
"description": "Information transferred as in Service callbacks (callback_url)",
@@ -232,21 +277,31 @@
"properties": {
"ric_id": {
"description": "identity of a Near-RT RIC",
- "type": "string"
+ "type": "string",
+ "example": null
},
"event_type": {
"description": "values:\nAVAILABLE: the Near-RT RIC has become available for A1 Policy management",
"type": "string",
- "enum": ["AVAILABLE"]
+ "enum": ["AVAILABLE"],
+ "example": null
}
- }
+ },
+ "example": null
},
"Link": {
"type": "object",
"properties": {
- "templated": {"type": "boolean"},
- "href": {"type": "string"}
- }
+ "templated": {
+ "type": "boolean",
+ "example": null
+ },
+ "href": {
+ "type": "string",
+ "example": null
+ }
+ },
+ "example": null
}
}},
"openapi": "3.0.1",
@@ -258,37 +313,55 @@
"responses": {
"200": {
"description": "Policies",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/policy_info_list_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/policy_info_list_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Near-RT RIC, policy type or service not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "policytype_id",
"description": "Select policies with a given type identity.",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "ric_id",
"description": "Select policies for a given Near-RT RIC identity.",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "service_id",
"description": "Select policies owned by a given service.",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "type_name",
"description": "Select policies of a given type name (type identity has the format <typename_version>)",
@@ -302,7 +375,13 @@
"operationId": "threaddump_2",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -311,7 +390,10 @@
"operationId": "getStatus",
"responses": {"200": {
"description": "Service is living",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/status_info_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/status_info_v2"},
+ "example": null
+ }}
}},
"tags": ["Health Check"]
}},
@@ -320,7 +402,13 @@
"operationId": "loggers",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -329,7 +417,13 @@
"operationId": "health-path",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -340,23 +434,35 @@
"responses": {
"200": {
"description": "Near-RT RIC is found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ric_info_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/ric_info_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Near-RT RIC is not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "managed_element_id",
"description": "The identity of a Managed Element. If given, the Near-RT RIC managing the ME is returned.",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "ric_id",
"description": "The identity of a Near-RT RIC to get information for.",
@@ -371,30 +477,45 @@
"responses": {
"200": {
"description": "Policy type IDs",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/policytype_id_list_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/policytype_id_list_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Near-RT RIC is not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "ric_id",
"description": "Select types for the given Near-RT RIC identity.",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "type_name",
"description": "Select types with the given type name (type identity has the format <typename_version>)",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "compatible_with_version",
"description": "Select types that are compatible with the given version. This parameter is only applicable in conjunction with type_name. As an example version 1.9.1 is compatible with 1.0.0 but not the other way around. Matching types will be returned sorted in ascending order.",
@@ -410,15 +531,24 @@
"responses": {
"200": {
"description": "Policy found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/policy_info_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/policy_info_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Policy is not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "policy_id",
"required": true
@@ -431,23 +561,38 @@
"responses": {
"200": {
"description": "Not used",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/void"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/void"},
+ "example": null
+ }}
},
"423": {
"description": "Near-RT RIC is not operational",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
},
"204": {
"description": "Policy deleted",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/void"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/void"},
+ "example": null
+ }}
},
"404": {
"description": "Policy is not found",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "policy_id",
"required": true
@@ -460,10 +605,19 @@
"operationId": "metrics-requiredMetricName",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "requiredMetricName",
"required": true
@@ -477,11 +631,20 @@
"responses": {
"200": {
"description": "Configuration",
- "content": {"application/json": {"schema": {"type": "object"}}}
+ "content": {"application/json": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
},
"404": {
"description": "File is not found or readable",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"tags": ["Management of configuration"]
@@ -489,22 +652,37 @@
"put": {
"summary": "Replace the current configuration file with the given configuration",
"requestBody": {
- "content": {"application/json": {"schema": {"type": "object"}}},
+ "content": {"application/json": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }},
"required": true
},
"operationId": "putConfiguration",
"responses": {
"200": {
"description": "Configuration updated",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/void"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/void"},
+ "example": null
+ }}
},
"400": {
"description": "Invalid configuration provided",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
},
"500": {
"description": "Something went wrong when replacing the configuration. Try again.",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"tags": ["Management of configuration"]
@@ -515,13 +693,18 @@
"operationId": "links",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {
- "additionalProperties": {
- "additionalProperties": {"$ref": "#/components/schemas/Link"},
- "type": "object"
+ "content": {"*/*": {
+ "schema": {
+ "additionalProperties": {
+ "additionalProperties": {"$ref": "#/components/schemas/Link"},
+ "type": "object",
+ "example": null
+ },
+ "type": "object",
+ "example": null
},
- "type": "object"
- }}}
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -531,10 +714,19 @@
"operationId": "loggers-name",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "name",
"required": true
@@ -546,10 +738,19 @@
"operationId": "loggers-name_2",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "name",
"required": true
@@ -564,15 +765,27 @@
"responses": {
"200": {
"description": "Service supervision timer refreshed, OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
},
"404": {
"description": "The service is not found, needs re-registration",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "service_id",
"required": true
@@ -584,7 +797,13 @@
"operationId": "metrics",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -595,15 +814,24 @@
"responses": {
"200": {
"description": "OK",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ric_info_list_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/ric_info_list_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Policy type is not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "policytype_id",
"description": "The identity of a policy type. If given, all Near-RT RICs supporting the policy type are returned",
@@ -619,15 +847,24 @@
"responses": {
"200": {
"description": "OK",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/service_list_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/service_list_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Service is not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "service_id",
"description": "The identity of the service",
@@ -638,7 +875,10 @@
"put": {
"summary": "Register a service",
"requestBody": {
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/service_registration_info_v2"}}},
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/service_registration_info_v2"},
+ "example": null
+ }},
"required": true
},
"description": "Registering a service is needed to:<ul><li>Get callbacks.<\/li><li>Activate supervision of the service. If a service is inactive, its policies will be deleted.<\/li><\/ul>",
@@ -646,15 +886,30 @@
"responses": {
"200": {
"description": "Service updated",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
},
"201": {
"description": "Service created",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
},
"400": {
"description": "The ServiceRegistrationInfo is not accepted",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"tags": ["Service Registry and Supervision"]
@@ -665,7 +920,13 @@
"operationId": "info",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -674,7 +935,13 @@
"operationId": "getStatusV1",
"responses": {"200": {
"description": "Service is living",
- "content": {"*/*": {"schema": {"type": "string"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "string",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Health Check"]
}},
@@ -684,15 +951,24 @@
"responses": {
"200": {
"description": "Policy type",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/policytype_v2"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/policytype_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Policy type is not found",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "policytype_id",
"required": true
@@ -704,7 +980,13 @@
"operationId": "logfile",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -713,7 +995,13 @@
"operationId": "health",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -725,37 +1013,55 @@
"responses": {
"200": {
"description": "Policy identities",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/policy_id_list_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/policy_id_list_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Near-RT RIC or type not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "policytype_id",
"description": "Select policies of a given policy type identity.",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "ric_id",
"description": "Select policies of a given Near-RT RIC identity.",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "service_id",
"description": "Select policies owned by a given service.",
"required": false
},
{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "query",
"name": "type_name",
"description": "Select policies of types with the given type name (type identity has the format <typename_version>)",
@@ -767,26 +1073,41 @@
"put": {
"summary": "Create or update a policy",
"requestBody": {
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/policy_info_v2"}}},
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/policy_info_v2"},
+ "example": null
+ }},
"required": true
},
"operationId": "putPolicy",
"responses": {
"200": {
"description": "Policy updated",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/void"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/void"},
+ "example": null
+ }}
},
"201": {
"description": "Policy created",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/void"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/void"},
+ "example": null
+ }}
},
"423": {
"description": "Near-RT RIC is not operational",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
},
"404": {
"description": "Near-RT RIC or policy type is not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"tags": ["A1 Policy Management"]
@@ -795,14 +1116,20 @@
"/r-app/near-rt-ric-status": {"post": {
"summary": "Callback for Near-RT RIC status",
"requestBody": {
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/service_callback_info_v2"}}},
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/service_callback_info_v2"},
+ "example": null
+ }},
"required": true
},
"description": "The URL to this call is registered at Service registration.",
"operationId": "serviceCallback",
"responses": {"200": {
"description": "OK",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/void"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/void"},
+ "example": null
+ }}
}},
"tags": ["Callbacks"]
}},
@@ -812,19 +1139,34 @@
"responses": {
"200": {
"description": "Not used",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/void"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/void"},
+ "example": null
+ }}
},
"204": {
"description": "Service unregistered",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
},
"404": {
"description": "Service not found",
- "content": {"*/*": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"*/*": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "service_id",
"required": true
@@ -836,7 +1178,13 @@
"operationId": "heapdump",
"responses": {"200": {
"description": "OK",
- "content": {"*/*": {"schema": {"type": "object"}}}
+ "content": {"*/*": {
+ "schema": {
+ "type": "object",
+ "example": null
+ },
+ "example": null
+ }}
}},
"tags": ["Actuator"]
}},
@@ -846,15 +1194,24 @@
"responses": {
"200": {
"description": "Policy status",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/policy_status_info_v2"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/policy_status_info_v2"},
+ "example": null
+ }}
},
"404": {
"description": "Policy is not found",
- "content": {"application/json": {"schema": {"$ref": "#/components/schemas/error_information"}}}
+ "content": {"application/json": {
+ "schema": {"$ref": "#/components/schemas/error_information"},
+ "example": null
+ }}
}
},
"parameters": [{
- "schema": {"type": "string"},
+ "schema": {
+ "type": "string",
+ "example": null
+ },
"in": "path",
"name": "policy_id",
"required": true
diff --git a/a1-policy-management/pom.xml b/a1-policy-management/pom.xml
index d47019b6..e34c9cfd 100644
--- a/a1-policy-management/pom.xml
+++ b/a1-policy-management/pom.xml
@@ -24,7 +24,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>spring-boot-26-starter-parent</artifactId>
- <version>2.4.2</version>
+ <version>2.5.0-SNAPSHOT</version>
<relativePath/>
</parent>
<groupId>org.onap.ccsdk.oran</groupId>
@@ -40,8 +40,10 @@
<formatter-maven-plugin.version>2.13.0</formatter-maven-plugin.version>
<spotless-maven-plugin.version>2.5.0</spotless-maven-plugin.version>
<commons-io.version>2.11.0</commons-io.version>
+ <guava.version>31.0.1-jre</guava.version>
<docker-maven-plugin>0.30.0</docker-maven-plugin>
<surefire-maven-plugin.version>3.0.0-M5</surefire-maven-plugin.version>
+ <snakeyaml.version>1.32</snakeyaml.version><!-- overrides version included via spring-boot-starter:jar:2.6.11 to address CVE-2022-38752. Remove later if possible -->
<!-- Version must be higher than version 2.19.1 that is defined in the parent pom for JUnit 5 tests to be run. Do not remove! -->
<jacoco-maven-plugin.version>0.8.6</jacoco-maven-plugin.version>
<swagger-codegen-maven-plugin.version>3.0.11</swagger-codegen-maven-plugin.version>
@@ -115,6 +117,7 @@
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
+ <version>${guava.version}</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
@@ -223,7 +226,6 @@
<version>${commons-io.version}</version>
<scope>test</scope>
</dependency>
- <!-- https://mvnrepository.com/artifact/com.github.erosb/everit-json-schema -->
<dependency>
<groupId>com.github.erosb</groupId>
<artifactId>everit-json-schema</artifactId>