Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • branch-2.5
  • branch-2.7
  • feature/ISSUE-173_service_admin_index_xhtml_not_working
  • feature/ISSUE-182_implement-microprofile-health-checks
  • feature/ISSUE-186_add-publish-flag-to-projects-and-generate-a-list
  • feature/ISSUE-211_allow-for-account-linking-of-two-existing-accounts
  • feature/ISSUE-217_improve-layout
  • feature/ISSUE-225_make-e-mail-address-mandatory-2
  • feature/ISSUE-226_add-serviceoidcclient-to-invoke-method
  • feature/ISSUE-237_try-to-remove-dependencies-to-jms
  • feature/ISSUE-241_refactoring-of-services
  • feature/ISSUE-241_refactoring-of-services-2
  • feature/ISSUE-241_refactoring-of-services-3
  • feature/ISSUE-242_introduce-automated-code-formatting
  • feature/REGAPP-17_project_management
  • feature/maven-compiler-release
  • feature_orcid
  • main
  • 2.5.0
  • 2.5.1
  • 2.5.10
  • 2.5.11
  • 2.5.12
  • 2.5.13
  • 2.5.14
  • 2.5.2
  • 2.5.3
  • 2.5.4
  • 2.5.5
  • 2.5.6
  • 2.5.7
  • 2.5.8
  • 2.5.9
  • 2.7.1
  • 2.7.2
  • 2.7.3
  • 2.7.4
  • 2.7.5
  • 2.7.6
  • 2.7.7
  • 2.7.8
  • 2.8.0
  • 2.8.1
  • 2.8.2
44 results

Target

Select target project
  • kit/reg-app/regapp
  • uywls/regapp
  • janis.streib/regapp
3 results
Select Git revision
  • branch-2.5
  • branch-2.7
  • feature/ISSUE-173_service_admin_index_xhtml_not_working
  • feature/ISSUE-182_implement-microprofile-health-checks
  • feature/ISSUE-186_add-publish-flag-to-projects-and-generate-a-list
  • feature/ISSUE-206_add-user-update-via-e-mail-callback
  • feature/ISSUE-208_enhance-layout
  • feature/REGAPP-17_project_management
  • main
  • 2.5.0
  • 2.5.1
  • 2.5.10
  • 2.5.11
  • 2.5.12
  • 2.5.13
  • 2.5.14
  • 2.5.2
  • 2.5.3
  • 2.5.4
  • 2.5.5
  • 2.5.6
  • 2.5.7
  • 2.5.8
  • 2.5.9
  • 2.7.1
  • 2.7.2
  • 2.7.3
  • 2.7.4
  • 2.7.5
  • 2.7.6
  • 2.7.7
  • 2.7.8
  • 2.8.0
