diff --git a/src/main/java/org/etsi/osl/tmf/am651/model/Agreement.java b/src/main/java/org/etsi/osl/tmf/am651/model/Agreement.java index 9dd3e97092120a576b480efaa8957f9c4a42f9d2..113259c06b764c6cc3e1083ca718d826e01e2987 100644 --- a/src/main/java/org/etsi/osl/tmf/am651/model/Agreement.java +++ b/src/main/java/org/etsi/osl/tmf/am651/model/Agreement.java @@ -26,6 +26,7 @@ import java.util.Objects; import com.fasterxml.jackson.annotation.JsonProperty; import org.etsi.osl.tmf.common.model.TimePeriod; +import org.etsi.osl.tmf.common.model.service.Characteristic; import org.springframework.validation.annotation.Validated; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.Valid; diff --git a/src/main/java/org/etsi/osl/tmf/am651/model/AgreementCreate.java b/src/main/java/org/etsi/osl/tmf/am651/model/AgreementCreate.java index 841688a9cf84e16e3c7756af5644b1dfbfe28c3c..02f5906d63b5dda4c31c6fc826bf320766ebd146 100644 --- a/src/main/java/org/etsi/osl/tmf/am651/model/AgreementCreate.java +++ b/src/main/java/org/etsi/osl/tmf/am651/model/AgreementCreate.java @@ -26,6 +26,7 @@ import java.util.Objects; import com.fasterxml.jackson.annotation.JsonProperty; import org.etsi.osl.tmf.common.model.TimePeriod; +import org.etsi.osl.tmf.common.model.service.Characteristic; import org.springframework.validation.annotation.Validated; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.Valid; diff --git a/src/main/java/org/etsi/osl/tmf/am651/model/AgreementUpdate.java b/src/main/java/org/etsi/osl/tmf/am651/model/AgreementUpdate.java index b98ce9b6f5106c869a2bf53c4ecd93fdb5a0f813..c3a349813d041a6a425896a9d7ba3a9b20496286 100644 --- a/src/main/java/org/etsi/osl/tmf/am651/model/AgreementUpdate.java +++ b/src/main/java/org/etsi/osl/tmf/am651/model/AgreementUpdate.java @@ -26,6 +26,7 @@ import java.util.Objects; import com.fasterxml.jackson.annotation.JsonProperty; import org.etsi.osl.tmf.common.model.TimePeriod; +import org.etsi.osl.tmf.common.model.service.Characteristic; import org.springframework.validation.annotation.Validated; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.Valid; diff --git a/src/main/java/org/etsi/osl/tmf/am651/model/Characteristic.java b/src/main/java/org/etsi/osl/tmf/am651/model/Characteristic.java deleted file mode 100644 index b00b36d00f59c54925af803122ee4bf98a09f6ff..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/osl/tmf/am651/model/Characteristic.java +++ /dev/null @@ -1,175 +0,0 @@ -/*- - * ========================LICENSE_START================================= - * org.etsi.osl.tmf.api - * %% - * Copyright (C) 2019 openslice.io - * %% - * 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.etsi.osl.tmf.am651.model; - -import java.util.Objects; - -import com.fasterxml.jackson.annotation.JsonProperty; - -import org.springframework.validation.annotation.Validated; - -import io.swagger.v3.oas.annotations.media.Schema; - -/** - * Describes a given characteristic of an object or entity through a name/value pair. - */ -@Schema(description = "Describes a given characteristic of an object or entity through a name/value pair.") -@Validated -@jakarta.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen", date = "2019-10-19T23:51:58.660+03:00") - -public class Characteristic { - @JsonProperty("name") - private String name = null; - - @JsonProperty("value") - private String value = null; - - @JsonProperty("@type") - private String type = null; - - @JsonProperty("@schemaLocation") - private String schemaLocation = null; - - public Characteristic name(String name) { - this.name = name; - return this; - } - - /** - * Name of the characteristic - * @return name - **/ - @Schema(description = "Name of the characteristic") - - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Characteristic value(String value) { - this.value = value; - return this; - } - - /** - * Value of the characteristic - * @return value - **/ - @Schema(description = "Value of the characteristic") - - - public String getValue() { - return value; - } - - public void setValue(String value) { - this.value = value; - } - - public Characteristic type(String type) { - this.type = type; - return this; - } - - /** - * The class type of the actual resource (for type extension). - * @return type - **/ - @Schema(description = "The class type of the actual resource (for type extension).") - - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - public Characteristic schemaLocation(String schemaLocation) { - this.schemaLocation = schemaLocation; - return this; - } - - /** - * A link to the schema describing a resource (for type extension). - * @return schemaLocation - **/ - @Schema(description = "A link to the schema describing a resource (for type extension).") - - - public String getSchemaLocation() { - return schemaLocation; - } - - public void setSchemaLocation(String schemaLocation) { - this.schemaLocation = schemaLocation; - } - - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Characteristic characteristic = (Characteristic) o; - return Objects.equals(this.name, characteristic.name) && - Objects.equals(this.value, characteristic.value) && - Objects.equals(this.type, characteristic.type) && - Objects.equals(this.schemaLocation, characteristic.schemaLocation); - } - - @Override - public int hashCode() { - return Objects.hash(name, value, type, schemaLocation); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Characteristic {\n"); - - sb.append(" name: ").append(toIndentedString(name)).append("\n"); - sb.append(" value: ").append(toIndentedString(value)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); - sb.append(" schemaLocation: ").append(toIndentedString(schemaLocation)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(java.lang.Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} - diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/BillingAccountRef.java b/src/main/java/org/etsi/osl/tmf/pim637/model/BillingAccountRef.java new file mode 100644 index 0000000000000000000000000000000000000000..fed78010cea801c864f7eb9c529ba5f9ce3f3a04 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/BillingAccountRef.java @@ -0,0 +1,229 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * BillingAccount reference. A BillingAccount is a detailed description of a bill structure. + */ +@Schema(description = "BillingAccount reference. A BillingAccount is a detailed description of a bill structure.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class BillingAccountRef { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public BillingAccountRef id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of the billing account + * @return id + **/ + @Schema(required = true, description = "Unique identifier of the billing account") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public BillingAccountRef href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the billing account + * @return href + **/ + @Schema(description = "Reference of the billing account") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public BillingAccountRef name(String name) { + this.name = name; + return this; + } + + /** + * Name of the billing account + * @return name + **/ + @Schema(description = "Name of the billing account") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public BillingAccountRef _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public BillingAccountRef _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public BillingAccountRef _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public BillingAccountRef _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BillingAccountRef billingAccountRef = (BillingAccountRef) o; + return Objects.equals(this.id, billingAccountRef.id) && + Objects.equals(this.href, billingAccountRef.href) && + Objects.equals(this.name, billingAccountRef.name) && + Objects.equals(this._atBaseType, billingAccountRef._atBaseType) && + Objects.equals(this._atSchemaLocation, billingAccountRef._atSchemaLocation) && + Objects.equals(this._atType, billingAccountRef._atType) && + Objects.equals(this._atReferredType, billingAccountRef._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, name, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class BillingAccountRef {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/EntityRef.java b/src/main/java/org/etsi/osl/tmf/pim637/model/EntityRef.java new file mode 100644 index 0000000000000000000000000000000000000000..600dbe9af461bc4c3d5379dfe2960c5369f7a0c4 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/EntityRef.java @@ -0,0 +1,229 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * Entity reference schema to be use for all entityRef class. + */ +@Schema(description = "Entity reference schema to be use for all entityRef class.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class EntityRef { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public EntityRef id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of a related entity. + * @return id + **/ + @Schema(required = true, description = "Unique identifier of a related entity.") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public EntityRef href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the related entity. + * @return href + **/ + @Schema(description = "Reference of the related entity.") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public EntityRef name(String name) { + this.name = name; + return this; + } + + /** + * Name of the related entity. + * @return name + **/ + @Schema(description = "Name of the related entity.") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public EntityRef _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public EntityRef _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public EntityRef _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public EntityRef _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + EntityRef entityRef = (EntityRef) o; + return Objects.equals(this.id, entityRef.id) && + Objects.equals(this.href, entityRef.href) && + Objects.equals(this.name, entityRef.name) && + Objects.equals(this._atBaseType, entityRef._atBaseType) && + Objects.equals(this._atSchemaLocation, entityRef._atSchemaLocation) && + Objects.equals(this._atType, entityRef._atType) && + Objects.equals(this._atReferredType, entityRef._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, name, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class EntityRef {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/Error.java b/src/main/java/org/etsi/osl/tmf/pim637/model/Error.java new file mode 100644 index 0000000000000000000000000000000000000000..e13ea9a4bec6ec5f7dc740f16212dfa2b1134ece --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/Error.java @@ -0,0 +1,254 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * Used when an API throws an Error, typically with a HTTP error response-code (3xx, 4xx, 5xx) + */ +@Schema(description = "Used when an API throws an Error, typically with a HTTP error response-code (3xx, 4xx, 5xx)") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class Error { + @JsonProperty("code") + private String code = null; + + @JsonProperty("reason") + private String reason = null; + + @JsonProperty("message") + private String message = null; + + @JsonProperty("status") + private String status = null; + + @JsonProperty("referenceError") + private String referenceError = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public Error code(String code) { + this.code = code; + return this; + } + + /** + * Application relevant detail, defined in the API or a common list. + * @return code + **/ + @Schema(required = true, description = "Application relevant detail, defined in the API or a common list.") + @NotNull + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public Error reason(String reason) { + this.reason = reason; + return this; + } + + /** + * Explanation of the reason for the error which can be shown to a client user. + * @return reason + **/ + @Schema(required = true, description = "Explanation of the reason for the error which can be shown to a client user.") + @NotNull + + public String getReason() { + return reason; + } + + public void setReason(String reason) { + this.reason = reason; + } + + public Error message(String message) { + this.message = message; + return this; + } + + /** + * More details and corrective actions related to the error which can be shown to a client user. + * @return message + **/ + @Schema(description = "More details and corrective actions related to the error which can be shown to a client user.") + @NotNull + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public Error status(String status) { + this.status = status; + return this; + } + + /** + * HTTP Error code extension + * @return status + **/ + @Schema(description = "HTTP Error code extension") + @NotNull + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Error referenceError(String referenceError) { + this.referenceError = referenceError; + return this; + } + + /** + * URI of documentation describing the error. + * @return referenceError + **/ + @Schema(description = "URI of documentation describing the error.") + @NotNull + + public String getReferenceError() { + return referenceError; + } + + public void setReferenceError(String referenceError) { + this.referenceError = referenceError; + } + + public Error _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class. + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class.") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public Error _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public Error _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name. + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name.") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Error error = (Error) o; + return Objects.equals(this.code, error.code) && + Objects.equals(this.reason, error.reason) && + Objects.equals(this.message, error.message) && + Objects.equals(this.status, error.status) && + Objects.equals(this.referenceError, error.referenceError) && + Objects.equals(this._atBaseType, error._atBaseType) && + Objects.equals(this._atSchemaLocation, error._atSchemaLocation) && + Objects.equals(this._atType, error._atType); + } + + @Override + public int hashCode() { + return Objects.hash(code, reason, message, status, referenceError, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Error {\n"); + + sb.append(" code: ").append(toIndentedString(code)).append("\n"); + sb.append(" reason: ").append(toIndentedString(reason)).append("\n"); + sb.append(" message: ").append(toIndentedString(message)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" referenceError: ").append(toIndentedString(referenceError)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/EventSubscription.java b/src/main/java/org/etsi/osl/tmf/pim637/model/EventSubscription.java new file mode 100644 index 0000000000000000000000000000000000000000..1d272920e640fe22b0834c4f176dca7aa4516c5a --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/EventSubscription.java @@ -0,0 +1,129 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * Sets the communication endpoint address the service instance must use to deliver notification information + */ +@Schema(description = "Sets the communication endpoint address the service instance must use to deliver notification information") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class EventSubscription { + @JsonProperty("id") + private String id = null; + + @JsonProperty("callback") + private String callback = null; + + @JsonProperty("query") + private String query = null; + + public EventSubscription id(String id) { + this.id = id; + return this; + } + + /** + * Id of the listener + * @return id + **/ + @Schema(required = true, description = "Id of the listener") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public EventSubscription callback(String callback) { + this.callback = callback; + return this; + } + + /** + * The callback being registered. + * @return callback + **/ + @Schema(required = true, description = "The callback being registered.") + @NotNull + + public String getCallback() { + return callback; + } + + public void setCallback(String callback) { + this.callback = callback; + } + + public EventSubscription query(String query) { + this.query = query; + return this; + } + + /** + * additional data to be passed + * @return query + **/ + @Schema(description = "additional data to be passed") + @NotNull + + public String getQuery() { + return query; + } + + public void setQuery(String query) { + this.query = query; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + EventSubscription eventSubscription = (EventSubscription) o; + return Objects.equals(this.id, eventSubscription.id) && + Objects.equals(this.callback, eventSubscription.callback) && + Objects.equals(this.query, eventSubscription.query); + } + + @Override + public int hashCode() { + return Objects.hash(id, callback, query); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class EventSubscription {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" callback: ").append(toIndentedString(callback)).append("\n"); + sb.append(" query: ").append(toIndentedString(query)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/EventSubscriptionInput.java b/src/main/java/org/etsi/osl/tmf/pim637/model/EventSubscriptionInput.java new file mode 100644 index 0000000000000000000000000000000000000000..2561f945670ca1178b490e411fbdf41c6132bf85 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/EventSubscriptionInput.java @@ -0,0 +1,104 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * Sets the communication endpoint address the service instance must use to deliver notification information + */ +@Schema(description = "Sets the communication endpoint address the service instance must use to deliver notification information") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class EventSubscriptionInput { + @JsonProperty("callback") + private String callback = null; + + @JsonProperty("query") + private String query = null; + + public EventSubscriptionInput callback(String callback) { + this.callback = callback; + return this; + } + + /** + * The callback being registered. + * @return callback + **/ + @Schema(required = true, description = "The callback being registered.") + @NotNull + + public String getCallback() { + return callback; + } + + public void setCallback(String callback) { + this.callback = callback; + } + + public EventSubscriptionInput query(String query) { + this.query = query; + return this; + } + + /** + * additional data to be passed + * @return query + **/ + @Schema(description = "additional data to be passed") + @NotNull + + public String getQuery() { + return query; + } + + public void setQuery(String query) { + this.query = query; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + EventSubscriptionInput eventSubscriptionInput = (EventSubscriptionInput) o; + return Objects.equals(this.callback, eventSubscriptionInput.callback) && + Objects.equals(this.query, eventSubscriptionInput.query); + } + + @Override + public int hashCode() { + return Objects.hash(callback, query); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class EventSubscriptionInput {\n"); + + sb.append(" callback: ").append(toIndentedString(callback)).append("\n"); + sb.append(" query: ").append(toIndentedString(query)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/Money.java b/src/main/java/org/etsi/osl/tmf/pim637/model/Money.java new file mode 100644 index 0000000000000000000000000000000000000000..3dba051ba85661bdfba0d9fecbb8e9420c076223 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/Money.java @@ -0,0 +1,104 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * A base / value business entity used to represent money + */ +@Schema(description = "A base / value business entity used to represent money") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class Money { + @JsonProperty("unit") + private String unit = null; + + @JsonProperty("value") + private Float value = null; + + public Money unit(String unit) { + this.unit = unit; + return this; + } + + /** + * Currency (ISO4217 norm uses 3 letters to define the currency) + * @return unit + **/ + @Schema(description = "Currency (ISO4217 norm uses 3 letters to define the currency)") + @NotNull + + public String getUnit() { + return unit; + } + + public void setUnit(String unit) { + this.unit = unit; + } + + public Money value(Float value) { + this.value = value; + return this; + } + + /** + * A positive floating point number + * @return value + **/ + @Schema(description = "A positive floating point number") + @NotNull + + public Float getValue() { + return value; + } + + public void setValue(Float value) { + this.value = value; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Money money = (Money) o; + return Objects.equals(this.unit, money.unit) && + Objects.equals(this.value, money.value); + } + + @Override + public int hashCode() { + return Objects.hash(unit, value); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Money {\n"); + + sb.append(" unit: ").append(toIndentedString(unit)).append("\n"); + sb.append(" value: ").append(toIndentedString(value)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/Place.java b/src/main/java/org/etsi/osl/tmf/pim637/model/Place.java new file mode 100644 index 0000000000000000000000000000000000000000..7b98f7dc6bd27f8ae12d0a109cb5efc14cdba467 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/Place.java @@ -0,0 +1,204 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * Place reference. Place defines the places where the products are sold or delivered. + */ +@Schema(description = "Place reference. Place defines the places where the products are sold or delivered.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class Place { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public Place id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of the place + * @return id + **/ + @Schema(description = "Unique identifier of the place") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public Place href(String href) { + this.href = href; + return this; + } + + /** + * Unique reference of the place + * @return href + **/ + @Schema(description = "Unique reference of the place") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public Place name(String name) { + this.name = name; + return this; + } + + /** + * A user-friendly name for the place, such as [Paris Store], [London Store], [Main Home] + * @return name + **/ + @Schema(description = "A user-friendly name for the place, such as [Paris Store], [London Store], [Main Home]") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Place _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public Place _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public Place _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Place place = (Place) o; + return Objects.equals(this.id, place.id) && + Objects.equals(this.href, place.href) && + Objects.equals(this.name, place.name) && + Objects.equals(this._atBaseType, place._atBaseType) && + Objects.equals(this._atSchemaLocation, place._atSchemaLocation) && + Objects.equals(this._atType, place._atType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, name, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Place {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/Price.java b/src/main/java/org/etsi/osl/tmf/pim637/model/Price.java new file mode 100644 index 0000000000000000000000000000000000000000..0642c80684277ccbae0326de7757c738438054f1 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/Price.java @@ -0,0 +1,232 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * Provides all amounts (tax included, duty free, tax rate), used currency and percentage to apply for Price Alteration. + */ +@Schema(description = "Provides all amounts (tax included, duty free, tax rate), used currency and percentage to apply for Price Alteration.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class Price { + @JsonProperty("percentage") + private Float percentage = null; + + @JsonProperty("taxRate") + private Float taxRate = null; + + @JsonProperty("dutyFreeAmount") + private Money dutyFreeAmount = null; + + @JsonProperty("taxIncludedAmount") + private Money taxIncludedAmount = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public Price percentage(Float percentage) { + this.percentage = percentage; + return this; + } + + /** + * Percentage to apply for ProdOfferPriceAlteration + * @return percentage + **/ + @Schema(description = "Percentage to apply for ProdOfferPriceAlteration") + @NotNull + + public Float getPercentage() { + return percentage; + } + + public void setPercentage(Float percentage) { + this.percentage = percentage; + } + + public Price taxRate(Float taxRate) { + this.taxRate = taxRate; + return this; + } + + /** + * Tax rate + * @return taxRate + **/ + @Schema(description = "Tax rate") + @NotNull + + public Float getTaxRate() { + return taxRate; + } + + public void setTaxRate(Float taxRate) { + this.taxRate = taxRate; + } + + public Price dutyFreeAmount(Money dutyFreeAmount) { + this.dutyFreeAmount = dutyFreeAmount; + return this; + } + + /** + * Get dutyFreeAmount + * @return dutyFreeAmount + **/ + @Schema(description = "") + @NotNull + + @Valid + public Money getDutyFreeAmount() { + return dutyFreeAmount; + } + + public void setDutyFreeAmount(Money dutyFreeAmount) { + this.dutyFreeAmount = dutyFreeAmount; + } + + public Price taxIncludedAmount(Money taxIncludedAmount) { + this.taxIncludedAmount = taxIncludedAmount; + return this; + } + + /** + * Get taxIncludedAmount + * @return taxIncludedAmount + **/ + @Schema(description = "") + @NotNull + + @Valid + public Money getTaxIncludedAmount() { + return taxIncludedAmount; + } + + public void setTaxIncludedAmount(Money taxIncludedAmount) { + this.taxIncludedAmount = taxIncludedAmount; + } + + public Price _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public Price _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public Price _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Price price = (Price) o; + return Objects.equals(this.percentage, price.percentage) && + Objects.equals(this.taxRate, price.taxRate) && + Objects.equals(this.dutyFreeAmount, price.dutyFreeAmount) && + Objects.equals(this.taxIncludedAmount, price.taxIncludedAmount) && + Objects.equals(this._atBaseType, price._atBaseType) && + Objects.equals(this._atSchemaLocation, price._atSchemaLocation) && + Objects.equals(this._atType, price._atType); + } + + @Override + public int hashCode() { + return Objects.hash(percentage, taxRate, dutyFreeAmount, taxIncludedAmount, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Price {\n"); + + sb.append(" percentage: ").append(toIndentedString(percentage)).append("\n"); + sb.append(" taxRate: ").append(toIndentedString(taxRate)).append("\n"); + sb.append(" dutyFreeAmount: ").append(toIndentedString(dutyFreeAmount)).append("\n"); + sb.append(" taxIncludedAmount: ").append(toIndentedString(taxIncludedAmount)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/PriceAlteration.java b/src/main/java/org/etsi/osl/tmf/pim637/model/PriceAlteration.java new file mode 100644 index 0000000000000000000000000000000000000000..efa04041411e57e9aa321936d867589ef1ab8a5d --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/PriceAlteration.java @@ -0,0 +1,357 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * Is an amount, usually of money, that modifies the price charged for an order item. + */ +@Schema(description = "Is an amount, usually of money, that modifies the price charged for an order item.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class PriceAlteration { + @JsonProperty("applicationDuration") + private Integer applicationDuration = null; + + @JsonProperty("description") + private String description = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("priceType") + private String priceType = null; + + @JsonProperty("priority") + private Integer priority = null; + + @JsonProperty("recurringChargePeriod") + private String recurringChargePeriod = null; + + @JsonProperty("unitOfMeasure") + private String unitOfMeasure = null; + + @JsonProperty("price") + private Price price = null; + + @JsonProperty("productOfferingPrice") + private ProductOfferingPriceRef productOfferingPrice = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public PriceAlteration applicationDuration(Integer applicationDuration) { + this.applicationDuration = applicationDuration; + return this; + } + + /** + * Duration during which the alteration applies on the order item price (for instance 2 months free of charge for the recurring charge) + * @return applicationDuration + **/ + @Schema(description = "Duration during which the alteration applies on the order item price (for instance 2 months free of charge for the recurring charge)") + @NotNull + + public Integer getApplicationDuration() { + return applicationDuration; + } + + public void setApplicationDuration(Integer applicationDuration) { + this.applicationDuration = applicationDuration; + } + + public PriceAlteration description(String description) { + this.description = description; + return this; + } + + /** + * A narrative that explains in detail the semantics of this order item price alteration + * @return description + **/ + @Schema(description = "A narrative that explains in detail the semantics of this order item price alteration") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public PriceAlteration name(String name) { + this.name = name; + return this; + } + + /** + * Name of the order item price alteration + * @return name + **/ + @Schema(description = "Name of the order item price alteration") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public PriceAlteration priceType(String priceType) { + this.priceType = priceType; + return this; + } + + /** + * A category that describes the price such as recurring, one time and usage. + * @return priceType + **/ + @Schema(required = true, description = "A category that describes the price such as recurring, one time and usage.") + @NotNull + + public String getPriceType() { + return priceType; + } + + public void setPriceType(String priceType) { + this.priceType = priceType; + } + + public PriceAlteration priority(Integer priority) { + this.priority = priority; + return this; + } + + /** + * Priority level for applying this alteration among all the defined alterations on the order item price + * @return priority + **/ + @Schema(description = "Priority level for applying this alteration among all the defined alterations on the order item price") + @NotNull + + public Integer getPriority() { + return priority; + } + + public void setPriority(Integer priority) { + this.priority = priority; + } + + public PriceAlteration recurringChargePeriod(String recurringChargePeriod) { + this.recurringChargePeriod = recurringChargePeriod; + return this; + } + + /** + * Could be month, week... + * @return recurringChargePeriod + **/ + @Schema(description = "Could be month, week...") + @NotNull + + public String getRecurringChargePeriod() { + return recurringChargePeriod; + } + + public void setRecurringChargePeriod(String recurringChargePeriod) { + this.recurringChargePeriod = recurringChargePeriod; + } + + public PriceAlteration unitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + return this; + } + + /** + * Could be minutes, GB... + * @return unitOfMeasure + **/ + @Schema(description = "Could be minutes, GB...") + @NotNull + + public String getUnitOfMeasure() { + return unitOfMeasure; + } + + public void setUnitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + } + + public PriceAlteration price(Price price) { + this.price = price; + return this; + } + + /** + * Get price + * @return price + **/ + @Schema(required = true, description = "") + @NotNull + + @Valid + public Price getPrice() { + return price; + } + + public void setPrice(Price price) { + this.price = price; + } + + public PriceAlteration productOfferingPrice(ProductOfferingPriceRef productOfferingPrice) { + this.productOfferingPrice = productOfferingPrice; + return this; + } + + /** + * Get productOfferingPrice + * @return productOfferingPrice + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductOfferingPriceRef getProductOfferingPrice() { + return productOfferingPrice; + } + + public void setProductOfferingPrice(ProductOfferingPriceRef productOfferingPrice) { + this.productOfferingPrice = productOfferingPrice; + } + + public PriceAlteration _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public PriceAlteration _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public PriceAlteration _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PriceAlteration priceAlteration = (PriceAlteration) o; + return Objects.equals(this.applicationDuration, priceAlteration.applicationDuration) && + Objects.equals(this.description, priceAlteration.description) && + Objects.equals(this.name, priceAlteration.name) && + Objects.equals(this.priceType, priceAlteration.priceType) && + Objects.equals(this.priority, priceAlteration.priority) && + Objects.equals(this.recurringChargePeriod, priceAlteration.recurringChargePeriod) && + Objects.equals(this.unitOfMeasure, priceAlteration.unitOfMeasure) && + Objects.equals(this.price, priceAlteration.price) && + Objects.equals(this.productOfferingPrice, priceAlteration.productOfferingPrice) && + Objects.equals(this._atBaseType, priceAlteration._atBaseType) && + Objects.equals(this._atSchemaLocation, priceAlteration._atSchemaLocation) && + Objects.equals(this._atType, priceAlteration._atType); + } + + @Override + public int hashCode() { + return Objects.hash(applicationDuration, description, name, priceType, priority, recurringChargePeriod, unitOfMeasure, price, productOfferingPrice, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PriceAlteration {\n"); + + sb.append(" applicationDuration: ").append(toIndentedString(applicationDuration)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" priceType: ").append(toIndentedString(priceType)).append("\n"); + sb.append(" priority: ").append(toIndentedString(priority)).append("\n"); + sb.append(" recurringChargePeriod: ").append(toIndentedString(recurringChargePeriod)).append("\n"); + sb.append(" unitOfMeasure: ").append(toIndentedString(unitOfMeasure)).append("\n"); + sb.append(" price: ").append(toIndentedString(price)).append("\n"); + sb.append(" productOfferingPrice: ").append(toIndentedString(productOfferingPrice)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/Product.java b/src/main/java/org/etsi/osl/tmf/pim637/model/Product.java new file mode 100644 index 0000000000000000000000000000000000000000..edb686b64b15c58b23e0b3952cea349eefa75c32 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/Product.java @@ -0,0 +1,869 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.service.Characteristic; +import org.etsi.osl.tmf.common.model.service.ResourceRef; +import org.etsi.osl.tmf.common.model.service.ServiceRef; +import org.etsi.osl.tmf.po622.model.AgreementItemRef; +import org.etsi.osl.tmf.prm669.model.RelatedParty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * A product offering procured by a customer or other interested party playing a party role. A product is realized as one or more service(s) and / or resource(s). + */ +@Schema(description = "A product offering procured by a customer or other interested party playing a party role. A product is realized as one or more service(s) and / or resource(s).") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class Product { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("description") + private String description = null; + + @JsonProperty("isBundle") + private Boolean isBundle = null; + + @JsonProperty("isCustomerVisible") + private Boolean isCustomerVisible = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("orderDate") + private Date orderDate = null; + + @JsonProperty("productSerialNumber") + private String productSerialNumber = null; + + @JsonProperty("startDate") + private Date startDate = null; + + @JsonProperty("terminationDate") + private Date terminationDate = null; + + @JsonProperty("agreement") + @Valid + private List<AgreementItemRef> agreement = null; + + @JsonProperty("billingAccount") + private BillingAccountRef billingAccount = null; + + @JsonProperty("place") + @Valid + private List<RelatedPlaceRefOrValue> place = null; + + @JsonProperty("product") + @Valid + private List<ProductRefOrValue> product = null; + + @JsonProperty("productCharacteristic") + @Valid + private List<Characteristic> productCharacteristic = null; + + @JsonProperty("productOffering") + private ProductOfferingRef productOffering = null; + + @JsonProperty("productOrderItem") + @Valid + private List<RelatedProductOrderItem> productOrderItem = null; + + @JsonProperty("productPrice") + @Valid + private List<ProductPrice> productPrice = null; + + @JsonProperty("productRelationship") + @Valid + private List<ProductRelationship> productRelationship = null; + + @JsonProperty("productSpecification") + private ProductSpecificationRef productSpecification = null; + + @JsonProperty("productTerm") + @Valid + private List<ProductTerm> productTerm = null; + + @JsonProperty("realizingResource") + @Valid + private List<ResourceRef> realizingResource = null; + + @JsonProperty("realizingService") + @Valid + private List<ServiceRef> realizingService = null; + + @JsonProperty("relatedParty") + @Valid + private List<RelatedParty> relatedParty = null; + + @JsonProperty("status") + private ProductStatusType status = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public Product id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of the product + * @return id + **/ + @Schema(description = "Unique identifier of the product") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public Product href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the product + * @return href + **/ + @Schema(description = "Reference of the product") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public Product description(String description) { + this.description = description; + return this; + } + + /** + * Is the description of the product. It could be copied from the description of the Product Offering. + * @return description + **/ + @Schema(description = "Is the description of the product. It could be copied from the description of the Product Offering.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public Product isBundle(Boolean isBundle) { + this.isBundle = isBundle; + return this; + } + + /** + * If true, the product is a ProductBundle which is an instantiation of a BundledProductOffering. If false, the product is a ProductComponent which is an instantiation of a SimpleProductOffering. + * @return isBundle + **/ + @Schema(description = "If true, the product is a ProductBundle which is an instantiation of a BundledProductOffering. If false, the product is a ProductComponent which is an instantiation of a SimpleProductOffering.") + @NotNull + + public Boolean isIsBundle() { + return isBundle; + } + + public void setIsBundle(Boolean isBundle) { + this.isBundle = isBundle; + } + + public Product isCustomerVisible(Boolean isCustomerVisible) { + this.isCustomerVisible = isCustomerVisible; + return this; + } + + /** + * If true, the product is visible by the customer. + * @return isCustomerVisible + **/ + @Schema(description = "If true, the product is visible by the customer.") + @NotNull + + public Boolean isIsCustomerVisible() { + return isCustomerVisible; + } + + public void setIsCustomerVisible(Boolean isCustomerVisible) { + this.isCustomerVisible = isCustomerVisible; + } + + public Product name(String name) { + this.name = name; + return this; + } + + /** + * Name of the product. It could be the same as the name of the product offering + * @return name + **/ + @Schema(description = "Name of the product. It could be the same as the name of the product offering") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Product orderDate(Date orderDate) { + this.orderDate = orderDate; + return this; + } + + /** + * Is the date when the product was ordered + * @return orderDate + **/ + @Schema(description = "Is the date when the product was ordered") + @NotNull + + @Valid + public Date getOrderDate() { + return orderDate; + } + + public void setOrderDate(Date orderDate) { + this.orderDate = orderDate; + } + + public Product productSerialNumber(String productSerialNumber) { + this.productSerialNumber = productSerialNumber; + return this; + } + + /** + * Is the serial number for the product. This is typically applicable to tangible products e.g. Broadband Router. + * @return productSerialNumber + **/ + @Schema(description = "Is the serial number for the product. This is typically applicable to tangible products e.g. Broadband Router.") + @NotNull + + public String getProductSerialNumber() { + return productSerialNumber; + } + + public void setProductSerialNumber(String productSerialNumber) { + this.productSerialNumber = productSerialNumber; + } + + public Product startDate(Date startDate) { + this.startDate = startDate; + return this; + } + + /** + * Is the date from which the product starts + * @return startDate + **/ + @Schema(description = "Is the date from which the product starts") + @NotNull + + @Valid + public Date getStartDate() { + return startDate; + } + + public void setStartDate(Date startDate) { + this.startDate = startDate; + } + + public Product terminationDate(Date terminationDate) { + this.terminationDate = terminationDate; + return this; + } + + /** + * Is the date when the product was terminated + * @return terminationDate + **/ + @Schema(description = "Is the date when the product was terminated") + @NotNull + + @Valid + public Date getTerminationDate() { + return terminationDate; + } + + public void setTerminationDate(Date terminationDate) { + this.terminationDate = terminationDate; + } + + public Product agreement(List<AgreementItemRef> agreement) { + this.agreement = agreement; + return this; + } + + public Product addAgreementItem(AgreementItemRef agreementItem) { + if (this.agreement == null) { + this.agreement = new ArrayList<AgreementItemRef>(); + } + this.agreement.add(agreementItem); + return this; + } + + /** + * Get agreement + * @return agreement + **/ + @Schema(description = "") + @NotNull + @Valid + public List<AgreementItemRef> getAgreement() { + return agreement; + } + + public void setAgreement(List<AgreementItemRef> agreement) { + this.agreement = agreement; + } + + public Product billingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + return this; + } + + /** + * Get billingAccount + * @return billingAccount + **/ + @Schema(description = "") + @NotNull + + @Valid + public BillingAccountRef getBillingAccount() { + return billingAccount; + } + + public void setBillingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + } + + public Product place(List<RelatedPlaceRefOrValue> place) { + this.place = place; + return this; + } + + public Product addPlaceItem(RelatedPlaceRefOrValue placeItem) { + if (this.place == null) { + this.place = new ArrayList<RelatedPlaceRefOrValue>(); + } + this.place.add(placeItem); + return this; + } + + /** + * Get place + * @return place + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedPlaceRefOrValue> getPlace() { + return place; + } + + public void setPlace(List<RelatedPlaceRefOrValue> place) { + this.place = place; + } + + public Product product(List<ProductRefOrValue> product) { + this.product = product; + return this; + } + + public Product addProductItem(ProductRefOrValue productItem) { + if (this.product == null) { + this.product = new ArrayList<ProductRefOrValue>(); + } + this.product.add(productItem); + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductRefOrValue> getProduct() { + return product; + } + + public void setProduct(List<ProductRefOrValue> product) { + this.product = product; + } + + public Product productCharacteristic(List<Characteristic> productCharacteristic) { + this.productCharacteristic = productCharacteristic; + return this; + } + + public Product addProductCharacteristicItem(Characteristic productCharacteristicItem) { + if (this.productCharacteristic == null) { + this.productCharacteristic = new ArrayList<Characteristic>(); + } + this.productCharacteristic.add(productCharacteristicItem); + return this; + } + + /** + * Get productCharacteristic + * @return productCharacteristic + **/ + @Schema(description = "") + @NotNull + @Valid + public List<Characteristic> getProductCharacteristic() { + return productCharacteristic; + } + + public void setProductCharacteristic(List<Characteristic> productCharacteristic) { + this.productCharacteristic = productCharacteristic; + } + + public Product productOffering(ProductOfferingRef productOffering) { + this.productOffering = productOffering; + return this; + } + + /** + * Get productOffering + * @return productOffering + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductOfferingRef getProductOffering() { + return productOffering; + } + + public void setProductOffering(ProductOfferingRef productOffering) { + this.productOffering = productOffering; + } + + public Product productOrderItem(List<RelatedProductOrderItem> productOrderItem) { + this.productOrderItem = productOrderItem; + return this; + } + + public Product addProductOrderItemItem(RelatedProductOrderItem productOrderItemItem) { + if (this.productOrderItem == null) { + this.productOrderItem = new ArrayList<RelatedProductOrderItem>(); + } + this.productOrderItem.add(productOrderItemItem); + return this; + } + + /** + * Get productOrderItem + * @return productOrderItem + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedProductOrderItem> getProductOrderItem() { + return productOrderItem; + } + + public void setProductOrderItem(List<RelatedProductOrderItem> productOrderItem) { + this.productOrderItem = productOrderItem; + } + + public Product productPrice(List<ProductPrice> productPrice) { + this.productPrice = productPrice; + return this; + } + + public Product addProductPriceItem(ProductPrice productPriceItem) { + if (this.productPrice == null) { + this.productPrice = new ArrayList<ProductPrice>(); + } + this.productPrice.add(productPriceItem); + return this; + } + + /** + * Get productPrice + * @return productPrice + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductPrice> getProductPrice() { + return productPrice; + } + + public void setProductPrice(List<ProductPrice> productPrice) { + this.productPrice = productPrice; + } + + public Product productRelationship(List<ProductRelationship> productRelationship) { + this.productRelationship = productRelationship; + return this; + } + + public Product addProductRelationshipItem(ProductRelationship productRelationshipItem) { + if (this.productRelationship == null) { + this.productRelationship = new ArrayList<ProductRelationship>(); + } + this.productRelationship.add(productRelationshipItem); + return this; + } + + /** + * Get productRelationship + * @return productRelationship + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductRelationship> getProductRelationship() { + return productRelationship; + } + + public void setProductRelationship(List<ProductRelationship> productRelationship) { + this.productRelationship = productRelationship; + } + + public Product productSpecification(ProductSpecificationRef productSpecification) { + this.productSpecification = productSpecification; + return this; + } + + /** + * Get productSpecification + * @return productSpecification + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductSpecificationRef getProductSpecification() { + return productSpecification; + } + + public void setProductSpecification(ProductSpecificationRef productSpecification) { + this.productSpecification = productSpecification; + } + + public Product productTerm(List<ProductTerm> productTerm) { + this.productTerm = productTerm; + return this; + } + + public Product addProductTermItem(ProductTerm productTermItem) { + if (this.productTerm == null) { + this.productTerm = new ArrayList<ProductTerm>(); + } + this.productTerm.add(productTermItem); + return this; + } + + /** + * Get productTerm + * @return productTerm + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductTerm> getProductTerm() { + return productTerm; + } + + public void setProductTerm(List<ProductTerm> productTerm) { + this.productTerm = productTerm; + } + + public Product realizingResource(List<ResourceRef> realizingResource) { + this.realizingResource = realizingResource; + return this; + } + + public Product addRealizingResourceItem(ResourceRef realizingResourceItem) { + if (this.realizingResource == null) { + this.realizingResource = new ArrayList<ResourceRef>(); + } + this.realizingResource.add(realizingResourceItem); + return this; + } + + /** + * Get realizingResource + * @return realizingResource + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ResourceRef> getRealizingResource() { + return realizingResource; + } + + public void setRealizingResource(List<ResourceRef> realizingResource) { + this.realizingResource = realizingResource; + } + + public Product realizingService(List<ServiceRef> realizingService) { + this.realizingService = realizingService; + return this; + } + + public Product addRealizingServiceItem(ServiceRef realizingServiceItem) { + if (this.realizingService == null) { + this.realizingService = new ArrayList<ServiceRef>(); + } + this.realizingService.add(realizingServiceItem); + return this; + } + + /** + * Get realizingService + * @return realizingService + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ServiceRef> getRealizingService() { + return realizingService; + } + + public void setRealizingService(List<ServiceRef> realizingService) { + this.realizingService = realizingService; + } + + public Product relatedParty(List<RelatedParty> relatedParty) { + this.relatedParty = relatedParty; + return this; + } + + public Product addRelatedPartyItem(RelatedParty relatedPartyItem) { + if (this.relatedParty == null) { + this.relatedParty = new ArrayList<RelatedParty>(); + } + this.relatedParty.add(relatedPartyItem); + return this; + } + + /** + * Get relatedParty + * @return relatedParty + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedParty> getRelatedParty() { + return relatedParty; + } + + public void setRelatedParty(List<RelatedParty> relatedParty) { + this.relatedParty = relatedParty; + } + + public Product status(ProductStatusType status) { + this.status = status; + return this; + } + + /** + * Get status + * @return status + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductStatusType getStatus() { + return status; + } + + public void setStatus(ProductStatusType status) { + this.status = status; + } + + public Product _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public Product _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public Product _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Product product = (Product) o; + return Objects.equals(this.id, product.id) && + Objects.equals(this.href, product.href) && + Objects.equals(this.description, product.description) && + Objects.equals(this.isBundle, product.isBundle) && + Objects.equals(this.isCustomerVisible, product.isCustomerVisible) && + Objects.equals(this.name, product.name) && + Objects.equals(this.orderDate, product.orderDate) && + Objects.equals(this.productSerialNumber, product.productSerialNumber) && + Objects.equals(this.startDate, product.startDate) && + Objects.equals(this.terminationDate, product.terminationDate) && + Objects.equals(this.agreement, product.agreement) && + Objects.equals(this.billingAccount, product.billingAccount) && + Objects.equals(this.place, product.place) && + Objects.equals(this.product, product.product) && + Objects.equals(this.productCharacteristic, product.productCharacteristic) && + Objects.equals(this.productOffering, product.productOffering) && + Objects.equals(this.productOrderItem, product.productOrderItem) && + Objects.equals(this.productPrice, product.productPrice) && + Objects.equals(this.productRelationship, product.productRelationship) && + Objects.equals(this.productSpecification, product.productSpecification) && + Objects.equals(this.productTerm, product.productTerm) && + Objects.equals(this.realizingResource, product.realizingResource) && + Objects.equals(this.realizingService, product.realizingService) && + Objects.equals(this.relatedParty, product.relatedParty) && + Objects.equals(this.status, product.status) && + Objects.equals(this._atBaseType, product._atBaseType) && + Objects.equals(this._atSchemaLocation, product._atSchemaLocation) && + Objects.equals(this._atType, product._atType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, description, isBundle, isCustomerVisible, name, orderDate, productSerialNumber, startDate, terminationDate, agreement, billingAccount, place, product, productCharacteristic, productOffering, productOrderItem, productPrice, productRelationship, productSpecification, productTerm, realizingResource, realizingService, relatedParty, status, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class Product {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isBundle: ").append(toIndentedString(isBundle)).append("\n"); + sb.append(" isCustomerVisible: ").append(toIndentedString(isCustomerVisible)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" orderDate: ").append(toIndentedString(orderDate)).append("\n"); + sb.append(" productSerialNumber: ").append(toIndentedString(productSerialNumber)).append("\n"); + sb.append(" startDate: ").append(toIndentedString(startDate)).append("\n"); + sb.append(" terminationDate: ").append(toIndentedString(terminationDate)).append("\n"); + sb.append(" agreement: ").append(toIndentedString(agreement)).append("\n"); + sb.append(" billingAccount: ").append(toIndentedString(billingAccount)).append("\n"); + sb.append(" place: ").append(toIndentedString(place)).append("\n"); + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append(" productCharacteristic: ").append(toIndentedString(productCharacteristic)).append("\n"); + sb.append(" productOffering: ").append(toIndentedString(productOffering)).append("\n"); + sb.append(" productOrderItem: ").append(toIndentedString(productOrderItem)).append("\n"); + sb.append(" productPrice: ").append(toIndentedString(productPrice)).append("\n"); + sb.append(" productRelationship: ").append(toIndentedString(productRelationship)).append("\n"); + sb.append(" productSpecification: ").append(toIndentedString(productSpecification)).append("\n"); + sb.append(" productTerm: ").append(toIndentedString(productTerm)).append("\n"); + sb.append(" realizingResource: ").append(toIndentedString(realizingResource)).append("\n"); + sb.append(" realizingService: ").append(toIndentedString(realizingService)).append("\n"); + sb.append(" relatedParty: ").append(toIndentedString(relatedParty)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductAttributeValueChangeEvent.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductAttributeValueChangeEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..3511cd102a2deaba2a14284dcce462b629004f37 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductAttributeValueChangeEvent.java @@ -0,0 +1,334 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Date; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The notification data structure + */ +@Schema(description = "The notification data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductAttributeValueChangeEvent { + @JsonProperty("eventId") + private String eventId = null; + + @JsonProperty("eventTime") + private Date eventTime = null; + + @JsonProperty("eventType") + private String eventType = null; + + @JsonProperty("correlationId") + private String correlationId = null; + + @JsonProperty("domain") + private String domain = null; + + @JsonProperty("title") + private String title = null; + + @JsonProperty("description") + private String description = null; + + @JsonProperty("priority") + private String priority = null; + + @JsonProperty("timeOcurred") + private Date timeOcurred = null; + + @JsonProperty("fieldPath") + private String fieldPath = null; + + @JsonProperty("event") + private ProductAttributeValueChangeEventPayload event = null; + + public ProductAttributeValueChangeEvent eventId(String eventId) { + this.eventId = eventId; + return this; + } + + /** + * The identifier of the notification. + * @return eventId + **/ + @Schema(description = "The identifier of the notification.") + @NotNull + + public String getEventId() { + return eventId; + } + + public void setEventId(String eventId) { + this.eventId = eventId; + } + + public ProductAttributeValueChangeEvent eventTime(Date eventTime) { + this.eventTime = eventTime; + return this; + } + + /** + * Time of the event occurrence. + * @return eventTime + **/ + @Schema(description = "Time of the event occurrence.") + @NotNull + + @Valid + public Date getEventTime() { + return eventTime; + } + + public void setEventTime(Date eventTime) { + this.eventTime = eventTime; + } + + public ProductAttributeValueChangeEvent eventType(String eventType) { + this.eventType = eventType; + return this; + } + + /** + * The type of the notification. + * @return eventType + **/ + @Schema(description = "The type of the notification.") + @NotNull + + public String getEventType() { + return eventType; + } + + public void setEventType(String eventType) { + this.eventType = eventType; + } + + public ProductAttributeValueChangeEvent correlationId(String correlationId) { + this.correlationId = correlationId; + return this; + } + + /** + * The correlation id for this event. + * @return correlationId + **/ + @Schema(description = "The correlation id for this event.") + @NotNull + + public String getCorrelationId() { + return correlationId; + } + + public void setCorrelationId(String correlationId) { + this.correlationId = correlationId; + } + + public ProductAttributeValueChangeEvent domain(String domain) { + this.domain = domain; + return this; + } + + /** + * The domain of the event. + * @return domain + **/ + @Schema(description = "The domain of the event.") + @NotNull + + public String getDomain() { + return domain; + } + + public void setDomain(String domain) { + this.domain = domain; + } + + public ProductAttributeValueChangeEvent title(String title) { + this.title = title; + return this; + } + + /** + * The title of the event. + * @return title + **/ + @Schema(description = "The title of the event.") + @NotNull + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public ProductAttributeValueChangeEvent description(String description) { + this.description = description; + return this; + } + + /** + * An explnatory of the event. + * @return description + **/ + @Schema(description = "An explnatory of the event.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductAttributeValueChangeEvent priority(String priority) { + this.priority = priority; + return this; + } + + /** + * A priority. + * @return priority + **/ + @Schema(description = "A priority.") + @NotNull + + public String getPriority() { + return priority; + } + + public void setPriority(String priority) { + this.priority = priority; + } + + public ProductAttributeValueChangeEvent timeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + return this; + } + + /** + * The time the event occured. + * @return timeOcurred + **/ + @Schema(description = "The time the event occured.") + @NotNull + + @Valid + public Date getTimeOcurred() { + return timeOcurred; + } + + public void setTimeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + } + + public ProductAttributeValueChangeEvent fieldPath(String fieldPath) { + this.fieldPath = fieldPath; + return this; + } + + /** + * The path identifying the object field concerned by this notification. + * @return fieldPath + **/ + @Schema(description = "The path identifying the object field concerned by this notification.") + @NotNull + + public String getFieldPath() { + return fieldPath; + } + + public void setFieldPath(String fieldPath) { + this.fieldPath = fieldPath; + } + + public ProductAttributeValueChangeEvent event(ProductAttributeValueChangeEventPayload event) { + this.event = event; + return this; + } + + /** + * Get event + * @return event + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductAttributeValueChangeEventPayload getEvent() { + return event; + } + + public void setEvent(ProductAttributeValueChangeEventPayload event) { + this.event = event; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductAttributeValueChangeEvent productAttributeValueChangeEvent = (ProductAttributeValueChangeEvent) o; + return Objects.equals(this.eventId, productAttributeValueChangeEvent.eventId) && + Objects.equals(this.eventTime, productAttributeValueChangeEvent.eventTime) && + Objects.equals(this.eventType, productAttributeValueChangeEvent.eventType) && + Objects.equals(this.correlationId, productAttributeValueChangeEvent.correlationId) && + Objects.equals(this.domain, productAttributeValueChangeEvent.domain) && + Objects.equals(this.title, productAttributeValueChangeEvent.title) && + Objects.equals(this.description, productAttributeValueChangeEvent.description) && + Objects.equals(this.priority, productAttributeValueChangeEvent.priority) && + Objects.equals(this.timeOcurred, productAttributeValueChangeEvent.timeOcurred) && + Objects.equals(this.fieldPath, productAttributeValueChangeEvent.fieldPath) && + Objects.equals(this.event, productAttributeValueChangeEvent.event); + } + + @Override + public int hashCode() { + return Objects.hash(eventId, eventTime, eventType, correlationId, domain, title, description, priority, timeOcurred, fieldPath, event); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductAttributeValueChangeEvent {\n"); + + sb.append(" eventId: ").append(toIndentedString(eventId)).append("\n"); + sb.append(" eventTime: ").append(toIndentedString(eventTime)).append("\n"); + sb.append(" eventType: ").append(toIndentedString(eventType)).append("\n"); + sb.append(" correlationId: ").append(toIndentedString(correlationId)).append("\n"); + sb.append(" domain: ").append(toIndentedString(domain)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" priority: ").append(toIndentedString(priority)).append("\n"); + sb.append(" timeOcurred: ").append(toIndentedString(timeOcurred)).append("\n"); + sb.append(" fieldPath: ").append(toIndentedString(fieldPath)).append("\n"); + sb.append(" event: ").append(toIndentedString(event)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductAttributeValueChangeEventPayload.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductAttributeValueChangeEventPayload.java new file mode 100644 index 0000000000000000000000000000000000000000..50b4c3a7e50f08d4d7cfc69eebf07b154b359375 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductAttributeValueChangeEventPayload.java @@ -0,0 +1,81 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The event data structure + */ +@Schema(description = "The event data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductAttributeValueChangeEventPayload { + @JsonProperty("product") + private Product product = null; + + public ProductAttributeValueChangeEventPayload product(Product product) { + this.product = product; + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + + @Valid + public Product getProduct() { + return product; + } + + public void setProduct(Product product) { + this.product = product; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductAttributeValueChangeEventPayload productAttributeValueChangeEventPayload = (ProductAttributeValueChangeEventPayload) o; + return Objects.equals(this.product, productAttributeValueChangeEventPayload.product); + } + + @Override + public int hashCode() { + return Objects.hash(product); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductAttributeValueChangeEventPayload {\n"); + + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductBatchEvent.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductBatchEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..f1a1186c6e1ff9f101236083098a156bd358208b --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductBatchEvent.java @@ -0,0 +1,359 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Date; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The notification data structure + */ +@Schema(description = "The notification data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductBatchEvent { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("eventId") + private String eventId = null; + + @JsonProperty("eventTime") + private Date eventTime = null; + + @JsonProperty("eventType") + private String eventType = null; + + @JsonProperty("correlationId") + private String correlationId = null; + + @JsonProperty("domain") + private String domain = null; + + @JsonProperty("title") + private String title = null; + + @JsonProperty("description") + private String description = null; + + @JsonProperty("priority") + private String priority = null; + + @JsonProperty("timeOcurred") + private Date timeOcurred = null; + + @JsonProperty("event") + private ProductBatchEventPayload event = null; + + public ProductBatchEvent id(String id) { + this.id = id; + return this; + } + + /** + * Identifier of the Process flow + * @return id + **/ + @Schema(description = "Identifier of the Process flow") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductBatchEvent href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the ProcessFlow + * @return href + **/ + @Schema(description = "Reference of the ProcessFlow") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductBatchEvent eventId(String eventId) { + this.eventId = eventId; + return this; + } + + /** + * The identifier of the notification. + * @return eventId + **/ + @Schema(description = "The identifier of the notification.") + @NotNull + + public String getEventId() { + return eventId; + } + + public void setEventId(String eventId) { + this.eventId = eventId; + } + + public ProductBatchEvent eventTime(Date eventTime) { + this.eventTime = eventTime; + return this; + } + + /** + * Time of the event occurrence. + * @return eventTime + **/ + @Schema(description = "Time of the event occurrence.") + @NotNull + + @Valid + public Date getEventTime() { + return eventTime; + } + + public void setEventTime(Date eventTime) { + this.eventTime = eventTime; + } + + public ProductBatchEvent eventType(String eventType) { + this.eventType = eventType; + return this; + } + + /** + * The type of the notification. + * @return eventType + **/ + @Schema(description = "The type of the notification.") + @NotNull + + public String getEventType() { + return eventType; + } + + public void setEventType(String eventType) { + this.eventType = eventType; + } + + public ProductBatchEvent correlationId(String correlationId) { + this.correlationId = correlationId; + return this; + } + + /** + * The correlation id for this event. + * @return correlationId + **/ + @Schema(description = "The correlation id for this event.") + @NotNull + + public String getCorrelationId() { + return correlationId; + } + + public void setCorrelationId(String correlationId) { + this.correlationId = correlationId; + } + + public ProductBatchEvent domain(String domain) { + this.domain = domain; + return this; + } + + /** + * The domain of the event. + * @return domain + **/ + @Schema(description = "The domain of the event.") + @NotNull + + public String getDomain() { + return domain; + } + + public void setDomain(String domain) { + this.domain = domain; + } + + public ProductBatchEvent title(String title) { + this.title = title; + return this; + } + + /** + * The title of the event. + * @return title + **/ + @Schema(description = "The title of the event.") + @NotNull + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public ProductBatchEvent description(String description) { + this.description = description; + return this; + } + + /** + * An explnatory of the event. + * @return description + **/ + @Schema(description = "An explnatory of the event.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductBatchEvent priority(String priority) { + this.priority = priority; + return this; + } + + /** + * A priority. + * @return priority + **/ + @Schema(description = "A priority.") + @NotNull + + public String getPriority() { + return priority; + } + + public void setPriority(String priority) { + this.priority = priority; + } + + public ProductBatchEvent timeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + return this; + } + + /** + * The time the event occured. + * @return timeOcurred + **/ + @Schema(description = "The time the event occured.") + @NotNull + + @Valid + public Date getTimeOcurred() { + return timeOcurred; + } + + public void setTimeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + } + + public ProductBatchEvent event(ProductBatchEventPayload event) { + this.event = event; + return this; + } + + /** + * Get event + * @return event + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductBatchEventPayload getEvent() { + return event; + } + + public void setEvent(ProductBatchEventPayload event) { + this.event = event; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductBatchEvent productBatchEvent = (ProductBatchEvent) o; + return Objects.equals(this.id, productBatchEvent.id) && + Objects.equals(this.href, productBatchEvent.href) && + Objects.equals(this.eventId, productBatchEvent.eventId) && + Objects.equals(this.eventTime, productBatchEvent.eventTime) && + Objects.equals(this.eventType, productBatchEvent.eventType) && + Objects.equals(this.correlationId, productBatchEvent.correlationId) && + Objects.equals(this.domain, productBatchEvent.domain) && + Objects.equals(this.title, productBatchEvent.title) && + Objects.equals(this.description, productBatchEvent.description) && + Objects.equals(this.priority, productBatchEvent.priority) && + Objects.equals(this.timeOcurred, productBatchEvent.timeOcurred) && + Objects.equals(this.event, productBatchEvent.event); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, eventId, eventTime, eventType, correlationId, domain, title, description, priority, timeOcurred, event); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductBatchEvent {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" eventId: ").append(toIndentedString(eventId)).append("\n"); + sb.append(" eventTime: ").append(toIndentedString(eventTime)).append("\n"); + sb.append(" eventType: ").append(toIndentedString(eventType)).append("\n"); + sb.append(" correlationId: ").append(toIndentedString(correlationId)).append("\n"); + sb.append(" domain: ").append(toIndentedString(domain)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" priority: ").append(toIndentedString(priority)).append("\n"); + sb.append(" timeOcurred: ").append(toIndentedString(timeOcurred)).append("\n"); + sb.append(" event: ").append(toIndentedString(event)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductBatchEventPayload.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductBatchEventPayload.java new file mode 100644 index 0000000000000000000000000000000000000000..e90831cb7692e047a22b32a00dc85deb485e546f --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductBatchEventPayload.java @@ -0,0 +1,81 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The event data structure + */ +@Schema(description = "The event data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductBatchEventPayload { + @JsonProperty("product") + private Product product = null; + + public ProductBatchEventPayload product(Product product) { + this.product = product; + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + + @Valid + public Product getProduct() { + return product; + } + + public void setProduct(Product product) { + this.product = product; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductBatchEventPayload productBatchEventPayload = (ProductBatchEventPayload) o; + return Objects.equals(this.product, productBatchEventPayload.product); + } + + @Override + public int hashCode() { + return Objects.hash(product); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductBatchEventPayload {\n"); + + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreate.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreate.java new file mode 100644 index 0000000000000000000000000000000000000000..571957c84db23548bc76e1d4b4293864824f2417 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreate.java @@ -0,0 +1,819 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.service.Characteristic; +import org.etsi.osl.tmf.common.model.service.ResourceRef; +import org.etsi.osl.tmf.common.model.service.ServiceRef; +import org.etsi.osl.tmf.po622.model.AgreementItemRef; +import org.etsi.osl.tmf.prm669.model.RelatedParty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * A product offering procured by a customer or other interested party playing a party role. A product is realized as one or more service(s) and / or resource(s). Skipped properties: id,href + */ +@Schema(description = "A product offering procured by a customer or other interested party playing a party role. A product is realized as one or more service(s) and / or resource(s). Skipped properties: id,href") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductCreate { + @JsonProperty("description") + private String description = null; + + @JsonProperty("isBundle") + private Boolean isBundle = null; + + @JsonProperty("isCustomerVisible") + private Boolean isCustomerVisible = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("orderDate") + private Date orderDate = null; + + @JsonProperty("productSerialNumber") + private String productSerialNumber = null; + + @JsonProperty("startDate") + private Date startDate = null; + + @JsonProperty("terminationDate") + private Date terminationDate = null; + + @JsonProperty("agreement") + @Valid + private List<AgreementItemRef> agreement = null; + + @JsonProperty("billingAccount") + private BillingAccountRef billingAccount = null; + + @JsonProperty("place") + @Valid + private List<RelatedPlaceRefOrValue> place = null; + + @JsonProperty("product") + @Valid + private List<ProductRefOrValue> product = null; + + @JsonProperty("productCharacteristic") + @Valid + private List<Characteristic> productCharacteristic = null; + + @JsonProperty("productOffering") + private ProductOfferingRef productOffering = null; + + @JsonProperty("productOrderItem") + @Valid + private List<RelatedProductOrderItem> productOrderItem = null; + + @JsonProperty("productPrice") + @Valid + private List<ProductPrice> productPrice = null; + + @JsonProperty("productRelationship") + @Valid + private List<ProductRelationship> productRelationship = null; + + @JsonProperty("productSpecification") + private ProductSpecificationRef productSpecification = null; + + @JsonProperty("productTerm") + @Valid + private List<ProductTerm> productTerm = null; + + @JsonProperty("realizingResource") + @Valid + private List<ResourceRef> realizingResource = null; + + @JsonProperty("realizingService") + @Valid + private List<ServiceRef> realizingService = null; + + @JsonProperty("relatedParty") + @Valid + private List<RelatedParty> relatedParty = null; + + @JsonProperty("status") + private ProductStatusType status = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public ProductCreate description(String description) { + this.description = description; + return this; + } + + /** + * Is the description of the product. It could be copied from the description of the Product Offering. + * @return description + **/ + @Schema(description = "Is the description of the product. It could be copied from the description of the Product Offering.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductCreate isBundle(Boolean isBundle) { + this.isBundle = isBundle; + return this; + } + + /** + * If true, the product is a ProductBundle which is an instantiation of a BundledProductOffering. If false, the product is a ProductComponent which is an instantiation of a SimpleProductOffering. + * @return isBundle + **/ + @Schema(description = "If true, the product is a ProductBundle which is an instantiation of a BundledProductOffering. If false, the product is a ProductComponent which is an instantiation of a SimpleProductOffering.") + @NotNull + + public Boolean isIsBundle() { + return isBundle; + } + + public void setIsBundle(Boolean isBundle) { + this.isBundle = isBundle; + } + + public ProductCreate isCustomerVisible(Boolean isCustomerVisible) { + this.isCustomerVisible = isCustomerVisible; + return this; + } + + /** + * If true, the product is visible by the customer. + * @return isCustomerVisible + **/ + @Schema(description = "If true, the product is visible by the customer.") + @NotNull + + public Boolean isIsCustomerVisible() { + return isCustomerVisible; + } + + public void setIsCustomerVisible(Boolean isCustomerVisible) { + this.isCustomerVisible = isCustomerVisible; + } + + public ProductCreate name(String name) { + this.name = name; + return this; + } + + /** + * Name of the product. It could be the same as the name of the product offering + * @return name + **/ + @Schema(description = "Name of the product. It could be the same as the name of the product offering") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductCreate orderDate(Date orderDate) { + this.orderDate = orderDate; + return this; + } + + /** + * Is the date when the product was ordered + * @return orderDate + **/ + @Schema(description = "Is the date when the product was ordered") + @NotNull + + @Valid + public Date getOrderDate() { + return orderDate; + } + + public void setOrderDate(Date orderDate) { + this.orderDate = orderDate; + } + + public ProductCreate productSerialNumber(String productSerialNumber) { + this.productSerialNumber = productSerialNumber; + return this; + } + + /** + * Is the serial number for the product. This is typically applicable to tangible products e.g. Broadband Router. + * @return productSerialNumber + **/ + @Schema(description = "Is the serial number for the product. This is typically applicable to tangible products e.g. Broadband Router.") + @NotNull + + public String getProductSerialNumber() { + return productSerialNumber; + } + + public void setProductSerialNumber(String productSerialNumber) { + this.productSerialNumber = productSerialNumber; + } + + public ProductCreate startDate(Date startDate) { + this.startDate = startDate; + return this; + } + + /** + * Is the date from which the product starts + * @return startDate + **/ + @Schema(description = "Is the date from which the product starts") + @NotNull + + @Valid + public Date getStartDate() { + return startDate; + } + + public void setStartDate(Date startDate) { + this.startDate = startDate; + } + + public ProductCreate terminationDate(Date terminationDate) { + this.terminationDate = terminationDate; + return this; + } + + /** + * Is the date when the product was terminated + * @return terminationDate + **/ + @Schema(description = "Is the date when the product was terminated") + @NotNull + + @Valid + public Date getTerminationDate() { + return terminationDate; + } + + public void setTerminationDate(Date terminationDate) { + this.terminationDate = terminationDate; + } + + public ProductCreate agreement(List<AgreementItemRef> agreement) { + this.agreement = agreement; + return this; + } + + public ProductCreate addAgreementItem(AgreementItemRef agreementItem) { + if (this.agreement == null) { + this.agreement = new ArrayList<AgreementItemRef>(); + } + this.agreement.add(agreementItem); + return this; + } + + /** + * Get agreement + * @return agreement + **/ + @Schema(description = "") + @NotNull + @Valid + public List<AgreementItemRef> getAgreement() { + return agreement; + } + + public void setAgreement(List<AgreementItemRef> agreement) { + this.agreement = agreement; + } + + public ProductCreate billingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + return this; + } + + /** + * Get billingAccount + * @return billingAccount + **/ + @Schema(description = "") + @NotNull + + @Valid + public BillingAccountRef getBillingAccount() { + return billingAccount; + } + + public void setBillingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + } + + public ProductCreate place(List<RelatedPlaceRefOrValue> place) { + this.place = place; + return this; + } + + public ProductCreate addPlaceItem(RelatedPlaceRefOrValue placeItem) { + if (this.place == null) { + this.place = new ArrayList<RelatedPlaceRefOrValue>(); + } + this.place.add(placeItem); + return this; + } + + /** + * Get place + * @return place + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedPlaceRefOrValue> getPlace() { + return place; + } + + public void setPlace(List<RelatedPlaceRefOrValue> place) { + this.place = place; + } + + public ProductCreate product(List<ProductRefOrValue> product) { + this.product = product; + return this; + } + + public ProductCreate addProductItem(ProductRefOrValue productItem) { + if (this.product == null) { + this.product = new ArrayList<ProductRefOrValue>(); + } + this.product.add(productItem); + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductRefOrValue> getProduct() { + return product; + } + + public void setProduct(List<ProductRefOrValue> product) { + this.product = product; + } + + public ProductCreate productCharacteristic(List<Characteristic> productCharacteristic) { + this.productCharacteristic = productCharacteristic; + return this; + } + + public ProductCreate addProductCharacteristicItem(Characteristic productCharacteristicItem) { + if (this.productCharacteristic == null) { + this.productCharacteristic = new ArrayList<Characteristic>(); + } + this.productCharacteristic.add(productCharacteristicItem); + return this; + } + + /** + * Get productCharacteristic + * @return productCharacteristic + **/ + @Schema(description = "") + @NotNull + @Valid + public List<Characteristic> getProductCharacteristic() { + return productCharacteristic; + } + + public void setProductCharacteristic(List<Characteristic> productCharacteristic) { + this.productCharacteristic = productCharacteristic; + } + + public ProductCreate productOffering(ProductOfferingRef productOffering) { + this.productOffering = productOffering; + return this; + } + + /** + * Get productOffering + * @return productOffering + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductOfferingRef getProductOffering() { + return productOffering; + } + + public void setProductOffering(ProductOfferingRef productOffering) { + this.productOffering = productOffering; + } + + public ProductCreate productOrderItem(List<RelatedProductOrderItem> productOrderItem) { + this.productOrderItem = productOrderItem; + return this; + } + + public ProductCreate addProductOrderItemItem(RelatedProductOrderItem productOrderItemItem) { + if (this.productOrderItem == null) { + this.productOrderItem = new ArrayList<RelatedProductOrderItem>(); + } + this.productOrderItem.add(productOrderItemItem); + return this; + } + + /** + * Get productOrderItem + * @return productOrderItem + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedProductOrderItem> getProductOrderItem() { + return productOrderItem; + } + + public void setProductOrderItem(List<RelatedProductOrderItem> productOrderItem) { + this.productOrderItem = productOrderItem; + } + + public ProductCreate productPrice(List<ProductPrice> productPrice) { + this.productPrice = productPrice; + return this; + } + + public ProductCreate addProductPriceItem(ProductPrice productPriceItem) { + if (this.productPrice == null) { + this.productPrice = new ArrayList<ProductPrice>(); + } + this.productPrice.add(productPriceItem); + return this; + } + + /** + * Get productPrice + * @return productPrice + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductPrice> getProductPrice() { + return productPrice; + } + + public void setProductPrice(List<ProductPrice> productPrice) { + this.productPrice = productPrice; + } + + public ProductCreate productRelationship(List<ProductRelationship> productRelationship) { + this.productRelationship = productRelationship; + return this; + } + + public ProductCreate addProductRelationshipItem(ProductRelationship productRelationshipItem) { + if (this.productRelationship == null) { + this.productRelationship = new ArrayList<ProductRelationship>(); + } + this.productRelationship.add(productRelationshipItem); + return this; + } + + /** + * Get productRelationship + * @return productRelationship + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductRelationship> getProductRelationship() { + return productRelationship; + } + + public void setProductRelationship(List<ProductRelationship> productRelationship) { + this.productRelationship = productRelationship; + } + + public ProductCreate productSpecification(ProductSpecificationRef productSpecification) { + this.productSpecification = productSpecification; + return this; + } + + /** + * Get productSpecification + * @return productSpecification + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductSpecificationRef getProductSpecification() { + return productSpecification; + } + + public void setProductSpecification(ProductSpecificationRef productSpecification) { + this.productSpecification = productSpecification; + } + + public ProductCreate productTerm(List<ProductTerm> productTerm) { + this.productTerm = productTerm; + return this; + } + + public ProductCreate addProductTermItem(ProductTerm productTermItem) { + if (this.productTerm == null) { + this.productTerm = new ArrayList<ProductTerm>(); + } + this.productTerm.add(productTermItem); + return this; + } + + /** + * Get productTerm + * @return productTerm + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductTerm> getProductTerm() { + return productTerm; + } + + public void setProductTerm(List<ProductTerm> productTerm) { + this.productTerm = productTerm; + } + + public ProductCreate realizingResource(List<ResourceRef> realizingResource) { + this.realizingResource = realizingResource; + return this; + } + + public ProductCreate addRealizingResourceItem(ResourceRef realizingResourceItem) { + if (this.realizingResource == null) { + this.realizingResource = new ArrayList<ResourceRef>(); + } + this.realizingResource.add(realizingResourceItem); + return this; + } + + /** + * Get realizingResource + * @return realizingResource + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ResourceRef> getRealizingResource() { + return realizingResource; + } + + public void setRealizingResource(List<ResourceRef> realizingResource) { + this.realizingResource = realizingResource; + } + + public ProductCreate realizingService(List<ServiceRef> realizingService) { + this.realizingService = realizingService; + return this; + } + + public ProductCreate addRealizingServiceItem(ServiceRef realizingServiceItem) { + if (this.realizingService == null) { + this.realizingService = new ArrayList<ServiceRef>(); + } + this.realizingService.add(realizingServiceItem); + return this; + } + + /** + * Get realizingService + * @return realizingService + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ServiceRef> getRealizingService() { + return realizingService; + } + + public void setRealizingService(List<ServiceRef> realizingService) { + this.realizingService = realizingService; + } + + public ProductCreate relatedParty(List<RelatedParty> relatedParty) { + this.relatedParty = relatedParty; + return this; + } + + public ProductCreate addRelatedPartyItem(RelatedParty relatedPartyItem) { + if (this.relatedParty == null) { + this.relatedParty = new ArrayList<RelatedParty>(); + } + this.relatedParty.add(relatedPartyItem); + return this; + } + + /** + * Get relatedParty + * @return relatedParty + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedParty> getRelatedParty() { + return relatedParty; + } + + public void setRelatedParty(List<RelatedParty> relatedParty) { + this.relatedParty = relatedParty; + } + + public ProductCreate status(ProductStatusType status) { + this.status = status; + return this; + } + + /** + * Get status + * @return status + **/ + @Schema(required = true, description = "") + @NotNull + + @Valid + public ProductStatusType getStatus() { + return status; + } + + public void setStatus(ProductStatusType status) { + this.status = status; + } + + public ProductCreate _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductCreate _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductCreate _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductCreate productCreate = (ProductCreate) o; + return Objects.equals(this.description, productCreate.description) && + Objects.equals(this.isBundle, productCreate.isBundle) && + Objects.equals(this.isCustomerVisible, productCreate.isCustomerVisible) && + Objects.equals(this.name, productCreate.name) && + Objects.equals(this.orderDate, productCreate.orderDate) && + Objects.equals(this.productSerialNumber, productCreate.productSerialNumber) && + Objects.equals(this.startDate, productCreate.startDate) && + Objects.equals(this.terminationDate, productCreate.terminationDate) && + Objects.equals(this.agreement, productCreate.agreement) && + Objects.equals(this.billingAccount, productCreate.billingAccount) && + Objects.equals(this.place, productCreate.place) && + Objects.equals(this.product, productCreate.product) && + Objects.equals(this.productCharacteristic, productCreate.productCharacteristic) && + Objects.equals(this.productOffering, productCreate.productOffering) && + Objects.equals(this.productOrderItem, productCreate.productOrderItem) && + Objects.equals(this.productPrice, productCreate.productPrice) && + Objects.equals(this.productRelationship, productCreate.productRelationship) && + Objects.equals(this.productSpecification, productCreate.productSpecification) && + Objects.equals(this.productTerm, productCreate.productTerm) && + Objects.equals(this.realizingResource, productCreate.realizingResource) && + Objects.equals(this.realizingService, productCreate.realizingService) && + Objects.equals(this.relatedParty, productCreate.relatedParty) && + Objects.equals(this.status, productCreate.status) && + Objects.equals(this._atBaseType, productCreate._atBaseType) && + Objects.equals(this._atSchemaLocation, productCreate._atSchemaLocation) && + Objects.equals(this._atType, productCreate._atType); + } + + @Override + public int hashCode() { + return Objects.hash(description, isBundle, isCustomerVisible, name, orderDate, productSerialNumber, startDate, terminationDate, agreement, billingAccount, place, product, productCharacteristic, productOffering, productOrderItem, productPrice, productRelationship, productSpecification, productTerm, realizingResource, realizingService, relatedParty, status, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductCreate {\n"); + + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isBundle: ").append(toIndentedString(isBundle)).append("\n"); + sb.append(" isCustomerVisible: ").append(toIndentedString(isCustomerVisible)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" orderDate: ").append(toIndentedString(orderDate)).append("\n"); + sb.append(" productSerialNumber: ").append(toIndentedString(productSerialNumber)).append("\n"); + sb.append(" startDate: ").append(toIndentedString(startDate)).append("\n"); + sb.append(" terminationDate: ").append(toIndentedString(terminationDate)).append("\n"); + sb.append(" agreement: ").append(toIndentedString(agreement)).append("\n"); + sb.append(" billingAccount: ").append(toIndentedString(billingAccount)).append("\n"); + sb.append(" place: ").append(toIndentedString(place)).append("\n"); + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append(" productCharacteristic: ").append(toIndentedString(productCharacteristic)).append("\n"); + sb.append(" productOffering: ").append(toIndentedString(productOffering)).append("\n"); + sb.append(" productOrderItem: ").append(toIndentedString(productOrderItem)).append("\n"); + sb.append(" productPrice: ").append(toIndentedString(productPrice)).append("\n"); + sb.append(" productRelationship: ").append(toIndentedString(productRelationship)).append("\n"); + sb.append(" productSpecification: ").append(toIndentedString(productSpecification)).append("\n"); + sb.append(" productTerm: ").append(toIndentedString(productTerm)).append("\n"); + sb.append(" realizingResource: ").append(toIndentedString(realizingResource)).append("\n"); + sb.append(" realizingService: ").append(toIndentedString(realizingService)).append("\n"); + sb.append(" relatedParty: ").append(toIndentedString(relatedParty)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreateEvent.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreateEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..74731e4281f8abc8e9f7ffeb892e033f717f09fe --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreateEvent.java @@ -0,0 +1,359 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Date; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The notification data structure + */ +@Schema(description = "The notification data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductCreateEvent { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("eventId") + private String eventId = null; + + @JsonProperty("eventTime") + private Date eventTime = null; + + @JsonProperty("eventType") + private String eventType = null; + + @JsonProperty("correlationId") + private String correlationId = null; + + @JsonProperty("domain") + private String domain = null; + + @JsonProperty("title") + private String title = null; + + @JsonProperty("description") + private String description = null; + + @JsonProperty("priority") + private String priority = null; + + @JsonProperty("timeOcurred") + private Date timeOcurred = null; + + @JsonProperty("event") + private ProductCreateEventPayload event = null; + + public ProductCreateEvent id(String id) { + this.id = id; + return this; + } + + /** + * Identifier of the Process flow + * @return id + **/ + @Schema(description = "Identifier of the Process flow") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductCreateEvent href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the ProcessFlow + * @return href + **/ + @Schema(description = "Reference of the ProcessFlow") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductCreateEvent eventId(String eventId) { + this.eventId = eventId; + return this; + } + + /** + * The identifier of the notification. + * @return eventId + **/ + @Schema(description = "The identifier of the notification.") + @NotNull + + public String getEventId() { + return eventId; + } + + public void setEventId(String eventId) { + this.eventId = eventId; + } + + public ProductCreateEvent eventTime(Date eventTime) { + this.eventTime = eventTime; + return this; + } + + /** + * Time of the event occurrence. + * @return eventTime + **/ + @Schema(description = "Time of the event occurrence.") + @NotNull + + @Valid + public Date getEventTime() { + return eventTime; + } + + public void setEventTime(Date eventTime) { + this.eventTime = eventTime; + } + + public ProductCreateEvent eventType(String eventType) { + this.eventType = eventType; + return this; + } + + /** + * The type of the notification. + * @return eventType + **/ + @Schema(description = "The type of the notification.") + @NotNull + + public String getEventType() { + return eventType; + } + + public void setEventType(String eventType) { + this.eventType = eventType; + } + + public ProductCreateEvent correlationId(String correlationId) { + this.correlationId = correlationId; + return this; + } + + /** + * The correlation id for this event. + * @return correlationId + **/ + @Schema(description = "The correlation id for this event.") + @NotNull + + public String getCorrelationId() { + return correlationId; + } + + public void setCorrelationId(String correlationId) { + this.correlationId = correlationId; + } + + public ProductCreateEvent domain(String domain) { + this.domain = domain; + return this; + } + + /** + * The domain of the event. + * @return domain + **/ + @Schema(description = "The domain of the event.") + @NotNull + + public String getDomain() { + return domain; + } + + public void setDomain(String domain) { + this.domain = domain; + } + + public ProductCreateEvent title(String title) { + this.title = title; + return this; + } + + /** + * The title of the event. + * @return title + **/ + @Schema(description = "The title of the event.") + @NotNull + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public ProductCreateEvent description(String description) { + this.description = description; + return this; + } + + /** + * An explnatory of the event. + * @return description + **/ + @Schema(description = "An explnatory of the event.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductCreateEvent priority(String priority) { + this.priority = priority; + return this; + } + + /** + * A priority. + * @return priority + **/ + @Schema(description = "A priority.") + @NotNull + + public String getPriority() { + return priority; + } + + public void setPriority(String priority) { + this.priority = priority; + } + + public ProductCreateEvent timeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + return this; + } + + /** + * The time the event occured. + * @return timeOcurred + **/ + @Schema(description = "The time the event occured.") + @NotNull + + @Valid + public Date getTimeOcurred() { + return timeOcurred; + } + + public void setTimeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + } + + public ProductCreateEvent event(ProductCreateEventPayload event) { + this.event = event; + return this; + } + + /** + * Get event + * @return event + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductCreateEventPayload getEvent() { + return event; + } + + public void setEvent(ProductCreateEventPayload event) { + this.event = event; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductCreateEvent productCreateEvent = (ProductCreateEvent) o; + return Objects.equals(this.id, productCreateEvent.id) && + Objects.equals(this.href, productCreateEvent.href) && + Objects.equals(this.eventId, productCreateEvent.eventId) && + Objects.equals(this.eventTime, productCreateEvent.eventTime) && + Objects.equals(this.eventType, productCreateEvent.eventType) && + Objects.equals(this.correlationId, productCreateEvent.correlationId) && + Objects.equals(this.domain, productCreateEvent.domain) && + Objects.equals(this.title, productCreateEvent.title) && + Objects.equals(this.description, productCreateEvent.description) && + Objects.equals(this.priority, productCreateEvent.priority) && + Objects.equals(this.timeOcurred, productCreateEvent.timeOcurred) && + Objects.equals(this.event, productCreateEvent.event); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, eventId, eventTime, eventType, correlationId, domain, title, description, priority, timeOcurred, event); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductCreateEvent {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" eventId: ").append(toIndentedString(eventId)).append("\n"); + sb.append(" eventTime: ").append(toIndentedString(eventTime)).append("\n"); + sb.append(" eventType: ").append(toIndentedString(eventType)).append("\n"); + sb.append(" correlationId: ").append(toIndentedString(correlationId)).append("\n"); + sb.append(" domain: ").append(toIndentedString(domain)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" priority: ").append(toIndentedString(priority)).append("\n"); + sb.append(" timeOcurred: ").append(toIndentedString(timeOcurred)).append("\n"); + sb.append(" event: ").append(toIndentedString(event)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreateEventPayload.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreateEventPayload.java new file mode 100644 index 0000000000000000000000000000000000000000..e292e83fcf4c0212ad78aead0e4f777c28d03d1b --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductCreateEventPayload.java @@ -0,0 +1,81 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The event data structure + */ +@Schema(description = "The event data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductCreateEventPayload { + @JsonProperty("product") + private Product product = null; + + public ProductCreateEventPayload product(Product product) { + this.product = product; + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + + @Valid + public Product getProduct() { + return product; + } + + public void setProduct(Product product) { + this.product = product; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductCreateEventPayload productCreateEventPayload = (ProductCreateEventPayload) o; + return Objects.equals(this.product, productCreateEventPayload.product); + } + + @Override + public int hashCode() { + return Objects.hash(product); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductCreateEventPayload {\n"); + + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductDeleteEvent.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductDeleteEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..6637c5ca12bb718ad4ed99305489bf908f08da8a --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductDeleteEvent.java @@ -0,0 +1,359 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Date; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The notification data structure + */ +@Schema(description = "The notification data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductDeleteEvent { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("eventId") + private String eventId = null; + + @JsonProperty("eventTime") + private Date eventTime = null; + + @JsonProperty("eventType") + private String eventType = null; + + @JsonProperty("correlationId") + private String correlationId = null; + + @JsonProperty("domain") + private String domain = null; + + @JsonProperty("title") + private String title = null; + + @JsonProperty("description") + private String description = null; + + @JsonProperty("priority") + private String priority = null; + + @JsonProperty("timeOcurred") + private Date timeOcurred = null; + + @JsonProperty("event") + private ProductDeleteEventPayload event = null; + + public ProductDeleteEvent id(String id) { + this.id = id; + return this; + } + + /** + * Identifier of the Process flow + * @return id + **/ + @Schema(description = "Identifier of the Process flow") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductDeleteEvent href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the ProcessFlow + * @return href + **/ + @Schema(description = "Reference of the ProcessFlow") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductDeleteEvent eventId(String eventId) { + this.eventId = eventId; + return this; + } + + /** + * The identifier of the notification. + * @return eventId + **/ + @Schema(description = "The identifier of the notification.") + @NotNull + + public String getEventId() { + return eventId; + } + + public void setEventId(String eventId) { + this.eventId = eventId; + } + + public ProductDeleteEvent eventTime(Date eventTime) { + this.eventTime = eventTime; + return this; + } + + /** + * Time of the event occurrence. + * @return eventTime + **/ + @Schema(description = "Time of the event occurrence.") + @NotNull + + @Valid + public Date getEventTime() { + return eventTime; + } + + public void setEventTime(Date eventTime) { + this.eventTime = eventTime; + } + + public ProductDeleteEvent eventType(String eventType) { + this.eventType = eventType; + return this; + } + + /** + * The type of the notification. + * @return eventType + **/ + @Schema(description = "The type of the notification.") + @NotNull + + public String getEventType() { + return eventType; + } + + public void setEventType(String eventType) { + this.eventType = eventType; + } + + public ProductDeleteEvent correlationId(String correlationId) { + this.correlationId = correlationId; + return this; + } + + /** + * The correlation id for this event. + * @return correlationId + **/ + @Schema(description = "The correlation id for this event.") + @NotNull + + public String getCorrelationId() { + return correlationId; + } + + public void setCorrelationId(String correlationId) { + this.correlationId = correlationId; + } + + public ProductDeleteEvent domain(String domain) { + this.domain = domain; + return this; + } + + /** + * The domain of the event. + * @return domain + **/ + @Schema(description = "The domain of the event.") + @NotNull + + public String getDomain() { + return domain; + } + + public void setDomain(String domain) { + this.domain = domain; + } + + public ProductDeleteEvent title(String title) { + this.title = title; + return this; + } + + /** + * The title of the event. + * @return title + **/ + @Schema(description = "The title of the event.") + @NotNull + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public ProductDeleteEvent description(String description) { + this.description = description; + return this; + } + + /** + * An explnatory of the event. + * @return description + **/ + @Schema(description = "An explnatory of the event.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductDeleteEvent priority(String priority) { + this.priority = priority; + return this; + } + + /** + * A priority. + * @return priority + **/ + @Schema(description = "A priority.") + @NotNull + + public String getPriority() { + return priority; + } + + public void setPriority(String priority) { + this.priority = priority; + } + + public ProductDeleteEvent timeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + return this; + } + + /** + * The time the event occured. + * @return timeOcurred + **/ + @Schema(description = "The time the event occured.") + @NotNull + + @Valid + public Date getTimeOcurred() { + return timeOcurred; + } + + public void setTimeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + } + + public ProductDeleteEvent event(ProductDeleteEventPayload event) { + this.event = event; + return this; + } + + /** + * Get event + * @return event + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductDeleteEventPayload getEvent() { + return event; + } + + public void setEvent(ProductDeleteEventPayload event) { + this.event = event; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductDeleteEvent productDeleteEvent = (ProductDeleteEvent) o; + return Objects.equals(this.id, productDeleteEvent.id) && + Objects.equals(this.href, productDeleteEvent.href) && + Objects.equals(this.eventId, productDeleteEvent.eventId) && + Objects.equals(this.eventTime, productDeleteEvent.eventTime) && + Objects.equals(this.eventType, productDeleteEvent.eventType) && + Objects.equals(this.correlationId, productDeleteEvent.correlationId) && + Objects.equals(this.domain, productDeleteEvent.domain) && + Objects.equals(this.title, productDeleteEvent.title) && + Objects.equals(this.description, productDeleteEvent.description) && + Objects.equals(this.priority, productDeleteEvent.priority) && + Objects.equals(this.timeOcurred, productDeleteEvent.timeOcurred) && + Objects.equals(this.event, productDeleteEvent.event); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, eventId, eventTime, eventType, correlationId, domain, title, description, priority, timeOcurred, event); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductDeleteEvent {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" eventId: ").append(toIndentedString(eventId)).append("\n"); + sb.append(" eventTime: ").append(toIndentedString(eventTime)).append("\n"); + sb.append(" eventType: ").append(toIndentedString(eventType)).append("\n"); + sb.append(" correlationId: ").append(toIndentedString(correlationId)).append("\n"); + sb.append(" domain: ").append(toIndentedString(domain)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" priority: ").append(toIndentedString(priority)).append("\n"); + sb.append(" timeOcurred: ").append(toIndentedString(timeOcurred)).append("\n"); + sb.append(" event: ").append(toIndentedString(event)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductDeleteEventPayload.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductDeleteEventPayload.java new file mode 100644 index 0000000000000000000000000000000000000000..fbe073e74da567fa7cedcf72502ed1b3b91be0bc --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductDeleteEventPayload.java @@ -0,0 +1,81 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The event data structure + */ +@Schema(description = "The event data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductDeleteEventPayload { + @JsonProperty("product") + private Product product = null; + + public ProductDeleteEventPayload product(Product product) { + this.product = product; + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + + @Valid + public Product getProduct() { + return product; + } + + public void setProduct(Product product) { + this.product = product; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductDeleteEventPayload productDeleteEventPayload = (ProductDeleteEventPayload) o; + return Objects.equals(this.product, productDeleteEventPayload.product); + } + + @Override + public int hashCode() { + return Objects.hash(product); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductDeleteEventPayload {\n"); + + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductOfferingPriceRef.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductOfferingPriceRef.java new file mode 100644 index 0000000000000000000000000000000000000000..c7fada70f667f3d10ec2d261c8deee0379616edf --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductOfferingPriceRef.java @@ -0,0 +1,229 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * ProductPriceOffering reference. An amount, usually of money, that is asked for or allowed when a ProductOffering is bought, rented, or leased + */ +@Schema(description = "ProductPriceOffering reference. An amount, usually of money, that is asked for or allowed when a ProductOffering is bought, rented, or leased") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductOfferingPriceRef { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public ProductOfferingPriceRef id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of a related entity. + * @return id + **/ + @Schema(required = true, description = "Unique identifier of a related entity.") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductOfferingPriceRef href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the related entity. + * @return href + **/ + @Schema(description = "Reference of the related entity.") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductOfferingPriceRef name(String name) { + this.name = name; + return this; + } + + /** + * Name of the related entity. + * @return name + **/ + @Schema(description = "Name of the related entity.") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductOfferingPriceRef _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductOfferingPriceRef _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductOfferingPriceRef _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public ProductOfferingPriceRef _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductOfferingPriceRef productOfferingPriceRef = (ProductOfferingPriceRef) o; + return Objects.equals(this.id, productOfferingPriceRef.id) && + Objects.equals(this.href, productOfferingPriceRef.href) && + Objects.equals(this.name, productOfferingPriceRef.name) && + Objects.equals(this._atBaseType, productOfferingPriceRef._atBaseType) && + Objects.equals(this._atSchemaLocation, productOfferingPriceRef._atSchemaLocation) && + Objects.equals(this._atType, productOfferingPriceRef._atType) && + Objects.equals(this._atReferredType, productOfferingPriceRef._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, name, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingPriceRef {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductOfferingRef.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductOfferingRef.java new file mode 100644 index 0000000000000000000000000000000000000000..e9933e86cc8b87456b33754050da64847d56851b --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductOfferingRef.java @@ -0,0 +1,229 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * ProductOffering reference. A product offering represents entities that are orderable from the provider of the catalog, this resource includes pricing information. + */ +@Schema(description = "ProductOffering reference. A product offering represents entities that are orderable from the provider of the catalog, this resource includes pricing information.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductOfferingRef { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public ProductOfferingRef id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of a related entity. + * @return id + **/ + @Schema(required = true, description = "Unique identifier of a related entity.") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductOfferingRef href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the related entity. + * @return href + **/ + @Schema(description = "Reference of the related entity.") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductOfferingRef name(String name) { + this.name = name; + return this; + } + + /** + * Name of the related entity. + * @return name + **/ + @Schema(description = "Name of the related entity.") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductOfferingRef _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductOfferingRef _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductOfferingRef _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public ProductOfferingRef _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductOfferingRef productOfferingRef = (ProductOfferingRef) o; + return Objects.equals(this.id, productOfferingRef.id) && + Objects.equals(this.href, productOfferingRef.href) && + Objects.equals(this.name, productOfferingRef.name) && + Objects.equals(this._atBaseType, productOfferingRef._atBaseType) && + Objects.equals(this._atSchemaLocation, productOfferingRef._atSchemaLocation) && + Objects.equals(this._atType, productOfferingRef._atType) && + Objects.equals(this._atReferredType, productOfferingRef._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, name, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingRef {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductPrice.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductPrice.java new file mode 100644 index 0000000000000000000000000000000000000000..e233652ce0698a72742ab4b3a790cab87b83ed9d --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductPrice.java @@ -0,0 +1,369 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * An amount, usually of money, that represents the actual price paid by a Customer for a purchase, a rent or a lease of a Product. The price is valid for a defined period of time. + */ +@Schema(description = "An amount, usually of money, that represents the actual price paid by a Customer for a purchase, a rent or a lease of a Product. The price is valid for a defined period of time.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductPrice { + @JsonProperty("description") + private String description = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("priceType") + private String priceType = null; + + @JsonProperty("recurringChargePeriod") + private String recurringChargePeriod = null; + + @JsonProperty("unitOfMeasure") + private String unitOfMeasure = null; + + @JsonProperty("billingAccount") + private BillingAccountRef billingAccount = null; + + @JsonProperty("price") + private Price price = null; + + @JsonProperty("productOfferingPrice") + private ProductOfferingPriceRef productOfferingPrice = null; + + @JsonProperty("productPriceAlteration") + @Valid + private List<PriceAlteration> productPriceAlteration = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public ProductPrice description(String description) { + this.description = description; + return this; + } + + /** + * A narrative that explains in detail the semantics of this product price. + * @return description + **/ + @Schema(description = "A narrative that explains in detail the semantics of this product price.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductPrice name(String name) { + this.name = name; + return this; + } + + /** + * A short descriptive name such as \"Subscription price\". + * @return name + **/ + @Schema(description = "A short descriptive name such as \"Subscription price\".") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductPrice priceType(String priceType) { + this.priceType = priceType; + return this; + } + + /** + * A category that describes the price, such as recurring, discount, allowance, penalty, and so forth. + * @return priceType + **/ + @Schema(required = true, description = "A category that describes the price, such as recurring, discount, allowance, penalty, and so forth.") + @NotNull + + public String getPriceType() { + return priceType; + } + + public void setPriceType(String priceType) { + this.priceType = priceType; + } + + public ProductPrice recurringChargePeriod(String recurringChargePeriod) { + this.recurringChargePeriod = recurringChargePeriod; + return this; + } + + /** + * Could be month, week... + * @return recurringChargePeriod + **/ + @Schema(description = "Could be month, week...") + @NotNull + + public String getRecurringChargePeriod() { + return recurringChargePeriod; + } + + public void setRecurringChargePeriod(String recurringChargePeriod) { + this.recurringChargePeriod = recurringChargePeriod; + } + + public ProductPrice unitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + return this; + } + + /** + * Could be minutes, GB... + * @return unitOfMeasure + **/ + @Schema(description = "Could be minutes, GB...") + @NotNull + + public String getUnitOfMeasure() { + return unitOfMeasure; + } + + public void setUnitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + } + + public ProductPrice billingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + return this; + } + + /** + * Get billingAccount + * @return billingAccount + **/ + @Schema(description = "") + @NotNull + + @Valid + public BillingAccountRef getBillingAccount() { + return billingAccount; + } + + public void setBillingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + } + + public ProductPrice price(Price price) { + this.price = price; + return this; + } + + /** + * Get price + * @return price + **/ + @Schema(required = true, description = "") + @NotNull + + @Valid + public Price getPrice() { + return price; + } + + public void setPrice(Price price) { + this.price = price; + } + + public ProductPrice productOfferingPrice(ProductOfferingPriceRef productOfferingPrice) { + this.productOfferingPrice = productOfferingPrice; + return this; + } + + /** + * Get productOfferingPrice + * @return productOfferingPrice + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductOfferingPriceRef getProductOfferingPrice() { + return productOfferingPrice; + } + + public void setProductOfferingPrice(ProductOfferingPriceRef productOfferingPrice) { + this.productOfferingPrice = productOfferingPrice; + } + + public ProductPrice productPriceAlteration(List<PriceAlteration> productPriceAlteration) { + this.productPriceAlteration = productPriceAlteration; + return this; + } + + public ProductPrice addProductPriceAlterationItem(PriceAlteration productPriceAlterationItem) { + if (this.productPriceAlteration == null) { + this.productPriceAlteration = new ArrayList<PriceAlteration>(); + } + this.productPriceAlteration.add(productPriceAlterationItem); + return this; + } + + /** + * Get productPriceAlteration + * @return productPriceAlteration + **/ + @Schema(description = "") + @NotNull + @Valid + public List<PriceAlteration> getProductPriceAlteration() { + return productPriceAlteration; + } + + public void setProductPriceAlteration(List<PriceAlteration> productPriceAlteration) { + this.productPriceAlteration = productPriceAlteration; + } + + public ProductPrice _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductPrice _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductPrice _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductPrice productPrice = (ProductPrice) o; + return Objects.equals(this.description, productPrice.description) && + Objects.equals(this.name, productPrice.name) && + Objects.equals(this.priceType, productPrice.priceType) && + Objects.equals(this.recurringChargePeriod, productPrice.recurringChargePeriod) && + Objects.equals(this.unitOfMeasure, productPrice.unitOfMeasure) && + Objects.equals(this.billingAccount, productPrice.billingAccount) && + Objects.equals(this.price, productPrice.price) && + Objects.equals(this.productOfferingPrice, productPrice.productOfferingPrice) && + Objects.equals(this.productPriceAlteration, productPrice.productPriceAlteration) && + Objects.equals(this._atBaseType, productPrice._atBaseType) && + Objects.equals(this._atSchemaLocation, productPrice._atSchemaLocation) && + Objects.equals(this._atType, productPrice._atType); + } + + @Override + public int hashCode() { + return Objects.hash(description, name, priceType, recurringChargePeriod, unitOfMeasure, billingAccount, price, productOfferingPrice, productPriceAlteration, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductPrice {\n"); + + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" priceType: ").append(toIndentedString(priceType)).append("\n"); + sb.append(" recurringChargePeriod: ").append(toIndentedString(recurringChargePeriod)).append("\n"); + sb.append(" unitOfMeasure: ").append(toIndentedString(unitOfMeasure)).append("\n"); + sb.append(" billingAccount: ").append(toIndentedString(billingAccount)).append("\n"); + sb.append(" price: ").append(toIndentedString(price)).append("\n"); + sb.append(" productOfferingPrice: ").append(toIndentedString(productOfferingPrice)).append("\n"); + sb.append(" productPriceAlteration: ").append(toIndentedString(productPriceAlteration)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRef.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRef.java new file mode 100644 index 0000000000000000000000000000000000000000..4f0fca5465cdf134ce9acbcffab9396c498f93b4 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRef.java @@ -0,0 +1,228 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * ProductRef + */ +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductRef { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public ProductRef id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of a related entity. + * @return id + **/ + @Schema(required = true, description = "Unique identifier of a related entity.") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductRef href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the related entity. + * @return href + **/ + @Schema(description = "Reference of the related entity.") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductRef name(String name) { + this.name = name; + return this; + } + + /** + * Name of the related entity. + * @return name + **/ + @Schema(description = "Name of the related entity.") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductRef _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductRef _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductRef _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public ProductRef _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductRef productRef = (ProductRef) o; + return Objects.equals(this.id, productRef.id) && + Objects.equals(this.href, productRef.href) && + Objects.equals(this.name, productRef.name) && + Objects.equals(this._atBaseType, productRef._atBaseType) && + Objects.equals(this._atSchemaLocation, productRef._atSchemaLocation) && + Objects.equals(this._atType, productRef._atType) && + Objects.equals(this._atReferredType, productRef._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, name, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductRef {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRefOrValue.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRefOrValue.java new file mode 100644 index 0000000000000000000000000000000000000000..e4b1308c6b07e6f8fe7727e8011ef72d81251f0a --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRefOrValue.java @@ -0,0 +1,894 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.service.Characteristic; +import org.etsi.osl.tmf.common.model.service.ResourceRef; +import org.etsi.osl.tmf.common.model.service.ServiceRef; +import org.etsi.osl.tmf.po622.model.AgreementItemRef; +import org.etsi.osl.tmf.prm669.model.RelatedParty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * A product to be created defined by value or existing defined by reference. The polymorphic attributes @type, @schemaLocation & @referredType are related to the product entity and not the RelatedProductRefOrValue class itself + */ +@Schema(description = "A product to be created defined by value or existing defined by reference. The polymorphic attributes @type, @schemaLocation & @referredType are related to the product entity and not the RelatedProductRefOrValue class itself") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductRefOrValue { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("description") + private String description = null; + + @JsonProperty("isBundle") + private Boolean isBundle = null; + + @JsonProperty("isCustomerVisible") + private Boolean isCustomerVisible = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("orderDate") + private Date orderDate = null; + + @JsonProperty("productSerialNumber") + private String productSerialNumber = null; + + @JsonProperty("startDate") + private Date startDate = null; + + @JsonProperty("terminationDate") + private Date terminationDate = null; + + @JsonProperty("agreement") + @Valid + private List<AgreementItemRef> agreement = null; + + @JsonProperty("billingAccount") + private BillingAccountRef billingAccount = null; + + @JsonProperty("place") + @Valid + private List<RelatedPlaceRefOrValue> place = null; + + @JsonProperty("product") + @Valid + private List<ProductRefOrValue> product = null; + + @JsonProperty("productCharacteristic") + @Valid + private List<Characteristic> productCharacteristic = null; + + @JsonProperty("productOffering") + private ProductOfferingRef productOffering = null; + + @JsonProperty("productOrderItem") + @Valid + private List<RelatedProductOrderItem> productOrderItem = null; + + @JsonProperty("productPrice") + @Valid + private List<ProductPrice> productPrice = null; + + @JsonProperty("productRelationship") + @Valid + private List<ProductRelationship> productRelationship = null; + + @JsonProperty("productSpecification") + private ProductSpecificationRef productSpecification = null; + + @JsonProperty("productTerm") + @Valid + private List<ProductTerm> productTerm = null; + + @JsonProperty("realizingResource") + @Valid + private List<ResourceRef> realizingResource = null; + + @JsonProperty("realizingService") + @Valid + private List<ServiceRef> realizingService = null; + + @JsonProperty("relatedParty") + @Valid + private List<RelatedParty> relatedParty = null; + + @JsonProperty("status") + private ProductStatusType status = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public ProductRefOrValue id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of the product + * @return id + **/ + @Schema(description = "Unique identifier of the product") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductRefOrValue href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the product + * @return href + **/ + @Schema(description = "Reference of the product") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductRefOrValue description(String description) { + this.description = description; + return this; + } + + /** + * Is the description of the product. It could be copied from the description of the Product Offering. + * @return description + **/ + @Schema(description = "Is the description of the product. It could be copied from the description of the Product Offering.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductRefOrValue isBundle(Boolean isBundle) { + this.isBundle = isBundle; + return this; + } + + /** + * If true, the product is a ProductBundle which is an instantiation of a BundledProductOffering. If false, the product is a ProductComponent which is an instantiation of a SimpleProductOffering. + * @return isBundle + **/ + @Schema(description = "If true, the product is a ProductBundle which is an instantiation of a BundledProductOffering. If false, the product is a ProductComponent which is an instantiation of a SimpleProductOffering.") + @NotNull + + public Boolean isIsBundle() { + return isBundle; + } + + public void setIsBundle(Boolean isBundle) { + this.isBundle = isBundle; + } + + public ProductRefOrValue isCustomerVisible(Boolean isCustomerVisible) { + this.isCustomerVisible = isCustomerVisible; + return this; + } + + /** + * If true, the product is visible by the customer. + * @return isCustomerVisible + **/ + @Schema(description = "If true, the product is visible by the customer.") + @NotNull + + public Boolean isIsCustomerVisible() { + return isCustomerVisible; + } + + public void setIsCustomerVisible(Boolean isCustomerVisible) { + this.isCustomerVisible = isCustomerVisible; + } + + public ProductRefOrValue name(String name) { + this.name = name; + return this; + } + + /** + * Name of the product. It could be the same as the name of the product offering + * @return name + **/ + @Schema(description = "Name of the product. It could be the same as the name of the product offering") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductRefOrValue orderDate(Date orderDate) { + this.orderDate = orderDate; + return this; + } + + /** + * Is the date when the product was ordered + * @return orderDate + **/ + @Schema(description = "Is the date when the product was ordered") + @NotNull + + @Valid + public Date getOrderDate() { + return orderDate; + } + + public void setOrderDate(Date orderDate) { + this.orderDate = orderDate; + } + + public ProductRefOrValue productSerialNumber(String productSerialNumber) { + this.productSerialNumber = productSerialNumber; + return this; + } + + /** + * Is the serial number for the product. This is typically applicable to tangible products e.g. Broadband Router. + * @return productSerialNumber + **/ + @Schema(description = "Is the serial number for the product. This is typically applicable to tangible products e.g. Broadband Router.") + @NotNull + + public String getProductSerialNumber() { + return productSerialNumber; + } + + public void setProductSerialNumber(String productSerialNumber) { + this.productSerialNumber = productSerialNumber; + } + + public ProductRefOrValue startDate(Date startDate) { + this.startDate = startDate; + return this; + } + + /** + * Is the date from which the product starts + * @return startDate + **/ + @Schema(description = "Is the date from which the product starts") + @NotNull + + @Valid + public Date getStartDate() { + return startDate; + } + + public void setStartDate(Date startDate) { + this.startDate = startDate; + } + + public ProductRefOrValue terminationDate(Date terminationDate) { + this.terminationDate = terminationDate; + return this; + } + + /** + * Is the date when the product was terminated + * @return terminationDate + **/ + @Schema(description = "Is the date when the product was terminated") + @NotNull + + @Valid + public Date getTerminationDate() { + return terminationDate; + } + + public void setTerminationDate(Date terminationDate) { + this.terminationDate = terminationDate; + } + + public ProductRefOrValue agreement(List<AgreementItemRef> agreement) { + this.agreement = agreement; + return this; + } + + public ProductRefOrValue addAgreementItem(AgreementItemRef agreementItem) { + if (this.agreement == null) { + this.agreement = new ArrayList<AgreementItemRef>(); + } + this.agreement.add(agreementItem); + return this; + } + + /** + * Get agreement + * @return agreement + **/ + @Schema(description = "") + @NotNull + @Valid + public List<AgreementItemRef> getAgreement() { + return agreement; + } + + public void setAgreement(List<AgreementItemRef> agreement) { + this.agreement = agreement; + } + + public ProductRefOrValue billingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + return this; + } + + /** + * Get billingAccount + * @return billingAccount + **/ + @Schema(description = "") + @NotNull + + @Valid + public BillingAccountRef getBillingAccount() { + return billingAccount; + } + + public void setBillingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + } + + public ProductRefOrValue place(List<RelatedPlaceRefOrValue> place) { + this.place = place; + return this; + } + + public ProductRefOrValue addPlaceItem(RelatedPlaceRefOrValue placeItem) { + if (this.place == null) { + this.place = new ArrayList<RelatedPlaceRefOrValue>(); + } + this.place.add(placeItem); + return this; + } + + /** + * Get place + * @return place + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedPlaceRefOrValue> getPlace() { + return place; + } + + public void setPlace(List<RelatedPlaceRefOrValue> place) { + this.place = place; + } + + public ProductRefOrValue product(List<ProductRefOrValue> product) { + this.product = product; + return this; + } + + public ProductRefOrValue addProductItem(ProductRefOrValue productItem) { + if (this.product == null) { + this.product = new ArrayList<ProductRefOrValue>(); + } + this.product.add(productItem); + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductRefOrValue> getProduct() { + return product; + } + + public void setProduct(List<ProductRefOrValue> product) { + this.product = product; + } + + public ProductRefOrValue productCharacteristic(List<Characteristic> productCharacteristic) { + this.productCharacteristic = productCharacteristic; + return this; + } + + public ProductRefOrValue addProductCharacteristicItem(Characteristic productCharacteristicItem) { + if (this.productCharacteristic == null) { + this.productCharacteristic = new ArrayList<Characteristic>(); + } + this.productCharacteristic.add(productCharacteristicItem); + return this; + } + + /** + * Get productCharacteristic + * @return productCharacteristic + **/ + @Schema(description = "") + @NotNull + @Valid + public List<Characteristic> getProductCharacteristic() { + return productCharacteristic; + } + + public void setProductCharacteristic(List<Characteristic> productCharacteristic) { + this.productCharacteristic = productCharacteristic; + } + + public ProductRefOrValue productOffering(ProductOfferingRef productOffering) { + this.productOffering = productOffering; + return this; + } + + /** + * Get productOffering + * @return productOffering + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductOfferingRef getProductOffering() { + return productOffering; + } + + public void setProductOffering(ProductOfferingRef productOffering) { + this.productOffering = productOffering; + } + + public ProductRefOrValue productOrderItem(List<RelatedProductOrderItem> productOrderItem) { + this.productOrderItem = productOrderItem; + return this; + } + + public ProductRefOrValue addProductOrderItemItem(RelatedProductOrderItem productOrderItemItem) { + if (this.productOrderItem == null) { + this.productOrderItem = new ArrayList<RelatedProductOrderItem>(); + } + this.productOrderItem.add(productOrderItemItem); + return this; + } + + /** + * Get productOrderItem + * @return productOrderItem + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedProductOrderItem> getProductOrderItem() { + return productOrderItem; + } + + public void setProductOrderItem(List<RelatedProductOrderItem> productOrderItem) { + this.productOrderItem = productOrderItem; + } + + public ProductRefOrValue productPrice(List<ProductPrice> productPrice) { + this.productPrice = productPrice; + return this; + } + + public ProductRefOrValue addProductPriceItem(ProductPrice productPriceItem) { + if (this.productPrice == null) { + this.productPrice = new ArrayList<ProductPrice>(); + } + this.productPrice.add(productPriceItem); + return this; + } + + /** + * Get productPrice + * @return productPrice + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductPrice> getProductPrice() { + return productPrice; + } + + public void setProductPrice(List<ProductPrice> productPrice) { + this.productPrice = productPrice; + } + + public ProductRefOrValue productRelationship(List<ProductRelationship> productRelationship) { + this.productRelationship = productRelationship; + return this; + } + + public ProductRefOrValue addProductRelationshipItem(ProductRelationship productRelationshipItem) { + if (this.productRelationship == null) { + this.productRelationship = new ArrayList<ProductRelationship>(); + } + this.productRelationship.add(productRelationshipItem); + return this; + } + + /** + * Get productRelationship + * @return productRelationship + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductRelationship> getProductRelationship() { + return productRelationship; + } + + public void setProductRelationship(List<ProductRelationship> productRelationship) { + this.productRelationship = productRelationship; + } + + public ProductRefOrValue productSpecification(ProductSpecificationRef productSpecification) { + this.productSpecification = productSpecification; + return this; + } + + /** + * Get productSpecification + * @return productSpecification + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductSpecificationRef getProductSpecification() { + return productSpecification; + } + + public void setProductSpecification(ProductSpecificationRef productSpecification) { + this.productSpecification = productSpecification; + } + + public ProductRefOrValue productTerm(List<ProductTerm> productTerm) { + this.productTerm = productTerm; + return this; + } + + public ProductRefOrValue addProductTermItem(ProductTerm productTermItem) { + if (this.productTerm == null) { + this.productTerm = new ArrayList<ProductTerm>(); + } + this.productTerm.add(productTermItem); + return this; + } + + /** + * Get productTerm + * @return productTerm + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductTerm> getProductTerm() { + return productTerm; + } + + public void setProductTerm(List<ProductTerm> productTerm) { + this.productTerm = productTerm; + } + + public ProductRefOrValue realizingResource(List<ResourceRef> realizingResource) { + this.realizingResource = realizingResource; + return this; + } + + public ProductRefOrValue addRealizingResourceItem(ResourceRef realizingResourceItem) { + if (this.realizingResource == null) { + this.realizingResource = new ArrayList<ResourceRef>(); + } + this.realizingResource.add(realizingResourceItem); + return this; + } + + /** + * Get realizingResource + * @return realizingResource + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ResourceRef> getRealizingResource() { + return realizingResource; + } + + public void setRealizingResource(List<ResourceRef> realizingResource) { + this.realizingResource = realizingResource; + } + + public ProductRefOrValue realizingService(List<ServiceRef> realizingService) { + this.realizingService = realizingService; + return this; + } + + public ProductRefOrValue addRealizingServiceItem(ServiceRef realizingServiceItem) { + if (this.realizingService == null) { + this.realizingService = new ArrayList<ServiceRef>(); + } + this.realizingService.add(realizingServiceItem); + return this; + } + + /** + * Get realizingService + * @return realizingService + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ServiceRef> getRealizingService() { + return realizingService; + } + + public void setRealizingService(List<ServiceRef> realizingService) { + this.realizingService = realizingService; + } + + public ProductRefOrValue relatedParty(List<RelatedParty> relatedParty) { + this.relatedParty = relatedParty; + return this; + } + + public ProductRefOrValue addRelatedPartyItem(RelatedParty relatedPartyItem) { + if (this.relatedParty == null) { + this.relatedParty = new ArrayList<RelatedParty>(); + } + this.relatedParty.add(relatedPartyItem); + return this; + } + + /** + * Get relatedParty + * @return relatedParty + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedParty> getRelatedParty() { + return relatedParty; + } + + public void setRelatedParty(List<RelatedParty> relatedParty) { + this.relatedParty = relatedParty; + } + + public ProductRefOrValue status(ProductStatusType status) { + this.status = status; + return this; + } + + /** + * Get status + * @return status + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductStatusType getStatus() { + return status; + } + + public void setStatus(ProductStatusType status) { + this.status = status; + } + + public ProductRefOrValue _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductRefOrValue _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductRefOrValue _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public ProductRefOrValue _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductRefOrValue productRefOrValue = (ProductRefOrValue) o; + return Objects.equals(this.id, productRefOrValue.id) && + Objects.equals(this.href, productRefOrValue.href) && + Objects.equals(this.description, productRefOrValue.description) && + Objects.equals(this.isBundle, productRefOrValue.isBundle) && + Objects.equals(this.isCustomerVisible, productRefOrValue.isCustomerVisible) && + Objects.equals(this.name, productRefOrValue.name) && + Objects.equals(this.orderDate, productRefOrValue.orderDate) && + Objects.equals(this.productSerialNumber, productRefOrValue.productSerialNumber) && + Objects.equals(this.startDate, productRefOrValue.startDate) && + Objects.equals(this.terminationDate, productRefOrValue.terminationDate) && + Objects.equals(this.agreement, productRefOrValue.agreement) && + Objects.equals(this.billingAccount, productRefOrValue.billingAccount) && + Objects.equals(this.place, productRefOrValue.place) && + Objects.equals(this.product, productRefOrValue.product) && + Objects.equals(this.productCharacteristic, productRefOrValue.productCharacteristic) && + Objects.equals(this.productOffering, productRefOrValue.productOffering) && + Objects.equals(this.productOrderItem, productRefOrValue.productOrderItem) && + Objects.equals(this.productPrice, productRefOrValue.productPrice) && + Objects.equals(this.productRelationship, productRefOrValue.productRelationship) && + Objects.equals(this.productSpecification, productRefOrValue.productSpecification) && + Objects.equals(this.productTerm, productRefOrValue.productTerm) && + Objects.equals(this.realizingResource, productRefOrValue.realizingResource) && + Objects.equals(this.realizingService, productRefOrValue.realizingService) && + Objects.equals(this.relatedParty, productRefOrValue.relatedParty) && + Objects.equals(this.status, productRefOrValue.status) && + Objects.equals(this._atBaseType, productRefOrValue._atBaseType) && + Objects.equals(this._atSchemaLocation, productRefOrValue._atSchemaLocation) && + Objects.equals(this._atType, productRefOrValue._atType) && + Objects.equals(this._atReferredType, productRefOrValue._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, description, isBundle, isCustomerVisible, name, orderDate, productSerialNumber, startDate, terminationDate, agreement, billingAccount, place, product, productCharacteristic, productOffering, productOrderItem, productPrice, productRelationship, productSpecification, productTerm, realizingResource, realizingService, relatedParty, status, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductRefOrValue {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isBundle: ").append(toIndentedString(isBundle)).append("\n"); + sb.append(" isCustomerVisible: ").append(toIndentedString(isCustomerVisible)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" orderDate: ").append(toIndentedString(orderDate)).append("\n"); + sb.append(" productSerialNumber: ").append(toIndentedString(productSerialNumber)).append("\n"); + sb.append(" startDate: ").append(toIndentedString(startDate)).append("\n"); + sb.append(" terminationDate: ").append(toIndentedString(terminationDate)).append("\n"); + sb.append(" agreement: ").append(toIndentedString(agreement)).append("\n"); + sb.append(" billingAccount: ").append(toIndentedString(billingAccount)).append("\n"); + sb.append(" place: ").append(toIndentedString(place)).append("\n"); + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append(" productCharacteristic: ").append(toIndentedString(productCharacteristic)).append("\n"); + sb.append(" productOffering: ").append(toIndentedString(productOffering)).append("\n"); + sb.append(" productOrderItem: ").append(toIndentedString(productOrderItem)).append("\n"); + sb.append(" productPrice: ").append(toIndentedString(productPrice)).append("\n"); + sb.append(" productRelationship: ").append(toIndentedString(productRelationship)).append("\n"); + sb.append(" productSpecification: ").append(toIndentedString(productSpecification)).append("\n"); + sb.append(" productTerm: ").append(toIndentedString(productTerm)).append("\n"); + sb.append(" realizingResource: ").append(toIndentedString(realizingResource)).append("\n"); + sb.append(" realizingService: ").append(toIndentedString(realizingService)).append("\n"); + sb.append(" relatedParty: ").append(toIndentedString(relatedParty)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRelationship.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRelationship.java new file mode 100644 index 0000000000000000000000000000000000000000..e0da3dfb99a817bfb0a394634a26869ae16a9d69 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductRelationship.java @@ -0,0 +1,181 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * Linked products to the one instantiate, such as [bundled] if the product is a bundle and you want to describe the bundled products inside this bundle; [reliesOn] if the product needs another already owned product to rely on (e.g. an option on an already owned mobile access product) [targets] or [isTargeted] (depending on the way of expressing the link) for any other kind of links that may be useful + */ +@Schema(description = "Linked products to the one instantiate, such as [bundled] if the product is a bundle and you want to describe the bundled products inside this bundle; [reliesOn] if the product needs another already owned product to rely on (e.g. an option on an already owned mobile access product) [targets] or [isTargeted] (depending on the way of expressing the link) for any other kind of links that may be useful") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductRelationship { + @JsonProperty("relationshipType") + private String relationshipType = null; + + @JsonProperty("product") + private ProductRefOrValue product = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public ProductRelationship relationshipType(String relationshipType) { + this.relationshipType = relationshipType; + return this; + } + + /** + * Type of the product relationship, such as [bundled] if the product is a bundle and you want to describe the bundled products inside this bundle; [reliesOn] if the product needs another already owned product to rely on (e.g. an option on an already owned mobile access product) [targets] or [isTargeted] (depending on the way of expressing the link) for any other kind of links that may be useful + * @return relationshipType + **/ + @Schema(required = true, description = "Type of the product relationship, such as [bundled] if the product is a bundle and you want to describe the bundled products inside this bundle; [reliesOn] if the product needs another already owned product to rely on (e.g. an option on an already owned mobile access product) [targets] or [isTargeted] (depending on the way of expressing the link) for any other kind of links that may be useful") + @NotNull + + public String getRelationshipType() { + return relationshipType; + } + + public void setRelationshipType(String relationshipType) { + this.relationshipType = relationshipType; + } + + public ProductRelationship product(ProductRefOrValue product) { + this.product = product; + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(required = true, description = "") + @NotNull + + @Valid + public ProductRefOrValue getProduct() { + return product; + } + + public void setProduct(ProductRefOrValue product) { + this.product = product; + } + + public ProductRelationship _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductRelationship _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductRelationship _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductRelationship productRelationship = (ProductRelationship) o; + return Objects.equals(this.relationshipType, productRelationship.relationshipType) && + Objects.equals(this.product, productRelationship.product) && + Objects.equals(this._atBaseType, productRelationship._atBaseType) && + Objects.equals(this._atSchemaLocation, productRelationship._atSchemaLocation) && + Objects.equals(this._atType, productRelationship._atType); + } + + @Override + public int hashCode() { + return Objects.hash(relationshipType, product, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductRelationship {\n"); + + sb.append(" relationshipType: ").append(toIndentedString(relationshipType)).append("\n"); + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductSpecificationRef.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductSpecificationRef.java new file mode 100644 index 0000000000000000000000000000000000000000..6139e53ddc272bd961006176c902afc6af32a4cf --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductSpecificationRef.java @@ -0,0 +1,281 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * Product specification reference: A ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. + */ +@Schema(description = "Product specification reference: A ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductSpecificationRef { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("version") + private String version = null; + + @JsonProperty("targetProductSchema") + private TargetProductSchema targetProductSchema = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public ProductSpecificationRef id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of a related entity. + * @return id + **/ + @Schema(required = true, description = "Unique identifier of a related entity.") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductSpecificationRef href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the related entity. + * @return href + **/ + @Schema(description = "Reference of the related entity.") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductSpecificationRef name(String name) { + this.name = name; + return this; + } + + /** + * Name of the related entity. + * @return name + **/ + @Schema(description = "Name of the related entity.") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductSpecificationRef version(String version) { + this.version = version; + return this; + } + + /** + * Version of the product specification + * @return version + **/ + @Schema(description = "Version of the product specification") + @NotNull + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + + public ProductSpecificationRef targetProductSchema(TargetProductSchema targetProductSchema) { + this.targetProductSchema = targetProductSchema; + return this; + } + + /** + * Get targetProductSchema + * @return targetProductSchema + **/ + @Schema(description = "") + @NotNull + + @Valid + public TargetProductSchema getTargetProductSchema() { + return targetProductSchema; + } + + public void setTargetProductSchema(TargetProductSchema targetProductSchema) { + this.targetProductSchema = targetProductSchema; + } + + public ProductSpecificationRef _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductSpecificationRef _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductSpecificationRef _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public ProductSpecificationRef _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductSpecificationRef productSpecificationRef = (ProductSpecificationRef) o; + return Objects.equals(this.id, productSpecificationRef.id) && + Objects.equals(this.href, productSpecificationRef.href) && + Objects.equals(this.name, productSpecificationRef.name) && + Objects.equals(this.version, productSpecificationRef.version) && + Objects.equals(this.targetProductSchema, productSpecificationRef.targetProductSchema) && + Objects.equals(this._atBaseType, productSpecificationRef._atBaseType) && + Objects.equals(this._atSchemaLocation, productSpecificationRef._atSchemaLocation) && + Objects.equals(this._atType, productSpecificationRef._atType) && + Objects.equals(this._atReferredType, productSpecificationRef._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, name, version, targetProductSchema, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductSpecificationRef {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" version: ").append(toIndentedString(version)).append("\n"); + sb.append(" targetProductSchema: ").append(toIndentedString(targetProductSchema)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStateChangeEvent.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStateChangeEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..a5aa7f6af06ea4e8d869fdd2da77fcb3a77a252b --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStateChangeEvent.java @@ -0,0 +1,359 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Date; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The notification data structure + */ +@Schema(description = "The notification data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductStateChangeEvent { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("eventId") + private String eventId = null; + + @JsonProperty("eventTime") + private Date eventTime = null; + + @JsonProperty("eventType") + private String eventType = null; + + @JsonProperty("correlationId") + private String correlationId = null; + + @JsonProperty("domain") + private String domain = null; + + @JsonProperty("title") + private String title = null; + + @JsonProperty("description") + private String description = null; + + @JsonProperty("priority") + private String priority = null; + + @JsonProperty("timeOcurred") + private Date timeOcurred = null; + + @JsonProperty("event") + private ProductStateChangeEventPayload event = null; + + public ProductStateChangeEvent id(String id) { + this.id = id; + return this; + } + + /** + * Identifier of the Process flow + * @return id + **/ + @Schema(description = "Identifier of the Process flow") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public ProductStateChangeEvent href(String href) { + this.href = href; + return this; + } + + /** + * Reference of the ProcessFlow + * @return href + **/ + @Schema(description = "Reference of the ProcessFlow") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public ProductStateChangeEvent eventId(String eventId) { + this.eventId = eventId; + return this; + } + + /** + * The identifier of the notification. + * @return eventId + **/ + @Schema(description = "The identifier of the notification.") + @NotNull + + public String getEventId() { + return eventId; + } + + public void setEventId(String eventId) { + this.eventId = eventId; + } + + public ProductStateChangeEvent eventTime(Date eventTime) { + this.eventTime = eventTime; + return this; + } + + /** + * Time of the event occurrence. + * @return eventTime + **/ + @Schema(description = "Time of the event occurrence.") + @NotNull + + @Valid + public Date getEventTime() { + return eventTime; + } + + public void setEventTime(Date eventTime) { + this.eventTime = eventTime; + } + + public ProductStateChangeEvent eventType(String eventType) { + this.eventType = eventType; + return this; + } + + /** + * The type of the notification. + * @return eventType + **/ + @Schema(description = "The type of the notification.") + @NotNull + + public String getEventType() { + return eventType; + } + + public void setEventType(String eventType) { + this.eventType = eventType; + } + + public ProductStateChangeEvent correlationId(String correlationId) { + this.correlationId = correlationId; + return this; + } + + /** + * The correlation id for this event. + * @return correlationId + **/ + @Schema(description = "The correlation id for this event.") + @NotNull + + public String getCorrelationId() { + return correlationId; + } + + public void setCorrelationId(String correlationId) { + this.correlationId = correlationId; + } + + public ProductStateChangeEvent domain(String domain) { + this.domain = domain; + return this; + } + + /** + * The domain of the event. + * @return domain + **/ + @Schema(description = "The domain of the event.") + @NotNull + + public String getDomain() { + return domain; + } + + public void setDomain(String domain) { + this.domain = domain; + } + + public ProductStateChangeEvent title(String title) { + this.title = title; + return this; + } + + /** + * The title of the event. + * @return title + **/ + @Schema(description = "The title of the event.") + @NotNull + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public ProductStateChangeEvent description(String description) { + this.description = description; + return this; + } + + /** + * An explnatory of the event. + * @return description + **/ + @Schema(description = "An explnatory of the event.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductStateChangeEvent priority(String priority) { + this.priority = priority; + return this; + } + + /** + * A priority. + * @return priority + **/ + @Schema(description = "A priority.") + @NotNull + + public String getPriority() { + return priority; + } + + public void setPriority(String priority) { + this.priority = priority; + } + + public ProductStateChangeEvent timeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + return this; + } + + /** + * The time the event occured. + * @return timeOcurred + **/ + @Schema(description = "The time the event occured.") + @NotNull + + @Valid + public Date getTimeOcurred() { + return timeOcurred; + } + + public void setTimeOcurred(Date timeOcurred) { + this.timeOcurred = timeOcurred; + } + + public ProductStateChangeEvent event(ProductStateChangeEventPayload event) { + this.event = event; + return this; + } + + /** + * Get event + * @return event + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductStateChangeEventPayload getEvent() { + return event; + } + + public void setEvent(ProductStateChangeEventPayload event) { + this.event = event; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductStateChangeEvent productStateChangeEvent = (ProductStateChangeEvent) o; + return Objects.equals(this.id, productStateChangeEvent.id) && + Objects.equals(this.href, productStateChangeEvent.href) && + Objects.equals(this.eventId, productStateChangeEvent.eventId) && + Objects.equals(this.eventTime, productStateChangeEvent.eventTime) && + Objects.equals(this.eventType, productStateChangeEvent.eventType) && + Objects.equals(this.correlationId, productStateChangeEvent.correlationId) && + Objects.equals(this.domain, productStateChangeEvent.domain) && + Objects.equals(this.title, productStateChangeEvent.title) && + Objects.equals(this.description, productStateChangeEvent.description) && + Objects.equals(this.priority, productStateChangeEvent.priority) && + Objects.equals(this.timeOcurred, productStateChangeEvent.timeOcurred) && + Objects.equals(this.event, productStateChangeEvent.event); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, eventId, eventTime, eventType, correlationId, domain, title, description, priority, timeOcurred, event); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductStateChangeEvent {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" eventId: ").append(toIndentedString(eventId)).append("\n"); + sb.append(" eventTime: ").append(toIndentedString(eventTime)).append("\n"); + sb.append(" eventType: ").append(toIndentedString(eventType)).append("\n"); + sb.append(" correlationId: ").append(toIndentedString(correlationId)).append("\n"); + sb.append(" domain: ").append(toIndentedString(domain)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" priority: ").append(toIndentedString(priority)).append("\n"); + sb.append(" timeOcurred: ").append(toIndentedString(timeOcurred)).append("\n"); + sb.append(" event: ").append(toIndentedString(event)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStateChangeEventPayload.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStateChangeEventPayload.java new file mode 100644 index 0000000000000000000000000000000000000000..a492a3f7a49db34af09a948afd38d280f77316c7 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStateChangeEventPayload.java @@ -0,0 +1,81 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * The event data structure + */ +@Schema(description = "The event data structure") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductStateChangeEventPayload { + @JsonProperty("product") + private Product product = null; + + public ProductStateChangeEventPayload product(Product product) { + this.product = product; + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + + @Valid + public Product getProduct() { + return product; + } + + public void setProduct(Product product) { + this.product = product; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductStateChangeEventPayload productStateChangeEventPayload = (ProductStateChangeEventPayload) o; + return Objects.equals(this.product, productStateChangeEventPayload.product); + } + + @Override + public int hashCode() { + return Objects.hash(product); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductStateChangeEventPayload {\n"); + + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStatusType.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStatusType.java new file mode 100644 index 0000000000000000000000000000000000000000..3623cfc29e09082713301d1da96fa59c5cfb7c55 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductStatusType.java @@ -0,0 +1,40 @@ +package org.etsi.osl.tmf.pim637.model; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** + * Possible values for the status of the product + */ +public enum ProductStatusType { + CREATED("created"), + PENDINGACTIVE("pendingActive"), + CANCELLED("cancelled"), + ACTIVE("active"), + PENDINGTERMINATE("pendingTerminate"), + TERMINATED("terminated"), + SUSPENDED("suspended"), + ABORTED_("aborted "); + + private String value; + + ProductStatusType(String value) { + this.value = value; + } + + @Override + @JsonValue + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static ProductStatusType fromValue(String text) { + for (ProductStatusType b : ProductStatusType.values()) { + if (String.valueOf(b.value).equals(text)) { + return b; + } + } + return null; + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductTerm.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductTerm.java new file mode 100644 index 0000000000000000000000000000000000000000..be680b159b57a8a502844b3ffb8341f1b06c4c55 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductTerm.java @@ -0,0 +1,233 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Quantity; +import org.etsi.osl.tmf.common.model.TimePeriod; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +/** + * Description of a productTerm linked to this product. This represent a commitment with a duration + */ +@Schema(description = "Description of a productTerm linked to this product. This represent a commitment with a duration") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductTerm { + @JsonProperty("description") + private String description = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("duration") + private Quantity duration = null; + + @JsonProperty("validFor") + private TimePeriod validFor = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public ProductTerm description(String description) { + this.description = description; + return this; + } + + /** + * Description of the productTerm + * @return description + **/ + @Schema(description = "Description of the productTerm") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductTerm name(String name) { + this.name = name; + return this; + } + + /** + * Name of the productTerm + * @return name + **/ + @Schema(description = "Name of the productTerm") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductTerm duration(Quantity duration) { + this.duration = duration; + return this; + } + + /** + * Get duration + * @return duration + **/ + @Schema(description = "") + @NotNull + + @Valid + public Quantity getDuration() { + return duration; + } + + public void setDuration(Quantity duration) { + this.duration = duration; + } + + public ProductTerm validFor(TimePeriod validFor) { + this.validFor = validFor; + return this; + } + + /** + * Get validFor + * @return validFor + **/ + @Schema(description = "") + @NotNull + + @Valid + public TimePeriod getValidFor() { + return validFor; + } + + public void setValidFor(TimePeriod validFor) { + this.validFor = validFor; + } + + public ProductTerm _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductTerm _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductTerm _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductTerm productTerm = (ProductTerm) o; + return Objects.equals(this.description, productTerm.description) && + Objects.equals(this.name, productTerm.name) && + Objects.equals(this.duration, productTerm.duration) && + Objects.equals(this.validFor, productTerm.validFor) && + Objects.equals(this._atBaseType, productTerm._atBaseType) && + Objects.equals(this._atSchemaLocation, productTerm._atSchemaLocation) && + Objects.equals(this._atType, productTerm._atType); + } + + @Override + public int hashCode() { + return Objects.hash(description, name, duration, validFor, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductTerm {\n"); + + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" duration: ").append(toIndentedString(duration)).append("\n"); + sb.append(" validFor: ").append(toIndentedString(validFor)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/ProductUpdate.java b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductUpdate.java new file mode 100644 index 0000000000000000000000000000000000000000..a83911732416c5c821162012f837590aea298399 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/ProductUpdate.java @@ -0,0 +1,819 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.service.Characteristic; +import org.etsi.osl.tmf.common.model.service.ResourceRef; +import org.etsi.osl.tmf.common.model.service.ServiceRef; +import org.etsi.osl.tmf.po622.model.AgreementItemRef; +import org.etsi.osl.tmf.prm669.model.RelatedParty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; + +/** + * A product offering procured by a customer or other interested party playing a party role. A product is realized as one or more service(s) and / or resource(s). Skipped properties: id,href + */ +@Schema(description = "A product offering procured by a customer or other interested party playing a party role. A product is realized as one or more service(s) and / or resource(s). Skipped properties: id,href") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class ProductUpdate { + @JsonProperty("description") + private String description = null; + + @JsonProperty("isBundle") + private Boolean isBundle = null; + + @JsonProperty("isCustomerVisible") + private Boolean isCustomerVisible = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("orderDate") + private Date orderDate = null; + + @JsonProperty("productSerialNumber") + private String productSerialNumber = null; + + @JsonProperty("startDate") + private Date startDate = null; + + @JsonProperty("terminationDate") + private Date terminationDate = null; + + @JsonProperty("agreement") + @Valid + private List<AgreementItemRef> agreement = null; + + @JsonProperty("billingAccount") + private BillingAccountRef billingAccount = null; + + @JsonProperty("place") + @Valid + private List<RelatedPlaceRefOrValue> place = null; + + @JsonProperty("product") + @Valid + private List<ProductRefOrValue> product = null; + + @JsonProperty("productCharacteristic") + @Valid + private List<Characteristic> productCharacteristic = null; + + @JsonProperty("productOffering") + private ProductOfferingRef productOffering = null; + + @JsonProperty("productOrderItem") + @Valid + private List<RelatedProductOrderItem> productOrderItem = null; + + @JsonProperty("productPrice") + @Valid + private List<ProductPrice> productPrice = null; + + @JsonProperty("productRelationship") + @Valid + private List<ProductRelationship> productRelationship = null; + + @JsonProperty("productSpecification") + private ProductSpecificationRef productSpecification = null; + + @JsonProperty("productTerm") + @Valid + private List<ProductTerm> productTerm = null; + + @JsonProperty("realizingResource") + @Valid + private List<ResourceRef> realizingResource = null; + + @JsonProperty("realizingService") + @Valid + private List<ServiceRef> realizingService = null; + + @JsonProperty("relatedParty") + @Valid + private List<RelatedParty> relatedParty = null; + + @JsonProperty("status") + private ProductStatusType status = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public ProductUpdate description(String description) { + this.description = description; + return this; + } + + /** + * Is the description of the product. It could be copied from the description of the Product Offering. + * @return description + **/ + @Schema(description = "Is the description of the product. It could be copied from the description of the Product Offering.") + @NotNull + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public ProductUpdate isBundle(Boolean isBundle) { + this.isBundle = isBundle; + return this; + } + + /** + * If true, the product is a ProductBundle which is an instantiation of a BundledProductOffering. If false, the product is a ProductComponent which is an instantiation of a SimpleProductOffering. + * @return isBundle + **/ + @Schema(description = "If true, the product is a ProductBundle which is an instantiation of a BundledProductOffering. If false, the product is a ProductComponent which is an instantiation of a SimpleProductOffering.") + @NotNull + + public Boolean isIsBundle() { + return isBundle; + } + + public void setIsBundle(Boolean isBundle) { + this.isBundle = isBundle; + } + + public ProductUpdate isCustomerVisible(Boolean isCustomerVisible) { + this.isCustomerVisible = isCustomerVisible; + return this; + } + + /** + * If true, the product is visible by the customer. + * @return isCustomerVisible + **/ + @Schema(description = "If true, the product is visible by the customer.") + @NotNull + + public Boolean isIsCustomerVisible() { + return isCustomerVisible; + } + + public void setIsCustomerVisible(Boolean isCustomerVisible) { + this.isCustomerVisible = isCustomerVisible; + } + + public ProductUpdate name(String name) { + this.name = name; + return this; + } + + /** + * Name of the product. It could be the same as the name of the product offering + * @return name + **/ + @Schema(description = "Name of the product. It could be the same as the name of the product offering") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public ProductUpdate orderDate(Date orderDate) { + this.orderDate = orderDate; + return this; + } + + /** + * Is the date when the product was ordered + * @return orderDate + **/ + @Schema(description = "Is the date when the product was ordered") + @NotNull + + @Valid + public Date getOrderDate() { + return orderDate; + } + + public void setOrderDate(Date orderDate) { + this.orderDate = orderDate; + } + + public ProductUpdate productSerialNumber(String productSerialNumber) { + this.productSerialNumber = productSerialNumber; + return this; + } + + /** + * Is the serial number for the product. This is typically applicable to tangible products e.g. Broadband Router. + * @return productSerialNumber + **/ + @Schema(description = "Is the serial number for the product. This is typically applicable to tangible products e.g. Broadband Router.") + @NotNull + + public String getProductSerialNumber() { + return productSerialNumber; + } + + public void setProductSerialNumber(String productSerialNumber) { + this.productSerialNumber = productSerialNumber; + } + + public ProductUpdate startDate(Date startDate) { + this.startDate = startDate; + return this; + } + + /** + * Is the date from which the product starts + * @return startDate + **/ + @Schema(description = "Is the date from which the product starts") + @NotNull + + @Valid + public Date getStartDate() { + return startDate; + } + + public void setStartDate(Date startDate) { + this.startDate = startDate; + } + + public ProductUpdate terminationDate(Date terminationDate) { + this.terminationDate = terminationDate; + return this; + } + + /** + * Is the date when the product was terminated + * @return terminationDate + **/ + @Schema(description = "Is the date when the product was terminated") + @NotNull + + @Valid + public Date getTerminationDate() { + return terminationDate; + } + + public void setTerminationDate(Date terminationDate) { + this.terminationDate = terminationDate; + } + + public ProductUpdate agreement(List<AgreementItemRef> agreement) { + this.agreement = agreement; + return this; + } + + public ProductUpdate addAgreementItem(AgreementItemRef agreementItem) { + if (this.agreement == null) { + this.agreement = new ArrayList<AgreementItemRef>(); + } + this.agreement.add(agreementItem); + return this; + } + + /** + * Get agreement + * @return agreement + **/ + @Schema(description = "") + @NotNull + @Valid + public List<AgreementItemRef> getAgreement() { + return agreement; + } + + public void setAgreement(List<AgreementItemRef> agreement) { + this.agreement = agreement; + } + + public ProductUpdate billingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + return this; + } + + /** + * Get billingAccount + * @return billingAccount + **/ + @Schema(description = "") + @NotNull + + @Valid + public BillingAccountRef getBillingAccount() { + return billingAccount; + } + + public void setBillingAccount(BillingAccountRef billingAccount) { + this.billingAccount = billingAccount; + } + + public ProductUpdate place(List<RelatedPlaceRefOrValue> place) { + this.place = place; + return this; + } + + public ProductUpdate addPlaceItem(RelatedPlaceRefOrValue placeItem) { + if (this.place == null) { + this.place = new ArrayList<RelatedPlaceRefOrValue>(); + } + this.place.add(placeItem); + return this; + } + + /** + * Get place + * @return place + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedPlaceRefOrValue> getPlace() { + return place; + } + + public void setPlace(List<RelatedPlaceRefOrValue> place) { + this.place = place; + } + + public ProductUpdate product(List<ProductRefOrValue> product) { + this.product = product; + return this; + } + + public ProductUpdate addProductItem(ProductRefOrValue productItem) { + if (this.product == null) { + this.product = new ArrayList<ProductRefOrValue>(); + } + this.product.add(productItem); + return this; + } + + /** + * Get product + * @return product + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductRefOrValue> getProduct() { + return product; + } + + public void setProduct(List<ProductRefOrValue> product) { + this.product = product; + } + + public ProductUpdate productCharacteristic(List<Characteristic> productCharacteristic) { + this.productCharacteristic = productCharacteristic; + return this; + } + + public ProductUpdate addProductCharacteristicItem(Characteristic productCharacteristicItem) { + if (this.productCharacteristic == null) { + this.productCharacteristic = new ArrayList<Characteristic>(); + } + this.productCharacteristic.add(productCharacteristicItem); + return this; + } + + /** + * Get productCharacteristic + * @return productCharacteristic + **/ + @Schema(description = "") + @NotNull + @Valid + public List<Characteristic> getProductCharacteristic() { + return productCharacteristic; + } + + public void setProductCharacteristic(List<Characteristic> productCharacteristic) { + this.productCharacteristic = productCharacteristic; + } + + public ProductUpdate productOffering(ProductOfferingRef productOffering) { + this.productOffering = productOffering; + return this; + } + + /** + * Get productOffering + * @return productOffering + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductOfferingRef getProductOffering() { + return productOffering; + } + + public void setProductOffering(ProductOfferingRef productOffering) { + this.productOffering = productOffering; + } + + public ProductUpdate productOrderItem(List<RelatedProductOrderItem> productOrderItem) { + this.productOrderItem = productOrderItem; + return this; + } + + public ProductUpdate addProductOrderItemItem(RelatedProductOrderItem productOrderItemItem) { + if (this.productOrderItem == null) { + this.productOrderItem = new ArrayList<RelatedProductOrderItem>(); + } + this.productOrderItem.add(productOrderItemItem); + return this; + } + + /** + * Get productOrderItem + * @return productOrderItem + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedProductOrderItem> getProductOrderItem() { + return productOrderItem; + } + + public void setProductOrderItem(List<RelatedProductOrderItem> productOrderItem) { + this.productOrderItem = productOrderItem; + } + + public ProductUpdate productPrice(List<ProductPrice> productPrice) { + this.productPrice = productPrice; + return this; + } + + public ProductUpdate addProductPriceItem(ProductPrice productPriceItem) { + if (this.productPrice == null) { + this.productPrice = new ArrayList<ProductPrice>(); + } + this.productPrice.add(productPriceItem); + return this; + } + + /** + * Get productPrice + * @return productPrice + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductPrice> getProductPrice() { + return productPrice; + } + + public void setProductPrice(List<ProductPrice> productPrice) { + this.productPrice = productPrice; + } + + public ProductUpdate productRelationship(List<ProductRelationship> productRelationship) { + this.productRelationship = productRelationship; + return this; + } + + public ProductUpdate addProductRelationshipItem(ProductRelationship productRelationshipItem) { + if (this.productRelationship == null) { + this.productRelationship = new ArrayList<ProductRelationship>(); + } + this.productRelationship.add(productRelationshipItem); + return this; + } + + /** + * Get productRelationship + * @return productRelationship + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductRelationship> getProductRelationship() { + return productRelationship; + } + + public void setProductRelationship(List<ProductRelationship> productRelationship) { + this.productRelationship = productRelationship; + } + + public ProductUpdate productSpecification(ProductSpecificationRef productSpecification) { + this.productSpecification = productSpecification; + return this; + } + + /** + * Get productSpecification + * @return productSpecification + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductSpecificationRef getProductSpecification() { + return productSpecification; + } + + public void setProductSpecification(ProductSpecificationRef productSpecification) { + this.productSpecification = productSpecification; + } + + public ProductUpdate productTerm(List<ProductTerm> productTerm) { + this.productTerm = productTerm; + return this; + } + + public ProductUpdate addProductTermItem(ProductTerm productTermItem) { + if (this.productTerm == null) { + this.productTerm = new ArrayList<ProductTerm>(); + } + this.productTerm.add(productTermItem); + return this; + } + + /** + * Get productTerm + * @return productTerm + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ProductTerm> getProductTerm() { + return productTerm; + } + + public void setProductTerm(List<ProductTerm> productTerm) { + this.productTerm = productTerm; + } + + public ProductUpdate realizingResource(List<ResourceRef> realizingResource) { + this.realizingResource = realizingResource; + return this; + } + + public ProductUpdate addRealizingResourceItem(ResourceRef realizingResourceItem) { + if (this.realizingResource == null) { + this.realizingResource = new ArrayList<ResourceRef>(); + } + this.realizingResource.add(realizingResourceItem); + return this; + } + + /** + * Get realizingResource + * @return realizingResource + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ResourceRef> getRealizingResource() { + return realizingResource; + } + + public void setRealizingResource(List<ResourceRef> realizingResource) { + this.realizingResource = realizingResource; + } + + public ProductUpdate realizingService(List<ServiceRef> realizingService) { + this.realizingService = realizingService; + return this; + } + + public ProductUpdate addRealizingServiceItem(ServiceRef realizingServiceItem) { + if (this.realizingService == null) { + this.realizingService = new ArrayList<ServiceRef>(); + } + this.realizingService.add(realizingServiceItem); + return this; + } + + /** + * Get realizingService + * @return realizingService + **/ + @Schema(description = "") + @NotNull + @Valid + public List<ServiceRef> getRealizingService() { + return realizingService; + } + + public void setRealizingService(List<ServiceRef> realizingService) { + this.realizingService = realizingService; + } + + public ProductUpdate relatedParty(List<RelatedParty> relatedParty) { + this.relatedParty = relatedParty; + return this; + } + + public ProductUpdate addRelatedPartyItem(RelatedParty relatedPartyItem) { + if (this.relatedParty == null) { + this.relatedParty = new ArrayList<RelatedParty>(); + } + this.relatedParty.add(relatedPartyItem); + return this; + } + + /** + * Get relatedParty + * @return relatedParty + **/ + @Schema(description = "") + @NotNull + @Valid + public List<RelatedParty> getRelatedParty() { + return relatedParty; + } + + public void setRelatedParty(List<RelatedParty> relatedParty) { + this.relatedParty = relatedParty; + } + + public ProductUpdate status(ProductStatusType status) { + this.status = status; + return this; + } + + /** + * Get status + * @return status + **/ + @Schema(description = "") + @NotNull + + @Valid + public ProductStatusType getStatus() { + return status; + } + + public void setStatus(ProductStatusType status) { + this.status = status; + } + + public ProductUpdate _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public ProductUpdate _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public ProductUpdate _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ProductUpdate productUpdate = (ProductUpdate) o; + return Objects.equals(this.description, productUpdate.description) && + Objects.equals(this.isBundle, productUpdate.isBundle) && + Objects.equals(this.isCustomerVisible, productUpdate.isCustomerVisible) && + Objects.equals(this.name, productUpdate.name) && + Objects.equals(this.orderDate, productUpdate.orderDate) && + Objects.equals(this.productSerialNumber, productUpdate.productSerialNumber) && + Objects.equals(this.startDate, productUpdate.startDate) && + Objects.equals(this.terminationDate, productUpdate.terminationDate) && + Objects.equals(this.agreement, productUpdate.agreement) && + Objects.equals(this.billingAccount, productUpdate.billingAccount) && + Objects.equals(this.place, productUpdate.place) && + Objects.equals(this.product, productUpdate.product) && + Objects.equals(this.productCharacteristic, productUpdate.productCharacteristic) && + Objects.equals(this.productOffering, productUpdate.productOffering) && + Objects.equals(this.productOrderItem, productUpdate.productOrderItem) && + Objects.equals(this.productPrice, productUpdate.productPrice) && + Objects.equals(this.productRelationship, productUpdate.productRelationship) && + Objects.equals(this.productSpecification, productUpdate.productSpecification) && + Objects.equals(this.productTerm, productUpdate.productTerm) && + Objects.equals(this.realizingResource, productUpdate.realizingResource) && + Objects.equals(this.realizingService, productUpdate.realizingService) && + Objects.equals(this.relatedParty, productUpdate.relatedParty) && + Objects.equals(this.status, productUpdate.status) && + Objects.equals(this._atBaseType, productUpdate._atBaseType) && + Objects.equals(this._atSchemaLocation, productUpdate._atSchemaLocation) && + Objects.equals(this._atType, productUpdate._atType); + } + + @Override + public int hashCode() { + return Objects.hash(description, isBundle, isCustomerVisible, name, orderDate, productSerialNumber, startDate, terminationDate, agreement, billingAccount, place, product, productCharacteristic, productOffering, productOrderItem, productPrice, productRelationship, productSpecification, productTerm, realizingResource, realizingService, relatedParty, status, _atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductUpdate {\n"); + + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isBundle: ").append(toIndentedString(isBundle)).append("\n"); + sb.append(" isCustomerVisible: ").append(toIndentedString(isCustomerVisible)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" orderDate: ").append(toIndentedString(orderDate)).append("\n"); + sb.append(" productSerialNumber: ").append(toIndentedString(productSerialNumber)).append("\n"); + sb.append(" startDate: ").append(toIndentedString(startDate)).append("\n"); + sb.append(" terminationDate: ").append(toIndentedString(terminationDate)).append("\n"); + sb.append(" agreement: ").append(toIndentedString(agreement)).append("\n"); + sb.append(" billingAccount: ").append(toIndentedString(billingAccount)).append("\n"); + sb.append(" place: ").append(toIndentedString(place)).append("\n"); + sb.append(" product: ").append(toIndentedString(product)).append("\n"); + sb.append(" productCharacteristic: ").append(toIndentedString(productCharacteristic)).append("\n"); + sb.append(" productOffering: ").append(toIndentedString(productOffering)).append("\n"); + sb.append(" productOrderItem: ").append(toIndentedString(productOrderItem)).append("\n"); + sb.append(" productPrice: ").append(toIndentedString(productPrice)).append("\n"); + sb.append(" productRelationship: ").append(toIndentedString(productRelationship)).append("\n"); + sb.append(" productSpecification: ").append(toIndentedString(productSpecification)).append("\n"); + sb.append(" productTerm: ").append(toIndentedString(productTerm)).append("\n"); + sb.append(" realizingResource: ").append(toIndentedString(realizingResource)).append("\n"); + sb.append(" realizingService: ").append(toIndentedString(realizingService)).append("\n"); + sb.append(" relatedParty: ").append(toIndentedString(relatedParty)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/RelatedPlaceRefOrValue.java b/src/main/java/org/etsi/osl/tmf/pim637/model/RelatedPlaceRefOrValue.java new file mode 100644 index 0000000000000000000000000000000000000000..7aebfcb217de1f70f0ccc9eab74657b219cad427 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/RelatedPlaceRefOrValue.java @@ -0,0 +1,254 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * Related Entity reference. A related place defines a place described by reference or by value linked to a specific entity. The polymorphic attributes @type, @schemaLocation & @referredType are related to the place entity and not the RelatedPlaceRefOrValue class itself + */ +@Schema(description = "Related Entity reference. A related place defines a place described by reference or by value linked to a specific entity. The polymorphic attributes @type, @schemaLocation & @referredType are related to the place entity and not the RelatedPlaceRefOrValue class itself") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class RelatedPlaceRefOrValue { + @JsonProperty("id") + private String id = null; + + @JsonProperty("href") + private String href = null; + + @JsonProperty("name") + private String name = null; + + @JsonProperty("role") + private String role = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public RelatedPlaceRefOrValue id(String id) { + this.id = id; + return this; + } + + /** + * Unique identifier of the place + * @return id + **/ + @Schema(description = "Unique identifier of the place") + @NotNull + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public RelatedPlaceRefOrValue href(String href) { + this.href = href; + return this; + } + + /** + * Unique reference of the place + * @return href + **/ + @Schema(description = "Unique reference of the place") + @NotNull + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public RelatedPlaceRefOrValue name(String name) { + this.name = name; + return this; + } + + /** + * A user-friendly name for the place, such as [Paris Store], [London Store], [Main Home] + * @return name + **/ + @Schema(description = "A user-friendly name for the place, such as [Paris Store], [London Store], [Main Home]") + @NotNull + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public RelatedPlaceRefOrValue role(String role) { + this.role = role; + return this; + } + + /** + * Get role + * @return role + **/ + @Schema(required = true, description = "") + @NotNull + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public RelatedPlaceRefOrValue _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public RelatedPlaceRefOrValue _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public RelatedPlaceRefOrValue _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public RelatedPlaceRefOrValue _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RelatedPlaceRefOrValue relatedPlaceRefOrValue = (RelatedPlaceRefOrValue) o; + return Objects.equals(this.id, relatedPlaceRefOrValue.id) && + Objects.equals(this.href, relatedPlaceRefOrValue.href) && + Objects.equals(this.name, relatedPlaceRefOrValue.name) && + Objects.equals(this.role, relatedPlaceRefOrValue.role) && + Objects.equals(this._atBaseType, relatedPlaceRefOrValue._atBaseType) && + Objects.equals(this._atSchemaLocation, relatedPlaceRefOrValue._atSchemaLocation) && + Objects.equals(this._atType, relatedPlaceRefOrValue._atType) && + Objects.equals(this._atReferredType, relatedPlaceRefOrValue._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(id, href, name, role, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class RelatedPlaceRefOrValue {\n"); + + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" href: ").append(toIndentedString(href)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" role: ").append(toIndentedString(role)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/RelatedProductOrderItem.java b/src/main/java/org/etsi/osl/tmf/pim637/model/RelatedProductOrderItem.java new file mode 100644 index 0000000000000000000000000000000000000000..3e52de617d3a47570713f4953cae2e46219621fb --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/RelatedProductOrderItem.java @@ -0,0 +1,279 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * RelatedProductOrderItem (ProductOrder item) .The product order item which triggered product creation/change/termination. + */ +@Schema(description = "RelatedProductOrderItem (ProductOrder item) .The product order item which triggered product creation/change/termination.") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class RelatedProductOrderItem { + @JsonProperty("orderItemAction") + private String orderItemAction = null; + + @JsonProperty("orderItemId") + private String orderItemId = null; + + @JsonProperty("productOrderHref") + private String productOrderHref = null; + + @JsonProperty("productOrderId") + private String productOrderId = null; + + @JsonProperty("role") + private String role = null; + + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + @JsonProperty("@referredType") + private String _atReferredType = null; + + public RelatedProductOrderItem orderItemAction(String orderItemAction) { + this.orderItemAction = orderItemAction; + return this; + } + + /** + * Action of the order item for this product + * @return orderItemAction + **/ + @Schema(description = "Action of the order item for this product") + @NotNull + + public String getOrderItemAction() { + return orderItemAction; + } + + public void setOrderItemAction(String orderItemAction) { + this.orderItemAction = orderItemAction; + } + + public RelatedProductOrderItem orderItemId(String orderItemId) { + this.orderItemId = orderItemId; + return this; + } + + /** + * Identifier of the order item where the product was managed + * @return orderItemId + **/ + @Schema(required = true, description = "Identifier of the order item where the product was managed") + @NotNull + + public String getOrderItemId() { + return orderItemId; + } + + public void setOrderItemId(String orderItemId) { + this.orderItemId = orderItemId; + } + + public RelatedProductOrderItem productOrderHref(String productOrderHref) { + this.productOrderHref = productOrderHref; + return this; + } + + /** + * Reference of the related entity. + * @return productOrderHref + **/ + @Schema(description = "Reference of the related entity.") + @NotNull + + public String getProductOrderHref() { + return productOrderHref; + } + + public void setProductOrderHref(String productOrderHref) { + this.productOrderHref = productOrderHref; + } + + public RelatedProductOrderItem productOrderId(String productOrderId) { + this.productOrderId = productOrderId; + return this; + } + + /** + * Unique identifier of a related entity. + * @return productOrderId + **/ + @Schema(required = true, description = "Unique identifier of a related entity.") + @NotNull + + public String getProductOrderId() { + return productOrderId; + } + + public void setProductOrderId(String productOrderId) { + this.productOrderId = productOrderId; + } + + public RelatedProductOrderItem role(String role) { + this.role = role; + return this; + } + + /** + * role of the product order item for this product + * @return role + **/ + @Schema(description = "role of the product order item for this product") + @NotNull + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public RelatedProductOrderItem _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public RelatedProductOrderItem _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * A URI to a JSON-Schema file that defines additional attributes and relationships + * @return _atSchemaLocation + **/ + @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public RelatedProductOrderItem _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * When sub-classing, this defines the sub-class entity name + * @return _atType + **/ + @Schema(description = "When sub-classing, this defines the sub-class entity name") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + public RelatedProductOrderItem _atReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + return this; + } + + /** + * The actual type of the target instance when needed for disambiguation. + * @return _atReferredType + **/ + @Schema(description = "The actual type of the target instance when needed for disambiguation.") + @NotNull + + public String getAtReferredType() { + return _atReferredType; + } + + public void setAtReferredType(String _atReferredType) { + this._atReferredType = _atReferredType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RelatedProductOrderItem relatedProductOrderItem = (RelatedProductOrderItem) o; + return Objects.equals(this.orderItemAction, relatedProductOrderItem.orderItemAction) && + Objects.equals(this.orderItemId, relatedProductOrderItem.orderItemId) && + Objects.equals(this.productOrderHref, relatedProductOrderItem.productOrderHref) && + Objects.equals(this.productOrderId, relatedProductOrderItem.productOrderId) && + Objects.equals(this.role, relatedProductOrderItem.role) && + Objects.equals(this._atBaseType, relatedProductOrderItem._atBaseType) && + Objects.equals(this._atSchemaLocation, relatedProductOrderItem._atSchemaLocation) && + Objects.equals(this._atType, relatedProductOrderItem._atType) && + Objects.equals(this._atReferredType, relatedProductOrderItem._atReferredType); + } + + @Override + public int hashCode() { + return Objects.hash(orderItemAction, orderItemId, productOrderHref, productOrderId, role, _atBaseType, _atSchemaLocation, _atType, _atReferredType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class RelatedProductOrderItem {\n"); + + sb.append(" orderItemAction: ").append(toIndentedString(orderItemAction)).append("\n"); + sb.append(" orderItemId: ").append(toIndentedString(orderItemId)).append("\n"); + sb.append(" productOrderHref: ").append(toIndentedString(productOrderHref)).append("\n"); + sb.append(" productOrderId: ").append(toIndentedString(productOrderId)).append("\n"); + sb.append(" role: ").append(toIndentedString(role)).append("\n"); + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append(" _atReferredType: ").append(toIndentedString(_atReferredType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/pim637/model/TargetProductSchema.java b/src/main/java/org/etsi/osl/tmf/pim637/model/TargetProductSchema.java new file mode 100644 index 0000000000000000000000000000000000000000..c0659e59482c6bc65814294b46cae1aa99d396e6 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pim637/model/TargetProductSchema.java @@ -0,0 +1,129 @@ +package org.etsi.osl.tmf.pim637.model; + +import java.util.Objects; +import com.fasterxml.jackson.annotation.JsonProperty; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; + +/** + * The reference object to the schema and type of target product which is described by product specification + */ +@Schema(description = "The reference object to the schema and type of target product which is described by product specification") +@Validated +@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2024-08-04T00:27:07.324017400+03:00[Europe/Athens]") + + +public class TargetProductSchema { + @JsonProperty("@baseType") + private String _atBaseType = null; + + @JsonProperty("@schemaLocation") + private String _atSchemaLocation = null; + + @JsonProperty("@type") + private String _atType = null; + + public TargetProductSchema _atBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + return this; + } + + /** + * When sub-classing, this defines the super-class + * @return _atBaseType + **/ + @Schema(description = "When sub-classing, this defines the super-class") + @NotNull + + public String getAtBaseType() { + return _atBaseType; + } + + public void setAtBaseType(String _atBaseType) { + this._atBaseType = _atBaseType; + } + + public TargetProductSchema _atSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + return this; + } + + /** + * This field provides a link to the schema describing the target product + * @return _atSchemaLocation + **/ + @Schema(required = true, description = "This field provides a link to the schema describing the target product") + @NotNull + + public String getAtSchemaLocation() { + return _atSchemaLocation; + } + + public void setAtSchemaLocation(String _atSchemaLocation) { + this._atSchemaLocation = _atSchemaLocation; + } + + public TargetProductSchema _atType(String _atType) { + this._atType = _atType; + return this; + } + + /** + * Class type of the target product + * @return _atType + **/ + @Schema(required = true, description = "Class type of the target product") + @NotNull + + public String getAtType() { + return _atType; + } + + public void setAtType(String _atType) { + this._atType = _atType; + } + + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TargetProductSchema targetProductSchema = (TargetProductSchema) o; + return Objects.equals(this._atBaseType, targetProductSchema._atBaseType) && + Objects.equals(this._atSchemaLocation, targetProductSchema._atSchemaLocation) && + Objects.equals(this._atType, targetProductSchema._atType); + } + + @Override + public int hashCode() { + return Objects.hash(_atBaseType, _atSchemaLocation, _atType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TargetProductSchema {\n"); + + sb.append(" _atBaseType: ").append(toIndentedString(_atBaseType)).append("\n"); + sb.append(" _atSchemaLocation: ").append(toIndentedString(_atSchemaLocation)).append("\n"); + sb.append(" _atType: ").append(toIndentedString(_atType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/org/etsi/osl/tmf/po622/model/Characteristic.java b/src/main/java/org/etsi/osl/tmf/po622/model/Characteristic.java deleted file mode 100644 index d709b73f6509d496f47936f3bea84dec2350548e..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/osl/tmf/po622/model/Characteristic.java +++ /dev/null @@ -1,222 +0,0 @@ -/*- - * ========================LICENSE_START================================= - * org.etsi.osl.tmf.api - * %% - * Copyright (C) 2019 - 2021 openslice.io - * %% - * 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.etsi.osl.tmf.po622.model; - -import java.util.Objects; - -import com.fasterxml.jackson.annotation.JsonProperty; - -import org.springframework.validation.annotation.Validated; - -import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.Valid; -import jakarta.validation.constraints.NotNull; - -/** - * Describes a given characteristic of an object or entity through a name/value pair. - */ -@Schema(description = "Describes a given characteristic of an object or entity through a name/value pair.") -@Validated -@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2020-10-30T10:29:21.184964400+02:00[Europe/Athens]") -public class Characteristic { - @JsonProperty("name") - private String name = null; - - @JsonProperty("valueType") - private String valueType = null; - - @JsonProperty("value") - private Any value = null; - - @JsonProperty("@baseType") - private String baseType = null; - - @JsonProperty("@schemaLocation") - private String schemaLocation = null; - - @JsonProperty("@type") - private String type = null; - - public Characteristic name(String name) { - this.name = name; - return this; - } - - /** - * Name of the characteristic - * @return name - **/ - @Schema(description = "Name of the characteristic") - @NotNull - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Characteristic valueType(String valueType) { - this.valueType = valueType; - return this; - } - - /** - * Data type of the value of the characteristic - * @return valueType - **/ - @Schema(description = "Data type of the value of the characteristic") - - public String getValueType() { - return valueType; - } - - public void setValueType(String valueType) { - this.valueType = valueType; - } - - public Characteristic value(Any value) { - this.value = value; - return this; - } - - /** - * Get value - * @return value - **/ - @Schema(description = "") - @NotNull - - @Valid - public Any getValue() { - return value; - } - - public void setValue(Any value) { - this.value = value; - } - - public Characteristic baseType(String baseType) { - this.baseType = baseType; - return this; - } - - /** - * When sub-classing, this defines the super-class - * @return baseType - **/ - @Schema(description = "When sub-classing, this defines the super-class") - - public String getAtBaseType() { - return baseType; - } - - public void setAtBaseType(String baseType) { - this.baseType = baseType; - } - - public Characteristic schemaLocation(String schemaLocation) { - this.schemaLocation = schemaLocation; - return this; - } - - /** - * A URI to a JSON-Schema file that defines additional attributes and relationships - * @return schemaLocation - **/ - @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") - - public String getAtSchemaLocation() { - return schemaLocation; - } - - public void setAtSchemaLocation(String schemaLocation) { - this.schemaLocation = schemaLocation; - } - - public Characteristic type(String type) { - this.type = type; - return this; - } - - /** - * When sub-classing, this defines the sub-class entity name - * @return type - **/ - @Schema(description = "When sub-classing, this defines the sub-class entity name") - - public String getAtType() { - return type; - } - - public void setAtType(String type) { - this.type = type; - } - - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Characteristic characteristic = (Characteristic) o; - return Objects.equals(this.name, characteristic.name) && - Objects.equals(this.valueType, characteristic.valueType) && - Objects.equals(this.value, characteristic.value) && - Objects.equals(this.baseType, characteristic.baseType) && - Objects.equals(this.schemaLocation, characteristic.schemaLocation) && - Objects.equals(this.type, characteristic.type); - } - - @Override - public int hashCode() { - return Objects.hash(name, valueType, value, baseType, schemaLocation, type); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Characteristic {\n"); - - sb.append(" name: ").append(toIndentedString(name)).append("\n"); - sb.append(" valueType: ").append(toIndentedString(valueType)).append("\n"); - sb.append(" value: ").append(toIndentedString(value)).append("\n"); - sb.append(" baseType: ").append(toIndentedString(baseType)).append("\n"); - sb.append(" schemaLocation: ").append(toIndentedString(schemaLocation)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(java.lang.Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} diff --git a/src/main/java/org/etsi/osl/tmf/po622/model/Product.java b/src/main/java/org/etsi/osl/tmf/po622/model/Product.java index ee4c02bd2fe8e7b724a442d82d235c4929d458a0..30ee6d17d80e572f8260c684e5c1a6b37a7ae864 100644 --- a/src/main/java/org/etsi/osl/tmf/po622/model/Product.java +++ b/src/main/java/org/etsi/osl/tmf/po622/model/Product.java @@ -25,6 +25,7 @@ import java.util.List; import java.util.Objects; import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.service.Characteristic; import org.etsi.osl.tmf.common.model.service.ResourceRef; import org.etsi.osl.tmf.common.model.service.ServiceRef; import org.etsi.osl.tmf.prm669.model.RelatedParty; diff --git a/src/main/java/org/etsi/osl/tmf/po622/model/ProductRefOrValue.java b/src/main/java/org/etsi/osl/tmf/po622/model/ProductRefOrValue.java index c77a6ed7d9376834d228c4e10263436d31d12a96..d4195004498a27fd5ebb3673ef96159897b0c344 100644 --- a/src/main/java/org/etsi/osl/tmf/po622/model/ProductRefOrValue.java +++ b/src/main/java/org/etsi/osl/tmf/po622/model/ProductRefOrValue.java @@ -25,6 +25,7 @@ import java.util.List; import java.util.Objects; import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.service.Characteristic; import org.etsi.osl.tmf.common.model.service.ResourceRef; import org.etsi.osl.tmf.common.model.service.ServiceRef; import org.etsi.osl.tmf.prm669.model.RelatedParty; diff --git a/src/main/java/org/etsi/osl/tmf/prm669/model/Characteristic.java b/src/main/java/org/etsi/osl/tmf/prm669/model/Characteristic.java deleted file mode 100644 index c0ca3cf990a1c82da38ddc388ca43dc04d3e0d72..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/osl/tmf/prm669/model/Characteristic.java +++ /dev/null @@ -1,229 +0,0 @@ -/*- - * ========================LICENSE_START================================= - * org.etsi.osl.tmf.api - * %% - * Copyright (C) 2019 openslice.io - * %% - * 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.etsi.osl.tmf.prm669.model; - -import java.util.Objects; - -import com.fasterxml.jackson.annotation.JsonProperty; -import org.etsi.osl.tmf.common.model.Any; -import org.springframework.validation.annotation.Validated; -import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.Valid; -import jakarta.validation.constraints.NotNull; - -/** - * Describes a given characteristic of an object or entity through a name/value pair. - */ -@Schema(description = "Describes a given characteristic of an object or entity through a name/value pair.") -@Validated -@jakarta.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen", date = "2019-10-19T23:20:50.154+03:00") - -public class Characteristic { - @JsonProperty("name") - private String name = null; - - @JsonProperty("valueType") - private String valueType = null; - - @JsonProperty("value") - private Any value = null; - - @JsonProperty("@baseType") - private String baseType = null; - - @JsonProperty("@schemaLocation") - private String schemaLocation = null; - - @JsonProperty("@type") - private String type = null; - - public Characteristic name(String name) { - this.name = name; - return this; - } - - /** - * Name of the characteristic - * @return name - **/ - @Schema(description = "Name of the characteristic") - @NotNull - - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Characteristic valueType(String valueType) { - this.valueType = valueType; - return this; - } - - /** - * Data type of the value of the characteristic - * @return valueType - **/ - @Schema(description = "Data type of the value of the characteristic") - - - public String getValueType() { - return valueType; - } - - public void setValueType(String valueType) { - this.valueType = valueType; - } - - public Characteristic value(Any value) { - this.value = value; - return this; - } - - /** - * The value of the characteristic - * @return value - **/ - @Schema(description = "The value of the characteristic") - @NotNull - - @Valid - - public Any getValue() { - return value; - } - - public void setValue(Any value) { - this.value = value; - } - - public Characteristic baseType(String baseType) { - this.baseType = baseType; - return this; - } - - /** - * When sub-classing, this defines the super-class - * @return baseType - **/ - @Schema(description = "When sub-classing, this defines the super-class") - - - public String getBaseType() { - return baseType; - } - - public void setBaseType(String baseType) { - this.baseType = baseType; - } - - public Characteristic schemaLocation(String schemaLocation) { - this.schemaLocation = schemaLocation; - return this; - } - - /** - * A URI to a JSON-Schema file that defines additional attributes and relationships - * @return schemaLocation - **/ - @Schema(description = "A URI to a JSON-Schema file that defines additional attributes and relationships") - - - public String getSchemaLocation() { - return schemaLocation; - } - - public void setSchemaLocation(String schemaLocation) { - this.schemaLocation = schemaLocation; - } - - public Characteristic type(String type) { - this.type = type; - return this; - } - - /** - * When sub-classing, this defines the sub-class entity name - * @return type - **/ - @Schema(description = "When sub-classing, this defines the sub-class entity name") - - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Characteristic characteristic = (Characteristic) o; - return Objects.equals(this.name, characteristic.name) && - Objects.equals(this.valueType, characteristic.valueType) && - Objects.equals(this.value, characteristic.value) && - Objects.equals(this.baseType, characteristic.baseType) && - Objects.equals(this.schemaLocation, characteristic.schemaLocation) && - Objects.equals(this.type, characteristic.type); - } - - @Override - public int hashCode() { - return Objects.hash(name, valueType, value, baseType, schemaLocation, type); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Characteristic {\n"); - - sb.append(" name: ").append(toIndentedString(name)).append("\n"); - sb.append(" valueType: ").append(toIndentedString(valueType)).append("\n"); - sb.append(" value: ").append(toIndentedString(value)).append("\n"); - sb.append(" baseType: ").append(toIndentedString(baseType)).append("\n"); - sb.append(" schemaLocation: ").append(toIndentedString(schemaLocation)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(java.lang.Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} - diff --git a/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRole.java b/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRole.java index db0583cccc103506a61ec66e44adb7d3ed4229ea..b972197d63778e1551442c40814a4de812d2faf8 100644 --- a/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRole.java +++ b/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRole.java @@ -28,6 +28,7 @@ import org.etsi.osl.tmf.am651.model.AgreementRef; import org.etsi.osl.tmf.am666.model.AccountRef; import org.etsi.osl.tmf.am666.model.PaymentMethodRef; import org.etsi.osl.tmf.common.model.TimePeriod; +import org.etsi.osl.tmf.common.model.service.Characteristic; import org.springframework.validation.annotation.Validated; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.Valid; diff --git a/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRoleCreate.java b/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRoleCreate.java index 436574c9e6bca7691ab55647f47bbf53643963f8..5b4435971dac31ebe2a4cfe73b53c255b9a945f0 100644 --- a/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRoleCreate.java +++ b/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRoleCreate.java @@ -28,6 +28,7 @@ import org.etsi.osl.tmf.am651.model.AgreementRef; import org.etsi.osl.tmf.am666.model.AccountRef; import org.etsi.osl.tmf.am666.model.PaymentMethodRef; import org.etsi.osl.tmf.common.model.TimePeriod; +import org.etsi.osl.tmf.common.model.service.Characteristic; import org.springframework.validation.annotation.Validated; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.Valid; diff --git a/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRoleUpdate.java b/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRoleUpdate.java index 560acbf57d3d663530af95c02abcb01228744bce..3a890cb9930ce0c3dbf991aa3dc4e3c33c35600a 100644 --- a/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRoleUpdate.java +++ b/src/main/java/org/etsi/osl/tmf/prm669/model/PartyRoleUpdate.java @@ -28,6 +28,7 @@ import org.etsi.osl.tmf.am651.model.AgreementRef; import org.etsi.osl.tmf.am666.model.AccountRef; import org.etsi.osl.tmf.am666.model.PaymentMethodRef; import org.etsi.osl.tmf.common.model.TimePeriod; +import org.etsi.osl.tmf.common.model.service.Characteristic; import org.springframework.validation.annotation.Validated; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.Valid; diff --git a/src/main/java/org/etsi/osl/tmf/ro652/model/Quantity.java b/src/main/java/org/etsi/osl/tmf/ro652/model/Quantity.java deleted file mode 100644 index 4b6899d742f0de03775539f85c409e309541dd1d..0000000000000000000000000000000000000000 --- a/src/main/java/org/etsi/osl/tmf/ro652/model/Quantity.java +++ /dev/null @@ -1,102 +0,0 @@ -package org.etsi.osl.tmf.ro652.model; - -import java.util.Objects; - -import com.fasterxml.jackson.annotation.JsonProperty; - -import org.springframework.validation.annotation.Validated; - -import io.swagger.v3.oas.annotations.media.Schema; - -/** - * An amount in a given unit - */ -@Schema(description = "An amount in a given unit") -@Validated -@jakarta.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2022-09-28T23:39:08.914219800+03:00[Europe/Athens]") -public class Quantity { - @JsonProperty("amount") - private Float amount = 1.0f; - - @JsonProperty("units") - private String units = null; - - public Quantity amount(Float amount) { - this.amount = amount; - return this; - } - - /** - * Numeric value in a given unit - * @return amount - **/ - @Schema(description = "Numeric value in a given unit") - - public Float getAmount() { - return amount; - } - - public void setAmount(Float amount) { - this.amount = amount; - } - - public Quantity units(String units) { - this.units = units; - return this; - } - - /** - * Unit - * @return units - **/ - @Schema(description = "Unit") - - public String getUnits() { - return units; - } - - public void setUnits(String units) { - this.units = units; - } - - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Quantity quantity = (Quantity) o; - return Objects.equals(this.amount, quantity.amount) && - Objects.equals(this.units, quantity.units); - } - - @Override - public int hashCode() { - return Objects.hash(amount, units); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Quantity {\n"); - - sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); - sb.append(" units: ").append(toIndentedString(units)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces - * (except the first line). - */ - private String toIndentedString(java.lang.Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -}