Uplift springboot, swagger
[nonrtric.git] / enrichment-coordinator-service / src / main / java / org / oransc / enrichment / controllers / producer / ProducerRegistrationInfo.java
index 1ef2ed4..b270c85 100644 (file)
@@ -1,9 +1,9 @@
 /*-
  * ========================LICENSE_START=================================
- * ONAP : ccsdk oran
- * ======================================================================
- * Copyright (C) 2020 Nordix Foundation. All rights reserved.
- * ======================================================================
+ * O-RAN-SC
+ * %%
+ * Copyright (C) 2020 Nordix Foundation
+ * %%
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
@@ -23,60 +23,39 @@ package org.oransc.enrichment.controllers.producer;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.google.gson.annotations.SerializedName;
 
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
+import io.swagger.v3.oas.annotations.media.Schema;
 
 import java.util.Collection;
 
 import org.immutables.gson.Gson;
 
 @Gson.TypeAdapters
-@ApiModel(value = "producer_registration_info", description = "Information for an EI producer")
+@Schema(name = "producer_registration_info", description = "Information for an EI producer")
 public class ProducerRegistrationInfo {
 
-    @Gson.TypeAdapters
-    @ApiModel(value = "producer_ei_type_registration_info", description = "Information for an EI type")
-    public static class ProducerEiTypeRegistrationInfo {
-
-        @ApiModelProperty(value = "EI type identity", required = true)
-        @SerializedName("ei_type_identity")
-        @JsonProperty(value = "ei_type_identity", required = true)
-        public String eiTypeId;
-
-        @ApiModelProperty(value = "Json schema for the job data")
-        @SerializedName("ei_job_data_schema")
-        @JsonProperty("ei_job_data_schema")
-        public Object jobDataSchema;
-
-        public ProducerEiTypeRegistrationInfo(Object jobDataSchema, String eiTypeId) {
-            this.jobDataSchema = jobDataSchema;
-            this.eiTypeId = eiTypeId;
-        }
-
-        public ProducerEiTypeRegistrationInfo() {
-        }
-    }
-
-    @ApiModelProperty(value = "Supported EI types", required = true)
+    @Schema(name = "supported_ei_types", description = "Supported EI type IDs", required = true)
     @SerializedName("supported_ei_types")
     @JsonProperty(value = "supported_ei_types", required = true)
-    public Collection<ProducerEiTypeRegistrationInfo> types;
-
-    @ApiModelProperty(value = "callback for job creation", required = true)
-    @SerializedName("ei_job_creation_callback_url")
-    @JsonProperty(value = "ei_job_creation_callback_url", required = true)
-    public String jobCreationCallbackUrl;
-
-    @ApiModelProperty(value = "callback for job deletion", required = true)
-    @SerializedName("ei_job_deletion_callback_url")
-    @JsonProperty(value = "ei_job_deletion_callback_url", required = true)
-    public String jobDeletionCallbackUrl;
-
-    public ProducerRegistrationInfo(Collection<ProducerEiTypeRegistrationInfo> types, String jobCreationCallbackUrl,
-        String jobDeletionCallbackUrl) {
-        this.types = types;
-        this.jobCreationCallbackUrl = jobCreationCallbackUrl;
-        this.jobDeletionCallbackUrl = jobDeletionCallbackUrl;
+    public Collection<String> supportedTypeIds;
+
+    @Schema(name = "ei_job_callback_url", description = "callback for EI job", required = true)
+    @SerializedName("ei_job_callback_url")
+    @JsonProperty(value = "ei_job_callback_url", required = true)
+    public String jobCallbackUrl;
+
+    @Schema(
+        name = "ei_producer_supervision_callback_url",
+        description = "callback for producer supervision",
+        required = true)
+    @SerializedName("ei_producer_supervision_callback_url")
+    @JsonProperty(value = "ei_producer_supervision_callback_url", required = true)
+    public String producerSupervisionCallbackUrl;
+
+    public ProducerRegistrationInfo(Collection<String> types, String jobCallbackUrl,
+        String producerSupervisionCallbackUrl) {
+        this.supportedTypeIds = types;
+        this.jobCallbackUrl = jobCallbackUrl;
+        this.producerSupervisionCallbackUrl = producerSupervisionCallbackUrl;
     }
 
     public ProducerRegistrationInfo() {