WidgetsCatalogControllerTest up
[portal.git] / portal-BE / src / main / java / org / onap / portal / domain / db / fn / FnLanguage.java
index 09cb5a6..0582508 100644 (file)
 
 package org.onap.portal.domain.db.fn;
 
+import com.fasterxml.jackson.annotation.JsonInclude;
+import java.io.Serializable;
+import java.util.HashSet;
+import java.util.Set;
+import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
+import javax.persistence.FetchType;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
+import javax.persistence.OneToMany;
 import javax.persistence.SequenceGenerator;
 import javax.persistence.Table;
 import javax.validation.constraints.Digits;
 import javax.validation.constraints.NotNull;
 import javax.validation.constraints.Size;
 import lombok.AllArgsConstructor;
+import lombok.Builder;
 import lombok.Getter;
 import lombok.NoArgsConstructor;
 import lombok.Setter;
-import lombok.ToString;
 import org.hibernate.validator.constraints.SafeHtml;
 /*
 CREATE TABLE `fn_language` (
@@ -68,12 +75,13 @@ CREATE TABLE `fn_language` (
 @Table(name = "fn_language")
 @NoArgsConstructor
 @AllArgsConstructor
-@ToString
+@Builder
 @Getter
 @Setter
 @Entity
-@SequenceGenerator(name="seq", initialValue=3, allocationSize=100)
-public class FnLanguage {
+@JsonInclude()
+@SequenceGenerator(name="seq", initialValue=1000, allocationSize=100000)
+public class FnLanguage implements Serializable {
 
        @Id
        @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq")
@@ -82,13 +90,28 @@ public class FnLanguage {
        private Long languageId;
        @Column(name = "language_name", length = 100, nullable = false)
        @Size(max = 100)
-       @NotNull
+       @NotNull(message = "languageName must not be null")
        @SafeHtml
        private String languageName;
        @Column(name = "language_alias", length = 100, nullable = false)
        @Size(max = 100)
-       @NotNull
+       @NotNull(message = "languageAlias must not be null")
        @SafeHtml
        private String languageAlias;
+       @OneToMany(
+               targetEntity = FnUser.class,
+               mappedBy = "languageId",
+               cascade = CascadeType.PERSIST,
+               fetch = FetchType.EAGER
+       )
+       private Set<FnUser> fnUsers = new HashSet<>();
 
+       @Override
+       public String toString() {
+              String sb = "FnLanguage{" + "languageId=" + languageId
+                      + ", languageName='" + languageName + '\''
+                      + ", languageAlias='" + languageAlias + '\''
+                      + '}';
+              return sb;
+       }
 }