ECS, support for notification of available information types
[nonrtric.git] / enrichment-coordinator-service / src / main / java / org / oransc / enrichment / controllers / r1consumer / ConsumerInfoTypeInfo.java
index c227a20..92ee19b 100644 (file)
@@ -2,7 +2,7 @@
  * ========================LICENSE_START=================================
  * O-RAN-SC
  * %%
- * Copyright (C) 2020 Nordix Foundation
+ * Copyright (C) 2021 Nordix Foundation
  * %%
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -36,8 +36,30 @@ public class ConsumerInfoTypeInfo {
     @JsonProperty(value = "job_data_schema", required = true)
     public Object jobDataSchema;
 
-    public ConsumerInfoTypeInfo(Object jobDataSchema) {
+    @Gson.TypeAdapters
+    @Schema(name = "consumer_type_status_values", description = STATUS_DESCRIPTION)
+    public enum ConsumerTypeStatusValues {
+        ENABLED, DISABLED
+    }
+
+    private static final String STATUS_DESCRIPTION = "Allowed values: <br/>" //
+        + "ENABLED: one or several producers for the information type are available <br/>" //
+        + "DISABLED: no producers for the information type are available";
+
+    @Schema(name = "type_status", description = STATUS_DESCRIPTION, required = true)
+    @SerializedName("type_status")
+    @JsonProperty(value = "type_status", required = true)
+    public ConsumerTypeStatusValues state;
+
+    @Schema(name = "no_of_producers", description = "The number of registered producers for the type", required = true)
+    @SerializedName("no_of_producers")
+    @JsonProperty(value = "no_of_producers", required = true)
+    public int noOfProducers;
+
+    public ConsumerInfoTypeInfo(Object jobDataSchema, ConsumerTypeStatusValues state, int noOfProducers) {
         this.jobDataSchema = jobDataSchema;
+        this.state = state;
+        this.noOfProducers = noOfProducers;
     }
 
     public ConsumerInfoTypeInfo() {