X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=inline;f=information-coordinator-service%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fics%2Fcontrollers%2Fr1consumer%2FConsumerTypeRegistrationInfo.java;fp=information-coordinator-service%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fics%2Fcontrollers%2Fr1consumer%2FConsumerTypeRegistrationInfo.java;h=73263ec133547c31d43eae7cb9cbb153c4521a80;hb=c6916032d124066c6009e0db070a0cebb9c1ea5f;hp=0000000000000000000000000000000000000000;hpb=a28a4ad261601976c345425692116e5d7250b810;p=nonrtric.git diff --git a/information-coordinator-service/src/main/java/org/oransc/ics/controllers/r1consumer/ConsumerTypeRegistrationInfo.java b/information-coordinator-service/src/main/java/org/oransc/ics/controllers/r1consumer/ConsumerTypeRegistrationInfo.java new file mode 100644 index 00000000..73263ec1 --- /dev/null +++ b/information-coordinator-service/src/main/java/org/oransc/ics/controllers/r1consumer/ConsumerTypeRegistrationInfo.java @@ -0,0 +1,68 @@ +/*- + * ========================LICENSE_START================================= + * O-RAN-SC + * %% + * 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ========================LICENSE_END=================================== + */ + +package org.oransc.ics.controllers.r1consumer; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.google.gson.annotations.SerializedName; + +import io.swagger.v3.oas.annotations.media.Schema; + +import org.immutables.gson.Gson; + +@Gson.TypeAdapters +@Schema(name = "consumer_type_registration_info", description = "Information for an Information type") +public class ConsumerTypeRegistrationInfo { + + @Schema(name = "info_type_id", description = "Information type identifier", required = true) + @SerializedName("info_type_id") + @JsonProperty(value = "info_type_id", required = true) + public String infoTypeId; + + @Schema(name = "job_data_schema", description = "Json schema for the job data", required = true) + @SerializedName("job_data_schema") + @JsonProperty(value = "job_data_schema", required = true) + public Object jobDataSchema; + + @Gson.TypeAdapters + @Schema(name = "consumer_type_registration_values", description = REGISTRATION_DESCRIPTION) + public enum ConsumerTypeStatusValues { + REGISTERED, DEREGISTERED + } + + private static final String REGISTRATION_DESCRIPTION = "Allowed values:
" // + + "REGISTERED: the information type has been registered
" // + + "DEREGISTERED: the information type has been removed"; + + @Schema(name = "status", description = REGISTRATION_DESCRIPTION, required = true) + @SerializedName("status") + @JsonProperty(value = "status", required = true) + public ConsumerTypeStatusValues state; + + public ConsumerTypeRegistrationInfo(Object jobDataSchema, ConsumerTypeStatusValues state, String infoTypeId) { + this.jobDataSchema = jobDataSchema; + this.state = state; + this.infoTypeId = infoTypeId; + } + + public ConsumerTypeRegistrationInfo() { + } + +}