33 results
Show changes
Commits on Source (1642)
Showing
with 702 additions and 280 deletions
......@@ -2,4 +2,10 @@
.settings
.classpath
.metadata
.vscode
target
.flattened-pom.xml
.factorypath
# Projekt-spezifisches Local-Maven-Repo (wegen gitlab)
/maven/repository/
image: maven:3-openjdk-17
variables:
GIT_STRATEGY: clone
GIT_AUTHOR_NAME: Release Bot
GIT_AUTHOR_EMAIL: regapp-support@lists.kit.edu
GIT_COMMITTER_NAME: Release Bot
GIT_COMMITTER_EMAIL: regapp-support@lists.kit.edu
stages:
- validate-version
- perform-test-build
- release
validate-version:
stage: validate-version
script: |
set +x
## Validating version string ...
[[ $RELEASE_VERSION =~ ^[0-9](\.[0-9]+){2}$ ]] || exit_code=$?
if [[ $exit_code -ne 0 ]]; then echo "Value $RELEASE_VERSION is not a valid version string"; exit 1; fi;
echo "Value $RELEASE_VERSION is a valid version string"
perform-test-build:
stage: perform-test-build
script: |
set +x
## Performing test build ...
mvn test
release:
stage: release
script: |
set +x
## Performing release ...
git checkout "$CI_COMMIT_REF_NAME"
echo "Release version $RELEASE_VERSION"
echo " Updating and committing pom.xml (version $RELEASE_VERSION)"
mvn versions:set-property -q -DgenerateBackupPoms=false -Dproperty=revision -DnewVersion=$RELEASE_VERSION
git add *
git commit -q -m "NO_STORY Update version to $RELEASE_VERSION"
git push -q "https://regapp_release_token:$RELEASE_ACCESS_TOKEN@git.scc.kit.edu/reg-app/reg-app.git"
echo " Tagging commit"
git tag -a $RELEASE_VERSION -m "NO_STORY Release version $RELEASE_VERSION"
git push -q "https://regapp_release_token:$RELEASE_ACCESS_TOKEN@git.scc.kit.edu/reg-app/reg-app.git" "$RELEASE_VERSION"
SNAPSHOT_VERSION=$(echo $RELEASE_VERSION | perl -pe 's/^(\d+)\.(\d+)\.(\d+)$/"$1.".($2+1).".0-SNAPSHOT"/e')
echo " Updating and committing pom.xml (version $SNAPSHOT_VERSION)"
mvn versions:set-property -q -DgenerateBackupPoms=false -Dproperty=revision -DnewVersion=$SNAPSHOT_VERSION
git add *
git commit -q -m "NO_STORY Update version to $SNAPSHOT_VERSION"
git push -q "https://regapp_release_token:$RELEASE_ACCESS_TOKEN@git.scc.kit.edu/reg-app/reg-app.git"
variables:
MAVEN_OPTS: "-Dhttps.protocols=TLSv1.2 -Dmaven.repo.local=maven/repository -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=WARN -Dorg.slf4j.simpleLogger.showDateTime=true -Djava.awt.headless=true"
MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version"
RELEASE_VERSION:
description: |
Non-Snapshot version of the release. If none ist given, a regular
non-release build is performed. Releases are only performed on the
main branch. Example value: 2.7.8
image: maven:3-openjdk-17
cache:
- key: $CI_JOB_NAME
paths:
- maven/repository
- paths:
- target
trigger-release-pipeline:
stage: build
rules:
- if: $RELEASE_VERSION != "" && $CI_COMMIT_BRANCH == "main"
trigger:
include: .gitlab-ci-release.yml
strategy: depend
forward:
pipeline_variables: true
build:
stage: build
tags:
- mvn-docker
rules:
- if: $RELEASE_VERSION == "" && $CI_COMMIT_TAG == null && $CI_PIPELINE_SOURCE != "schedule"
script:
mvn -s maven/settings.xml $MAVEN_CLI_OPTS -B clean install source:jar deploy
scan-for-vulnerabilities:
stage: build
tags:
- mvn-docker
script:
- mvn -s maven/settings.xml $MAVEN_CLI_OPTS dependency-check:aggregate
artifacts:
paths:
- target/dependency-check-report.html
rules:
- if: $CI_PIPELINE_SOURCE == "schedule"
......@@ -2,4 +2,4 @@
Passive identity management (IDM) application, developed first as part of the bwIdm project.
[User Guide](https://git.scc.kit.edu/simon/reg-app/wikis/home)
[User Guide](https://gitlab.kit.edu/kit/reg-app/regapp/-/wikis/home)
......@@ -8,89 +8,241 @@
Contributors:
Michael Simon - initial
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>bwreg-ear</artifactId>
<packaging>ear</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
<parent>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg</artifactId>
<version>2.5.10</version>
<version>${revision}</version>
</parent>
<dependencies>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-jpa</artifactId>
<version>2.5.10</version>
<type>ejb</type>
<artifactId>bwreg-entities</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-service</artifactId>
<version>2.5.10</version>
<artifactId>regapp-as</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-audit</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-config</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-drools</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-ejb-service</artifactId>
<version>${project.version}</version>
<type>ejb</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-webapp</artifactId>
<version>2.5.10</version>
<type>war</type>
<artifactId>regapp-event-api</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>opensaml</artifactId>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-exc</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk15on</artifactId>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-idty</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-job-api</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.vt.middleware</groupId>
<artifactId>vt-ldap</artifactId>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-jpa-api</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-jpa-impl</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-oidc</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-oidc-op</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-oidc-rp</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-reg-api</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-reg-impl</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-reg-ldap</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-saml</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-saml-idp</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-saml-sp</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-session</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-tools</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-twofa</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-template</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-mail</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-sshkey</artifactId>
<version>${project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.kie</groupId>
<artifactId>kie-api</artifactId>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-lib</artifactId>
<version>${revision}</version>
<type>ejb</type>
</dependency>
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-core</artifactId>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-jpa</artifactId>
<version>${project.version}</version>
<type>ejb</type>
</dependency>
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-compiler</artifactId>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-service</artifactId>
<version>${project.version}</version>
<type>ejb</type>
</dependency>
<dependency>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-webapp</artifactId>
<version>${project.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<groupId>org.openjdk.nashorn</groupId>
<artifactId>nashorn-core</artifactId>
</dependency>
<dependency>
<groupId>jcifs</groupId>
<artifactId>jcifs</artifactId>
<groupId>ch.ethz.ganymed</groupId>
<artifactId>ganymed-ssh2</artifactId>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<groupId>org.primefaces</groupId>
<artifactId>primefaces</artifactId>
<classifier>jakarta</classifier>
</dependency>
<dependency>
<groupId>org.primefaces.extensions</groupId>
<artifactId>primefaces-extensions</artifactId>
<classifier>jakarta</classifier>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
<dependency>
......@@ -99,15 +251,22 @@
</dependency>
<dependency>
<groupId>ch.ethz.ganymed</groupId>
<artifactId>ganymed-ssh2</artifactId>
<groupId>edu.vt.middleware</groupId>
<artifactId>vt-ldap</artifactId>
<exclusions>
<exclusion>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- dom4j to override vt-ldap dom4j -->
<dependency>
<groupId>org.dom4j</groupId>
<artifactId>dom4j</artifactId>
<groupId>dom4j</groupId>
<scope>provided</scope>
</dependency>
</dependency>
</dependencies>
......@@ -118,12 +277,18 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<version>2.8</version>
<version>3.3.0</version>
<configuration>
<version>6</version>
<applicationName>bwreg</applicationName>
<displayName>Registration Webapp</displayName>
<modules>
<jarModule>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-entities</artifactId>
<bundleFileName>bwreg-entities.jar</bundleFileName>
<moduleId>bwreg-entities</moduleId>
</jarModule>
<ejbModule>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-jpa</artifactId>
......@@ -136,16 +301,38 @@
<bundleFileName>bwreg-service.jar</bundleFileName>
<moduleId>bwreg-service</moduleId>
</ejbModule>
<ejbModule>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-lib</artifactId>
<bundleFileName>bwreg-lib.jar</bundleFileName>
<moduleId>bwreg-lib</moduleId>
</ejbModule>
<ejbModule>
<groupId>edu.kit.scc</groupId>
<artifactId>regapp-ejb-service</artifactId>
<bundleFileName>regapp-ejb-service.jar</bundleFileName>
<moduleId>regapp-ejb-service</moduleId>
</ejbModule>
<webModule>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg-webapp</artifactId>
<bundleFileName>bwreg-webapp.war</bundleFileName>
<contextRoot>/</contextRoot>
<moduleId>bwreg-webapp</moduleId>
</webModule>
</modules>
</modules>
<defaultLibBundleDir>lib</defaultLibBundleDir>
<initializeInOrder>true</initializeInOrder>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Add-Opens>java.base/java.net</Add-Opens>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugin>
</plugins>
</build>
......
<?xml version="1.0"?>
<jboss-deployment-structure
xmlns="urn:jboss:deployment-structure:1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<deployment>
<dependencies>
<module name="asm.asm" />
<module name="jdk.dynalink" />
<module name="sun.jdk" export="true">
<imports>
<include path="sun/misc/Unsafe" />
</imports>
</module>
</dependencies>
</deployment>
</jboss-deployment-structure>
\ No newline at end of file
/.apt_generated/
/.apt_generated_tests/
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>edu.kit.scc</groupId>
<artifactId>bwreg</artifactId>
<version>${revision}</version>
</parent>
<packaging>jar</packaging>
<artifactId>bwreg-entities</artifactId>
<!-- <dependencyManagement> <dependencies> <dependency>
<groupId>org.wildfly.bom</groupId>
<artifactId>wildfly-javaee8-with-tools</artifactId>
<version>17.0.1.Final</version>
<type>pom</type> <scope>import</scope> <optional>false</optional> </dependency>
</dependencies> </dependencyManagement> -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
<dependencies>
<dependency>
<groupId>jakarta.platform</groupId>
<artifactId>jakarta.jakartaee-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hibernate.orm</groupId>
<artifactId>hibernate-core</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>4.5</version>
<executions>
<execution>
<id>process</id>
<goals>
<goal>process</goal>
</goals>
<phase>generate-sources</phase>
<configuration>
<processors>
<processor>
org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor>
</processors>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.hibernate.orm</groupId>
<artifactId>hibernate-jpamodelgen</artifactId>
<version>6.3.1.Final</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>
\ No newline at end of file
......@@ -13,16 +13,21 @@ package edu.kit.scc.webreg.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import javax.persistence.PrePersist;
import javax.persistence.PreUpdate;
import jakarta.persistence.Column;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.MappedSuperclass;
import jakarta.persistence.PrePersist;
import jakarta.persistence.PreUpdate;
import jakarta.persistence.Version;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@MappedSuperclass
public abstract class AbstractBaseEntity implements BaseEntity<Long>, Serializable {
public abstract class AbstractBaseEntity implements BaseEntity, Serializable {
private static final long serialVersionUID = 1L;
......@@ -30,35 +35,32 @@ public abstract class AbstractBaseEntity implements BaseEntity<Long>, Serializab
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
protected Long id;
@Column(name = "created_at")
protected Date createdAt;
@Column(name = "updated_at")
protected Date updatedAt;
@Column(name = "version")
protected Integer version;
@SuppressWarnings("unchecked")
@Column(name = "version", columnDefinition = "integer DEFAULT 0", nullable = false)
@Version
protected Integer version = 0;
public boolean equals(Object other) {
if (other == null) return false;
return this.getClass().equals(other.getClass()) &&
(getId() != null)
? getId().equals(((BaseEntity<Long>) other).getId())
: (other == this);
if (other == null)
return false;
return this.getClass().equals(other.getClass()) && (getId() != null)
? getId().equals(((BaseEntity) other).getId())
: (other == this);
}
public int hashCode() {
return (getId() != null)
? (getClass().hashCode() + getId().hashCode())
: super.hashCode();
return (getId() != null) ? (getClass().hashCode() + getId().hashCode()) : super.hashCode();
}
@PrePersist
public void prePersist() {
setVersion(new Integer(0));
Date d = new Date();
setCreatedAt(d);
setUpdatedAt(d);
......@@ -66,42 +68,6 @@ public abstract class AbstractBaseEntity implements BaseEntity<Long>, Serializab
@PreUpdate
public void preUpdate() {
if (getVersion() == null)
setVersion(new Integer(0));
setVersion(getVersion() + 1);
setUpdatedAt(new Date());
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Integer getVersion() {
return version;
}
public void setVersion(Integer version) {
this.version = version;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
}
......@@ -12,34 +12,21 @@ package edu.kit.scc.webreg.entity;
import java.util.Set;
import javax.persistence.Entity;
import javax.persistence.OneToMany;
import jakarta.persistence.Entity;
import jakarta.persistence.OneToMany;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity(name = "AdminRoleEntity")
public class AdminRoleEntity extends RoleEntity {
private static final long serialVersionUID = 1L;
@OneToMany(targetEntity=ServiceEntity.class, mappedBy="adminRole")
@OneToMany(targetEntity = ServiceEntity.class, mappedBy = "adminRole")
private Set<ServiceEntity> adminForServices;
@OneToMany(targetEntity=ServiceEntity.class, mappedBy="hotlineRole")
@OneToMany(targetEntity = ServiceEntity.class, mappedBy = "hotlineRole")
private Set<ServiceEntity> hotlineForServices;
public Set<ServiceEntity> getAdminForServices() {
return adminForServices;
}
public void setAdminForServices(Set<ServiceEntity> adminForServices) {
this.adminForServices = adminForServices;
}
public Set<ServiceEntity> getHotlineForServices() {
return hotlineForServices;
}
public void setHotlineForServices(Set<ServiceEntity> hotlineForServices) {
this.hotlineForServices = hotlineForServices;
}
}
......@@ -12,66 +12,36 @@ package edu.kit.scc.webreg.entity;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.Table;
import jakarta.persistence.CascadeType;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.JoinTable;
import jakarta.persistence.ManyToMany;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity(name = "AdminUserEntity")
@Table(name = "adminusertable")
public class AdminUserEntity extends AbstractBaseEntity {
private static final long serialVersionUID = 1L;
@Column(name = "username", length = 256, unique = true, nullable = false)
private String username;
@Column(name = "password", length = 256, nullable = false)
@Getter
@Setter
private String password;
@Column(name = "description", length = 512)
private String description;
@ManyToMany(targetEntity=RoleEntity.class, cascade = CascadeType.ALL)
@JoinTable(name = "adminuser_role",
joinColumns = @JoinColumn(name="admin_user_id"),
inverseJoinColumns = @JoinColumn(name="role_id")
)
private Set<RoleEntity> roles;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public Set<RoleEntity> getRoles() {
return roles;
}
public void setRoles(Set<RoleEntity> roles) {
this.roles = roles;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@ManyToMany(targetEntity = RoleEntity.class, cascade = CascadeType.ALL)
@JoinTable(name = "adminuser_role", joinColumns = @JoinColumn(name = "admin_user_id"), inverseJoinColumns = @JoinColumn(name = "role_id"))
private Set<RoleEntity> roles;
}
......@@ -10,52 +10,47 @@
******************************************************************************/
package edu.kit.scc.webreg.entity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import org.hibernate.annotations.Type;
import java.sql.Types;
import java.util.Map;
import org.hibernate.annotations.JdbcTypeCode;
import jakarta.persistence.Column;
import jakarta.persistence.ElementCollection;
import jakarta.persistence.Entity;
import jakarta.persistence.FetchType;
import jakarta.persistence.JoinTable;
import jakarta.persistence.Lob;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.MapKeyColumn;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity(name = "AgreementTextEntity")
@Table(name = "agreement_text")
public class AgreementTextEntity extends AbstractBaseEntity {
private static final long serialVersionUID = 1L;
@Column(name = "agreement")
@Lob
@Type(type = "org.hibernate.type.TextType")
@JdbcTypeCode(Types.LONGVARCHAR)
private String agreement;
@ElementCollection(fetch = FetchType.EAGER)
@JoinTable(name = "agreement_text_i18")
@MapKeyColumn(name = "key_data", length = 128)
@Column(name = "value_data")
@Lob
@JdbcTypeCode(Types.LONGVARCHAR)
private Map<String, String> agreementMap;
@Column(name = "name", length = 128)
private String name;
@ManyToOne(targetEntity = PolicyEntity.class)
private PolicyEntity policy;
public String getAgreement() {
return agreement;
}
public void setAgreement(String agreement) {
this.agreement = agreement;
}
public PolicyEntity getPolicy() {
return policy;
}
public void setPolicy(PolicyEntity policy) {
this.policy = policy;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
......@@ -3,14 +3,18 @@ package edu.kit.scc.webreg.entity;
import java.util.Date;
import java.util.Map;
import javax.persistence.Column;
import javax.persistence.ElementCollection;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinTable;
import javax.persistence.MapKeyColumn;
import javax.persistence.Table;
import jakarta.persistence.Column;
import jakarta.persistence.ElementCollection;
import jakarta.persistence.Entity;
import jakarta.persistence.FetchType;
import jakarta.persistence.JoinTable;
import jakarta.persistence.MapKeyColumn;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity(name = "ApplicationConfigEntity")
@Table(name = "application_config")
public class ApplicationConfigEntity extends AbstractBaseEntity {
......@@ -19,10 +23,10 @@ public class ApplicationConfigEntity extends AbstractBaseEntity {
@Column(name = "format_version", length = 128)
private String configFormatVersion;
@Column(name = "sub_version", length = 128)
private String subVersion;
@Column(name = "activeConfig")
private Boolean activeConfig;
......@@ -31,48 +35,7 @@ public class ApplicationConfigEntity extends AbstractBaseEntity {
@ElementCollection(fetch = FetchType.EAGER)
@JoinTable(name = "application_config_options")
@MapKeyColumn(name = "key_data", length = 128)
@Column(name = "value_data", length = 2048)
private Map<String, String> configOptions;
public String getSubVersion() {
return subVersion;
}
public void setSubVersion(String subVersion) {
this.subVersion = subVersion;
}
public Boolean getActiveConfig() {
return activeConfig;
}
public void setActiveConfig(Boolean activeConfig) {
this.activeConfig = activeConfig;
}
public Map<String, String> getConfigOptions() {
return configOptions;
}
public void setConfigOptions(Map<String, String> configOptions) {
this.configOptions = configOptions;
}
public String getConfigFormatVersion() {
return configFormatVersion;
}
public void setConfigFormatVersion(String configFormatVersion) {
this.configFormatVersion = configFormatVersion;
}
public Date getDirtyStamp() {
return dirtyStamp;
}
public void setDirtyStamp(Date dirtyStamp) {
this.dirtyStamp = dirtyStamp;
}
@MapKeyColumn(name = "key_data", length = 128)
@Column(name = "value_data", length = 2048)
private Map<String, String> configOptions;
}
......@@ -12,11 +12,15 @@ package edu.kit.scc.webreg.entity;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.OneToMany;
import javax.validation.constraints.NotNull;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.OneToMany;
import jakarta.validation.constraints.NotNull;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity(name = "ApproverRoleEntity")
public class ApproverRoleEntity extends RoleEntity {
......@@ -26,22 +30,6 @@ public class ApproverRoleEntity extends RoleEntity {
private Set<ServiceEntity> approverForServices;
@NotNull
@Column(name="approval_bean", length=255)
@Column(name = "approval_bean", length = 255)
private String approvalBean;
public Set<ServiceEntity> getApproverForServices() {
return approverForServices;
}
public void setApproverForServices(Set<ServiceEntity> approverForServices) {
this.approverForServices = approverForServices;
}
public String getApprovalBean() {
return approvalBean;
}
public void setApprovalBean(String approvalBean) {
this.approvalBean = approvalBean;
}
}
......@@ -10,8 +10,6 @@
******************************************************************************/
package edu.kit.scc.webreg.entity;
import java.io.Serializable;
public interface BaseEntity<PK extends Serializable> {
PK getId();
public interface BaseEntity {
Long getId();
}
......@@ -10,14 +10,20 @@
******************************************************************************/
package edu.kit.scc.webreg.entity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import java.sql.Types;
import org.hibernate.annotations.Type;
import org.hibernate.annotations.JdbcTypeCode;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.Lob;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity(name = "BusinessRuleEntity")
@Table(name = "business_rule")
public class BusinessRuleEntity extends AbstractBaseEntity {
......@@ -26,58 +32,18 @@ public class BusinessRuleEntity extends AbstractBaseEntity {
@Column(name = "rule_text")
@Lob
@Type(type = "org.hibernate.type.TextType")
@JdbcTypeCode(Types.LONGVARCHAR)
private String rule;
@Column(name = "rule_type", length = 32)
private String ruleType;
@Column(name = "name", length = 128)
private String name;
@Column(name = "base_name", length = 128)
private String knowledgeBaseName;
@ManyToOne(targetEntity = BusinessRulePackageEntity.class)
private BusinessRulePackageEntity rulePackage;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getRule() {
return rule;
}
public void setRule(String rule) {
this.rule = rule;
}
public String getRuleType() {
return ruleType;
}
public void setRuleType(String ruleType) {
this.ruleType = ruleType;
}
public String getKnowledgeBaseName() {
return knowledgeBaseName;
}
public void setKnowledgeBaseName(String knowledgeBaseName) {
this.knowledgeBaseName = knowledgeBaseName;
}
public BusinessRulePackageEntity getRulePackage() {
return rulePackage;
}
public void setRulePackage(BusinessRulePackageEntity rulePackage) {
this.rulePackage = rulePackage;
}
}
......@@ -13,12 +13,16 @@ package edu.kit.scc.webreg.entity;
import java.util.Date;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.OneToMany;
import jakarta.persistence.Table;
import jakarta.validation.constraints.NotNull;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity(name = "BusinessRulePackageEntity")
@Table(name = "business_rule_package")
public class BusinessRulePackageEntity extends AbstractBaseEntity {
......@@ -38,48 +42,7 @@ public class BusinessRulePackageEntity extends AbstractBaseEntity {
@OneToMany(mappedBy = "rulePackage", targetEntity = BusinessRuleEntity.class)
private Set<BusinessRuleEntity> rules;
@Column(name = "dirty_stamp")
private Date dirtyStamp;
public String getKnowledgeBaseName() {
return knowledgeBaseName;
}
public void setKnowledgeBaseName(String knowledgeBaseName) {
this.knowledgeBaseName = knowledgeBaseName;
}
public String getKnowledgeBaseVersion() {
return knowledgeBaseVersion;
}
public void setKnowledgeBaseVersion(String knowledgeBaseVersion) {
this.knowledgeBaseVersion = knowledgeBaseVersion;
}
public Set<BusinessRuleEntity> getRules() {
return rules;
}
public void setRules(Set<BusinessRuleEntity> rules) {
this.rules = rules;
}
public String getPackageName() {
return packageName;
}
public void setPackageName(String packageName) {
this.packageName = packageName;
}
public Date getDirtyStamp() {
return dirtyStamp;
}
public void setDirtyStamp(Date dirtyStamp) {
this.dirtyStamp = dirtyStamp;
}
}
package edu.kit.scc.webreg.entity;
import java.util.Date;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.EnumType;
import jakarta.persistence.Enumerated;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Entity(name = "ClusterMemberEntity")
@Table(name = "cluster_member")
public class ClusterMemberEntity extends AbstractBaseEntity {
private static final long serialVersionUID = 1L;
@Column(name = "node_name", length = 128)
private String nodeName;
@Enumerated(EnumType.STRING)
private ClusterMemberStatus clusterMemberStatus;
@Column(name = "last_status_change")
private Date lastStatusChange;
@Column(name = "last_status_check")
private Date lastStatusCheck;
@Enumerated(EnumType.STRING)
private ClusterSchedulerStatus clusterSchedulerStatus;
@Column(name = "last_scheduler_status_change")
private Date lastSchedulerStatusChange;
}
/*******************************************************************************
* Copyright (c) 2014 Michael Simon.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the GNU Public License v3.0
* which accompanies this distribution, and is available at
* http://www.gnu.org/licenses/gpl.html
*
* Contributors:
* Michael Simon - initial
******************************************************************************/
package edu.kit.scc.webreg.entity;
public enum ClusterMemberStatus {
ONLINE, OFFLINE, DEAD
}
......@@ -8,10 +8,10 @@
* Contributors:
* Michael Simon - initial
******************************************************************************/
package edu.kit.scc.webreg.service;
package edu.kit.scc.webreg.entity;
import edu.kit.scc.webreg.entity.JobClassEntity;
public enum ClusterSchedulerStatus {
public interface JobClassService extends BaseService<JobClassEntity, Long> {
MASTER, PASSIVE
}