From 7cd3f69278d8a64d62d4550f8fff4ab520456e81 Mon Sep 17 00:00:00 2001 From: Christos Tranoris Date: Tue, 12 Aug 2025 22:17:29 +0300 Subject: [PATCH 1/6] fix for #26 --- .../etsi/osl/tmf/pcm620/model/EventSubscription.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/EventSubscription.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/EventSubscription.java index aa61f7b..6896d41 100644 --- a/src/main/java/org/etsi/osl/tmf/pcm620/model/EventSubscription.java +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/EventSubscription.java @@ -26,6 +26,11 @@ import com.fasterxml.jackson.annotation.JsonProperty; import org.springframework.validation.annotation.Validated; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import jakarta.validation.constraints.NotNull; /** @@ -35,7 +40,12 @@ import jakarta.validation.constraints.NotNull; @Validated @jakarta.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen", date = "2019-10-19T00:15:57.249+03:00") +@Entity(name = "ProductEventSubscription") +@Table(name = "ProductEventSubscription") public class EventSubscription { + + @Id + @GeneratedValue(strategy = GenerationType.UUID) @JsonProperty("id") private String id = null; -- GitLab From ff6544b4b623ffab660452d2574e39b59a6ee707 Mon Sep 17 00:00:00 2001 From: Christos Tranoris Date: Wed, 13 Aug 2025 00:04:48 +0300 Subject: [PATCH 2/6] added Catalog create delete notifications --- .../model/CatalogCreateNotification.java | 97 +++++++++++++++++++ .../model/CatalogDeleteNotification.java | 97 +++++++++++++++++++ 2 files changed, 194 insertions(+) create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/CatalogCreateNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/CatalogDeleteNotification.java diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/CatalogCreateNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/CatalogCreateNotification.java new file mode 100644 index 0000000..a8f449a --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/CatalogCreateNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for catalog create events + */ +@Schema(description = "The notification data structure for catalog create events") +@Validated +public class CatalogCreateNotification extends Notification { + + @JsonProperty("event") + private CatalogCreateEvent event = null; + + public CatalogCreateNotification event(CatalogCreateEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public CatalogCreateEvent getEvent() { + return event; + } + + public void setEvent(CatalogCreateEvent 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; + } + CatalogCreateNotification catalogCreateNotification = (CatalogCreateNotification) o; + return Objects.equals(this.event, catalogCreateNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class CatalogCreateNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/CatalogDeleteNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/CatalogDeleteNotification.java new file mode 100644 index 0000000..9236021 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/CatalogDeleteNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for catalog delete events + */ +@Schema(description = "The notification data structure for catalog delete events") +@Validated +public class CatalogDeleteNotification extends Notification { + + @JsonProperty("event") + private CatalogDeleteEvent event = null; + + public CatalogDeleteNotification event(CatalogDeleteEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public CatalogDeleteEvent getEvent() { + return event; + } + + public void setEvent(CatalogDeleteEvent 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; + } + CatalogDeleteNotification catalogDeleteNotification = (CatalogDeleteNotification) o; + return Objects.equals(this.event, catalogDeleteNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class CatalogDeleteNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file -- GitLab From 13fd07f8de6f94b2862e9b3fc42bc5b1d81ff78e Mon Sep 17 00:00:00 2001 From: Christos Tranoris Date: Wed, 13 Aug 2025 00:35:09 +0300 Subject: [PATCH 3/6] adding Notifications for CategoryCreate CategoryDelete --- .../model/CategoryCreateNotification.java | 97 +++++++++++++++++++ .../model/CategoryDeleteNotification.java | 97 +++++++++++++++++++ 2 files changed, 194 insertions(+) create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/CategoryCreateNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/CategoryDeleteNotification.java diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/CategoryCreateNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/CategoryCreateNotification.java new file mode 100644 index 0000000..52a9b42 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/CategoryCreateNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for category create events + */ +@Schema(description = "The notification data structure for category create events") +@Validated +public class CategoryCreateNotification extends Notification { + + @JsonProperty("event") + private CategoryCreateEvent event = null; + + public CategoryCreateNotification event(CategoryCreateEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public CategoryCreateEvent getEvent() { + return event; + } + + public void setEvent(CategoryCreateEvent 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; + } + CategoryCreateNotification categoryCreateNotification = (CategoryCreateNotification) o; + return Objects.equals(this.event, categoryCreateNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class CategoryCreateNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/CategoryDeleteNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/CategoryDeleteNotification.java new file mode 100644 index 0000000..49bbde3 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/CategoryDeleteNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for category delete events + */ +@Schema(description = "The notification data structure for category delete events") +@Validated +public class CategoryDeleteNotification extends Notification { + + @JsonProperty("event") + private CategoryDeleteEvent event = null; + + public CategoryDeleteNotification event(CategoryDeleteEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public CategoryDeleteEvent getEvent() { + return event; + } + + public void setEvent(CategoryDeleteEvent 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; + } + CategoryDeleteNotification categoryDeleteNotification = (CategoryDeleteNotification) o; + return Objects.equals(this.event, categoryDeleteNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class CategoryDeleteNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file -- GitLab From dea71d6062de6259542aa25c1e40784622970a7a Mon Sep 17 00:00:00 2001 From: Christos Tranoris Date: Wed, 13 Aug 2025 01:29:08 +0300 Subject: [PATCH 4/6] adding events for product spec --- ...roductSpecificationCreateNotification.java | 97 +++++++++++++++++++ ...roductSpecificationDeleteNotification.java | 97 +++++++++++++++++++ .../tmf/po622/model/ProductOrderMapper.java | 1 + 3 files changed, 195 insertions(+) create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductSpecificationCreateNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductSpecificationDeleteNotification.java diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductSpecificationCreateNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductSpecificationCreateNotification.java new file mode 100644 index 0000000..6da1a02 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductSpecificationCreateNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product specification create events + */ +@Schema(description = "The notification data structure for product specification create events") +@Validated +public class ProductSpecificationCreateNotification extends Notification { + + @JsonProperty("event") + private ProductSpecificationCreateEvent event = null; + + public ProductSpecificationCreateNotification event(ProductSpecificationCreateEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductSpecificationCreateEvent getEvent() { + return event; + } + + public void setEvent(ProductSpecificationCreateEvent 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; + } + ProductSpecificationCreateNotification productSpecificationCreateNotification = (ProductSpecificationCreateNotification) o; + return Objects.equals(this.event, productSpecificationCreateNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductSpecificationCreateNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductSpecificationDeleteNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductSpecificationDeleteNotification.java new file mode 100644 index 0000000..ba9e0c4 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductSpecificationDeleteNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product specification delete events + */ +@Schema(description = "The notification data structure for product specification delete events") +@Validated +public class ProductSpecificationDeleteNotification extends Notification { + + @JsonProperty("event") + private ProductSpecificationDeleteEvent event = null; + + public ProductSpecificationDeleteNotification event(ProductSpecificationDeleteEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductSpecificationDeleteEvent getEvent() { + return event; + } + + public void setEvent(ProductSpecificationDeleteEvent 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; + } + ProductSpecificationDeleteNotification productSpecificationDeleteNotification = (ProductSpecificationDeleteNotification) o; + return Objects.equals(this.event, productSpecificationDeleteNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductSpecificationDeleteNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/po622/model/ProductOrderMapper.java b/src/main/java/org/etsi/osl/tmf/po622/model/ProductOrderMapper.java index f6c7a41..1a30200 100644 --- a/src/main/java/org/etsi/osl/tmf/po622/model/ProductOrderMapper.java +++ b/src/main/java/org/etsi/osl/tmf/po622/model/ProductOrderMapper.java @@ -21,6 +21,7 @@ import org.mapstruct.NullValuePropertyMappingStrategy; nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS) public interface ProductOrderMapper { + @Mapping(target = "orderDate", ignore = true) @Mapping(target = "uuid", ignore = true) @Mapping(target = "baseType", ignore = true) @Mapping(target = "href", ignore = true) -- GitLab From 399dfaaf8793674c8a64a543564577fd24adea29 Mon Sep 17 00:00:00 2001 From: Christos Tranoris Date: Wed, 13 Aug 2025 01:52:57 +0300 Subject: [PATCH 5/6] adding Notification classes for ProductOffering --- ...eringAttributeValueChangeNotification.java | 97 +++++++++++++++++++ .../ProductOfferingCreateNotification.java | 97 +++++++++++++++++++ .../ProductOfferingDeleteNotification.java | 97 +++++++++++++++++++ ...roductOfferingStateChangeNotification.java | 97 +++++++++++++++++++ 4 files changed, 388 insertions(+) create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingAttributeValueChangeNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingCreateNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingDeleteNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingStateChangeNotification.java diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingAttributeValueChangeNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingAttributeValueChangeNotification.java new file mode 100644 index 0000000..2fc6585 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingAttributeValueChangeNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product offering attribute value change events + */ +@Schema(description = "The notification data structure for product offering attribute value change events") +@Validated +public class ProductOfferingAttributeValueChangeNotification extends Notification { + + @JsonProperty("event") + private ProductOfferingAttributeValueChangeEvent event = null; + + public ProductOfferingAttributeValueChangeNotification event(ProductOfferingAttributeValueChangeEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductOfferingAttributeValueChangeEvent getEvent() { + return event; + } + + public void setEvent(ProductOfferingAttributeValueChangeEvent 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; + } + ProductOfferingAttributeValueChangeNotification productOfferingAttributeValueChangeNotification = (ProductOfferingAttributeValueChangeNotification) o; + return Objects.equals(this.event, productOfferingAttributeValueChangeNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingAttributeValueChangeNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingCreateNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingCreateNotification.java new file mode 100644 index 0000000..e3b2572 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingCreateNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product offering create events + */ +@Schema(description = "The notification data structure for product offering create events") +@Validated +public class ProductOfferingCreateNotification extends Notification { + + @JsonProperty("event") + private ProductOfferingCreateEvent event = null; + + public ProductOfferingCreateNotification event(ProductOfferingCreateEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductOfferingCreateEvent getEvent() { + return event; + } + + public void setEvent(ProductOfferingCreateEvent 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; + } + ProductOfferingCreateNotification productOfferingCreateNotification = (ProductOfferingCreateNotification) o; + return Objects.equals(this.event, productOfferingCreateNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingCreateNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingDeleteNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingDeleteNotification.java new file mode 100644 index 0000000..2c94885 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingDeleteNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product offering delete events + */ +@Schema(description = "The notification data structure for product offering delete events") +@Validated +public class ProductOfferingDeleteNotification extends Notification { + + @JsonProperty("event") + private ProductOfferingDeleteEvent event = null; + + public ProductOfferingDeleteNotification event(ProductOfferingDeleteEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductOfferingDeleteEvent getEvent() { + return event; + } + + public void setEvent(ProductOfferingDeleteEvent 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; + } + ProductOfferingDeleteNotification productOfferingDeleteNotification = (ProductOfferingDeleteNotification) o; + return Objects.equals(this.event, productOfferingDeleteNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingDeleteNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingStateChangeNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingStateChangeNotification.java new file mode 100644 index 0000000..7044acb --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingStateChangeNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product offering state change events + */ +@Schema(description = "The notification data structure for product offering state change events") +@Validated +public class ProductOfferingStateChangeNotification extends Notification { + + @JsonProperty("event") + private ProductOfferingStateChangeEvent event = null; + + public ProductOfferingStateChangeNotification event(ProductOfferingStateChangeEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductOfferingStateChangeEvent getEvent() { + return event; + } + + public void setEvent(ProductOfferingStateChangeEvent 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; + } + ProductOfferingStateChangeNotification productOfferingStateChangeNotification = (ProductOfferingStateChangeNotification) o; + return Objects.equals(this.event, productOfferingStateChangeNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingStateChangeNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file -- GitLab From 2c296aa4aea58ef25f9eedd9b885bd421c611730 Mon Sep 17 00:00:00 2001 From: Christos Tranoris Date: Wed, 13 Aug 2025 02:17:06 +0300 Subject: [PATCH 6/6] adding ProductOfferingPrice related events --- ...PriceAttributeValueChangeNotification.java | 97 +++++++++++++++++++ ...roductOfferingPriceCreateNotification.java | 97 +++++++++++++++++++ ...roductOfferingPriceDeleteNotification.java | 97 +++++++++++++++++++ ...tOfferingPriceStateChangeNotification.java | 97 +++++++++++++++++++ 4 files changed, 388 insertions(+) create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceAttributeValueChangeNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceCreateNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceDeleteNotification.java create mode 100644 src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceStateChangeNotification.java diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceAttributeValueChangeNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceAttributeValueChangeNotification.java new file mode 100644 index 0000000..541356d --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceAttributeValueChangeNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product offering price attribute value change events + */ +@Schema(description = "The notification data structure for product offering price attribute value change events") +@Validated +public class ProductOfferingPriceAttributeValueChangeNotification extends Notification { + + @JsonProperty("event") + private ProductOfferingPriceAttributeValueChangeEvent event = null; + + public ProductOfferingPriceAttributeValueChangeNotification event(ProductOfferingPriceAttributeValueChangeEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductOfferingPriceAttributeValueChangeEvent getEvent() { + return event; + } + + public void setEvent(ProductOfferingPriceAttributeValueChangeEvent 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; + } + ProductOfferingPriceAttributeValueChangeNotification productOfferingPriceAttributeValueChangeNotification = (ProductOfferingPriceAttributeValueChangeNotification) o; + return Objects.equals(this.event, productOfferingPriceAttributeValueChangeNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingPriceAttributeValueChangeNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceCreateNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceCreateNotification.java new file mode 100644 index 0000000..38d6525 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceCreateNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product offering price create events + */ +@Schema(description = "The notification data structure for product offering price create events") +@Validated +public class ProductOfferingPriceCreateNotification extends Notification { + + @JsonProperty("event") + private ProductOfferingPriceCreateEvent event = null; + + public ProductOfferingPriceCreateNotification event(ProductOfferingPriceCreateEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductOfferingPriceCreateEvent getEvent() { + return event; + } + + public void setEvent(ProductOfferingPriceCreateEvent 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; + } + ProductOfferingPriceCreateNotification productOfferingPriceCreateNotification = (ProductOfferingPriceCreateNotification) o; + return Objects.equals(this.event, productOfferingPriceCreateNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingPriceCreateNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceDeleteNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceDeleteNotification.java new file mode 100644 index 0000000..5ca808a --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceDeleteNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product offering price delete events + */ +@Schema(description = "The notification data structure for product offering price delete events") +@Validated +public class ProductOfferingPriceDeleteNotification extends Notification { + + @JsonProperty("event") + private ProductOfferingPriceDeleteEvent event = null; + + public ProductOfferingPriceDeleteNotification event(ProductOfferingPriceDeleteEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductOfferingPriceDeleteEvent getEvent() { + return event; + } + + public void setEvent(ProductOfferingPriceDeleteEvent 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; + } + ProductOfferingPriceDeleteNotification productOfferingPriceDeleteNotification = (ProductOfferingPriceDeleteNotification) o; + return Objects.equals(this.event, productOfferingPriceDeleteNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingPriceDeleteNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file diff --git a/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceStateChangeNotification.java b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceStateChangeNotification.java new file mode 100644 index 0000000..1945cb6 --- /dev/null +++ b/src/main/java/org/etsi/osl/tmf/pcm620/model/ProductOfferingPriceStateChangeNotification.java @@ -0,0 +1,97 @@ +/*- + * ========================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.pcm620.model; + +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.etsi.osl.tmf.common.model.Notification; +import org.springframework.validation.annotation.Validated; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; + +/** + * The notification data structure for product offering price state change events + */ +@Schema(description = "The notification data structure for product offering price state change events") +@Validated +public class ProductOfferingPriceStateChangeNotification extends Notification { + + @JsonProperty("event") + private ProductOfferingPriceStateChangeEvent event = null; + + public ProductOfferingPriceStateChangeNotification event(ProductOfferingPriceStateChangeEvent event) { + this.event = event; + return this; + } + + /** + * The event data structure + * @return event + **/ + @Schema(description = "The event data structure") + @Valid + public ProductOfferingPriceStateChangeEvent getEvent() { + return event; + } + + public void setEvent(ProductOfferingPriceStateChangeEvent 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; + } + ProductOfferingPriceStateChangeNotification productOfferingPriceStateChangeNotification = (ProductOfferingPriceStateChangeNotification) o; + return Objects.equals(this.event, productOfferingPriceStateChangeNotification.event) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(event, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ProductOfferingPriceStateChangeNotification {\n"); + sb.append(" ").append(toIndentedString(super.toString())).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 "); + } +} \ No newline at end of file -- GitLab