Move CMS-related entities into a “cms” package.
Change-Id: Ie350230552fa6f970f26412b40974ca4af7a9260
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/LoginCertificate.java b/src/main/java/eu/mulk/mulkcms2/cms/users/LoginCertificate.java
new file mode 100644
index 0000000..4e6f047
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/LoginCertificate.java
@@ -0,0 +1,34 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import io.quarkus.hibernate.orm.panache.PanacheEntityBase;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.IdClass;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "login_certificates", schema = "public", catalog = "mulkcms")
+@IdClass(LoginCertificatePK.class)
+public class LoginCertificate extends PanacheEntityBase {
+
+ @Id
+ @Column(name = "user", nullable = false)
+ public int userId;
+
+ @Id
+ @Column(name = "certificate", nullable = false)
+ public byte[] certificate;
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(
+ name = "user",
+ referencedColumnName = "id",
+ nullable = false,
+ insertable = false,
+ updatable = false)
+ public User user;
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/LoginCertificatePK.java b/src/main/java/eu/mulk/mulkcms2/cms/users/LoginCertificatePK.java
new file mode 100644
index 0000000..8bb5f44
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/LoginCertificatePK.java
@@ -0,0 +1,52 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import java.io.Serializable;
+import java.util.Arrays;
+import java.util.Objects;
+import javax.persistence.Column;
+import javax.persistence.Id;
+
+public class LoginCertificatePK implements Serializable {
+
+ private int userId;
+ private byte[] certificate;
+
+ @Column(name = "user", nullable = false)
+ @Id
+ public int getUserId() {
+ return userId;
+ }
+
+ public void setUserId(int userId) {
+ this.userId = userId;
+ }
+
+ @Column(name = "certificate", nullable = false)
+ @Id
+ public byte[] getCertificate() {
+ return certificate;
+ }
+
+ public void setCertificate(byte[] certificate) {
+ this.certificate = certificate;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ LoginCertificatePK that = (LoginCertificatePK) o;
+ return userId == that.userId && Arrays.equals(certificate, that.certificate);
+ }
+
+ @Override
+ public int hashCode() {
+ int result = Objects.hash(userId);
+ result = 31 * result + Arrays.hashCode(certificate);
+ return result;
+ }
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/OpenId.java b/src/main/java/eu/mulk/mulkcms2/cms/users/OpenId.java
new file mode 100644
index 0000000..0cc7407
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/OpenId.java
@@ -0,0 +1,34 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import io.quarkus.hibernate.orm.panache.PanacheEntityBase;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.IdClass;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "openids", schema = "public", catalog = "mulkcms")
+@IdClass(OpenIdPK.class)
+public class OpenId extends PanacheEntityBase {
+
+ @Id
+ @Column(name = "user", nullable = false)
+ public int userId;
+
+ @Id
+ @Column(name = "openid", nullable = false, length = -1)
+ public String openid;
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(
+ name = "user",
+ referencedColumnName = "id",
+ nullable = false,
+ insertable = false,
+ updatable = false)
+ public User user;
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/OpenIdPK.java b/src/main/java/eu/mulk/mulkcms2/cms/users/OpenIdPK.java
new file mode 100644
index 0000000..e80fb25
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/OpenIdPK.java
@@ -0,0 +1,49 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import java.io.Serializable;
+import java.util.Objects;
+import javax.persistence.Column;
+import javax.persistence.Id;
+
+public class OpenIdPK implements Serializable {
+
+ private int userId;
+ private String openid;
+
+ @Column(name = "user", nullable = false)
+ @Id
+ public int getUserId() {
+ return userId;
+ }
+
+ public void setUserId(int userId) {
+ this.userId = userId;
+ }
+
+ @Column(name = "openid", nullable = false, length = -1)
+ @Id
+ public String getOpenid() {
+ return openid;
+ }
+
+ public void setOpenid(String openid) {
+ this.openid = openid;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ OpenIdPK openIdPK = (OpenIdPK) o;
+ return userId == openIdPK.userId && Objects.equals(openid, openIdPK.openid);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(userId, openid);
+ }
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/Password.java b/src/main/java/eu/mulk/mulkcms2/cms/users/Password.java
new file mode 100644
index 0000000..632284e
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/Password.java
@@ -0,0 +1,34 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import io.quarkus.hibernate.orm.panache.PanacheEntityBase;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.IdClass;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "passwords", schema = "public", catalog = "mulkcms")
+@IdClass(PasswordPK.class)
+public class Password extends PanacheEntityBase {
+
+ @Id
+ @Column(name = "user", nullable = false)
+ public int userId;
+
+ @Id
+ @Column(name = "password", nullable = false, length = -1)
+ public String password;
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(
+ name = "user",
+ referencedColumnName = "id",
+ nullable = false,
+ insertable = false,
+ updatable = false)
+ public User user;
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/PasswordPK.java b/src/main/java/eu/mulk/mulkcms2/cms/users/PasswordPK.java
new file mode 100644
index 0000000..c43cd5e
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/PasswordPK.java
@@ -0,0 +1,49 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import java.io.Serializable;
+import java.util.Objects;
+import javax.persistence.Column;
+import javax.persistence.Id;
+
+public class PasswordPK implements Serializable {
+
+ private int userId;
+ private String password;
+
+ @Column(name = "user", nullable = false)
+ @Id
+ public int getUserId() {
+ return userId;
+ }
+
+ public void setUserId(int userId) {
+ this.userId = userId;
+ }
+
+ @Column(name = "password", nullable = false, length = -1)
+ @Id
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ PasswordPK that = (PasswordPK) o;
+ return userId == that.userId && Objects.equals(password, that.password);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(userId, password);
+ }
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/User.java b/src/main/java/eu/mulk/mulkcms2/cms/users/User.java
new file mode 100644
index 0000000..a84462f
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/User.java
@@ -0,0 +1,54 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import eu.mulk.mulkcms2.cms.comments.CommentRevision;
+import eu.mulk.mulkcms2.cms.pages.ArticleRevision;
+import io.quarkus.hibernate.orm.panache.PanacheEntityBase;
+import java.util.Collection;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "users", schema = "public", catalog = "mulkcms")
+public class User extends PanacheEntityBase {
+
+ @Id
+ @Column(name = "id", nullable = false)
+ public int id;
+
+ @Column(name = "name", nullable = true, length = -1)
+ public String name;
+
+ @Column(name = "status", nullable = false, length = -1)
+ public String status;
+
+ @Column(name = "email", nullable = true, length = -1)
+ public String email;
+
+ @Column(name = "website", nullable = true, length = -1)
+ public String website;
+
+ @OneToMany(mappedBy = "authors", fetch = FetchType.LAZY)
+ public Collection<ArticleRevision> articleRevisions;
+
+ @OneToMany(mappedBy = "user", fetch = FetchType.LAZY)
+ public Collection<CommentRevision> commentRevisions;
+
+ @OneToMany(mappedBy = "user", fetch = FetchType.LAZY)
+ public Collection<LoginCertificate> loginCertificates;
+
+ @OneToMany(mappedBy = "user", fetch = FetchType.LAZY)
+ public Collection<OpenId> openids;
+
+ @OneToMany(mappedBy = "user", fetch = FetchType.LAZY)
+ public Collection<Password> passwords;
+
+ @OneToMany(mappedBy = "user", fetch = FetchType.LAZY)
+ public Collection<UserPermission> userPermissions;
+
+ @OneToMany(mappedBy = "user", fetch = FetchType.LAZY)
+ public Collection<UserSetting> userSettings;
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/UserPermission.java b/src/main/java/eu/mulk/mulkcms2/cms/users/UserPermission.java
new file mode 100644
index 0000000..a580813
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/UserPermission.java
@@ -0,0 +1,37 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import io.quarkus.hibernate.orm.panache.PanacheEntityBase;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.IdClass;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "user_permissions", schema = "public", catalog = "mulkcms")
+@IdClass(UserPermissionPK.class)
+public class UserPermission extends PanacheEntityBase {
+
+ @Id
+ @Column(name = "user", nullable = false)
+ public int userId;
+
+ @Id
+ @Column(name = "permission", nullable = false, length = -1)
+ public String permission;
+
+ @Column(name = "status", nullable = true)
+ public Boolean status;
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(
+ name = "user",
+ referencedColumnName = "id",
+ nullable = false,
+ insertable = false,
+ updatable = false)
+ public User user;
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/UserPermissionPK.java b/src/main/java/eu/mulk/mulkcms2/cms/users/UserPermissionPK.java
new file mode 100644
index 0000000..406178e
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/UserPermissionPK.java
@@ -0,0 +1,49 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import java.io.Serializable;
+import java.util.Objects;
+import javax.persistence.Column;
+import javax.persistence.Id;
+
+public class UserPermissionPK implements Serializable {
+
+ private int userId;
+ private String permission;
+
+ @Column(name = "user", nullable = false)
+ @Id
+ public int getUserId() {
+ return userId;
+ }
+
+ public void setUserId(int userId) {
+ this.userId = userId;
+ }
+
+ @Column(name = "permission", nullable = false, length = -1)
+ @Id
+ public String getPermission() {
+ return permission;
+ }
+
+ public void setPermission(String permission) {
+ this.permission = permission;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ UserPermissionPK that = (UserPermissionPK) o;
+ return userId == that.userId && Objects.equals(permission, that.permission);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(userId, permission);
+ }
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/UserSetting.java b/src/main/java/eu/mulk/mulkcms2/cms/users/UserSetting.java
new file mode 100644
index 0000000..f4ec234
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/UserSetting.java
@@ -0,0 +1,37 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import io.quarkus.hibernate.orm.panache.PanacheEntityBase;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.IdClass;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "user_settings", schema = "public", catalog = "mulkcms")
+@IdClass(UserSettingPK.class)
+public class UserSetting extends PanacheEntityBase {
+
+ @Id
+ @Column(name = "user", nullable = false)
+ public int userId;
+
+ @Id
+ @Column(name = "setting", nullable = false, length = -1)
+ public String setting;
+
+ @Column(name = "value", nullable = true, length = -1)
+ public String value;
+
+ @ManyToOne(fetch = FetchType.LAZY)
+ @JoinColumn(
+ name = "user",
+ referencedColumnName = "id",
+ nullable = false,
+ insertable = false,
+ updatable = false)
+ public User user;
+}
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/users/UserSettingPK.java b/src/main/java/eu/mulk/mulkcms2/cms/users/UserSettingPK.java
new file mode 100644
index 0000000..b7c28ea
--- /dev/null
+++ b/src/main/java/eu/mulk/mulkcms2/cms/users/UserSettingPK.java
@@ -0,0 +1,49 @@
+package eu.mulk.mulkcms2.cms.users;
+
+import java.io.Serializable;
+import java.util.Objects;
+import javax.persistence.Column;
+import javax.persistence.Id;
+
+public class UserSettingPK implements Serializable {
+
+ private int userId;
+ private String setting;
+
+ @Column(name = "user", nullable = false)
+ @Id
+ public int getUserId() {
+ return userId;
+ }
+
+ public void setUserId(int userId) {
+ this.userId = userId;
+ }
+
+ @Column(name = "setting", nullable = false, length = -1)
+ @Id
+ public String getSetting() {
+ return setting;
+ }
+
+ public void setSetting(String setting) {
+ this.setting = setting;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ UserSettingPK that = (UserSettingPK) o;
+ return userId == that.userId && Objects.equals(setting, that.setting);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(userId, setting);
+ }
+}