LanguageController tests up
[portal.git] / portal-BE / src / main / java / org / onap / portal / domain / dto / DomainVo.java
1 package org.onap.portal.domain.dto;
2
3 import java.io.ByteArrayInputStream;
4 import java.io.ByteArrayOutputStream;
5 import java.io.ObjectInputStream;
6 import java.io.ObjectOutputStream;
7 import java.io.Serializable;
8 import java.util.Date;
9 import java.util.Set;
10 import javax.persistence.Inheritance;
11 import javax.persistence.InheritanceType;
12 import lombok.AllArgsConstructor;
13 import lombok.EqualsAndHashCode;
14 import lombok.Getter;
15 import lombok.NoArgsConstructor;
16 import lombok.Setter;
17 import org.onap.portal.domain.db.fn.FnUser;
18 import org.onap.portalsdk.core.domain.FusionVo;
19
20 @Getter
21 @Setter
22 @EqualsAndHashCode
23 @NoArgsConstructor
24 @AllArgsConstructor
25 @Inheritance(strategy = InheritanceType.JOINED)
26 public class DomainVo extends FusionVo implements Serializable, Cloneable, Comparable {
27        private static final long serialVersionUID = 1L;
28        protected Long id;
29        protected Date created;
30        protected Date modified;
31        protected FnUser createdId;
32        protected FnUser modifiedId;
33        protected Long rowNum;
34        protected Serializable auditUserId;
35        protected Set auditTrail = null;
36
37        @Override
38        public int compareTo(Object obj) {
39               Long c1 = this.getId();
40               Long c2 = ((org.onap.portalsdk.core.domain.support.DomainVo)obj).getId();
41               return c1 != null && c2 != null ? c1.compareTo(c2) : 1;
42        }
43
44        public Object copy(boolean isIdNull) {
45               ByteArrayOutputStream baos = null;
46               ByteArrayInputStream bais = null;
47               ObjectOutputStream oos = null;
48               ObjectInputStream ois = null;
49               DomainVo newVo = null;
50
51               try {
52                      baos = new ByteArrayOutputStream();
53                      oos = new ObjectOutputStream(baos);
54                      oos.writeObject(this);
55                      bais = new ByteArrayInputStream(baos.toByteArray());
56                      ois = new ObjectInputStream(bais);
57                      newVo = (DomainVo)ois.readObject();
58                      if (isIdNull) {
59                             newVo.setId(null);
60                      }
61               } catch (Exception var8) {
62                      var8.printStackTrace();
63               }
64
65               return newVo;
66        }
67
68        public Object clone() throws CloneNotSupportedException {
69               return super.clone();
70        }
71 }