View Javadoc
1   package com.fuiny.mavendb;
2   
3   import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
4   import jakarta.persistence.Basic;
5   import jakarta.persistence.Column;
6   import jakarta.persistence.Entity;
7   import jakarta.persistence.Id;
8   import jakarta.persistence.NamedQueries;
9   import jakarta.persistence.NamedQuery;
10  import jakarta.persistence.Table;
11  import java.io.Serializable;
12  import java.math.BigInteger;
13  import java.util.Arrays;
14  import org.apache.commons.codec.binary.Hex;
15  import org.eclipse.persistence.annotations.Cache;
16  import org.eclipse.persistence.annotations.CacheType;
17  
18  /**
19   * JPA Persistent class for table <code>artifactinfo</code>.
20   */
21  @Entity
22  @Table(name = "artifactinfo")
23  @Cache(type = CacheType.NONE)  // Does not preserve object identity and does not cache objects.
24  @NamedQueries({
25      @NamedQuery(name = "Artifactinfo.findAll", query = "SELECT a FROM Artifactinfo a")
26      , @NamedQuery(name = "Artifactinfo.findByUinfoMd5", query = "SELECT a FROM Artifactinfo a WHERE a.uinfoMd5 = :uinfoMd5")  // Only select one column to speed up
27      , @NamedQuery(name = "Artifactinfo.findByMajorVersion", query = "SELECT a FROM Artifactinfo a WHERE a.majorVersion = :majorVersion")
28  })
29  @SuppressFBWarnings({"EI_EXPOSE_REP", "EI_EXPOSE_REP2"})
30  public class Artifactinfo implements Serializable {
31  
32      private static final long serialVersionUID = 1L;
33  
34      @Id
35      @Basic(optional = false)
36      @Column(name = "uinfo_md5")
37      private byte[] uinfoMd5;
38  
39      @Column(name = "major_version")
40      private Integer majorVersion;
41      @Column(name = "version_seq")
42      private BigInteger versionSeq;
43      @Column(name = "uinfo_length")
44      private Integer uinfoLength;
45      @Column(name = "classifier_length")
46      private Integer classifierLength;
47  
48      @Column(name = "signature_exists")
49      private Integer signatureExists;
50      @Column(name = "sources_exists")
51      private Integer sourcesExists;
52      @Column(name = "javadoc_exists")
53      private Integer javadocExists;
54  
55      /**
56       * We treat MySQL JSON data type as String.
57       */
58      @Column(name = "json")
59      private String json;
60  
61      public Artifactinfo() {
62      }
63  
64      public Artifactinfo(byte[] md5) {
65          this.uinfoMd5 = md5;
66      }
67  
68      @Override
69      public int hashCode() {
70          int hash = 0;
71          hash += (this.uinfoMd5 != null ? Arrays.hashCode(this.uinfoMd5) : 0);
72          return hash;
73      }
74  
75      @Override
76      public boolean equals(Object object) {
77          if (!(object instanceof Artifactinfo)) {
78              return false;
79          }
80          Artifactinfo other = (Artifactinfo) object;
81          return (other.uinfoMd5 != null) && Arrays.equals(other.uinfoMd5, this.uinfoMd5);
82      }
83  
84      @Override
85      public String toString() {
86          return this.getClass().getName() + "[ uinfo=" + Hex.encodeHexString(this.uinfoMd5) + " ]";
87      }
88  
89      @SuppressFBWarnings(value="EI_EXPOSE_REP", justification="it is fine")
90      public byte[] getUinfoMd5() {
91          return uinfoMd5;
92      }
93  
94      @SuppressFBWarnings(value="EI_EXPOSE_REP2", justification="it is fine")
95      public void setUinfoMd5(byte[] uinfoMd5) {
96          this.uinfoMd5 = uinfoMd5;
97      }
98  
99      public Integer getMajorVersion() {
100         return majorVersion;
101     }
102 
103     public void setMajorVersion(Integer majorVersion) {
104         this.majorVersion = majorVersion;
105     }
106 
107     public BigInteger getVersionSeq() {
108         return versionSeq;
109     }
110 
111     public void setVersionSeq(BigInteger versionSeq) {
112         this.versionSeq = versionSeq;
113     }
114 
115     public Integer getUinfoLength() {
116         return uinfoLength;
117     }
118 
119     public void setUinfoLength(Integer uinfoLength) {
120         this.uinfoLength = uinfoLength;
121     }
122 
123     public Integer getClassifierLength() {
124         return this.classifierLength;
125     }
126 
127     public void setClassifierLength(Integer length) {
128         this.classifierLength = length;
129     }
130 
131     public Integer getSignatureExists() {
132         return signatureExists;
133     }
134 
135     public void setSignatureExists(Integer signatureExists) {
136         this.signatureExists = signatureExists;
137     }
138 
139     public Integer getSourcesExists() {
140         return sourcesExists;
141     }
142 
143     public void setSourcesExists(Integer sourcesExists) {
144         this.sourcesExists = sourcesExists;
145     }
146 
147     public Integer getJavadocExists() {
148         return javadocExists;
149     }
150 
151     public void setJavadocExists(Integer javadocExists) {
152         this.javadocExists = javadocExists;
153     }
154 
155     public String getJson() {
156         return json;
157     }
158 
159     public void setJson(String json) {
160         this.json = json;
161     }
162 
163 
164 }