This commit is contained in:
@@ -1,25 +1,8 @@
|
||||
buildscript {
|
||||
configurations.classpath {
|
||||
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
|
||||
if (details.requested.group == 'com.burgstaller' && details.requested.name == 'okhttp-digest' && details.requested.version == '1.10') {
|
||||
details.useTarget "io.github.rburgst:${details.requested.name}:1.21"
|
||||
details.because 'Dependency has moved'
|
||||
}
|
||||
}
|
||||
}
|
||||
repositories {
|
||||
mavenCentral()
|
||||
maven { setUrl("https://nexus.thpeetz.de/repository/maven-central") }
|
||||
maven { setUrl("https://maven.vaadin.com/vaadin-prereleases") }
|
||||
maven { setUrl("https://repo.spring.io/milestone") }
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id 'java'
|
||||
id 'application'
|
||||
id 'maven-publish'
|
||||
id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.0"
|
||||
//id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.0"
|
||||
id 'jvm-test-suite'
|
||||
id 'jacoco'
|
||||
id 'test-report-aggregation'
|
||||
@@ -28,6 +11,9 @@ plugins {
|
||||
alias(libs.plugins.spring.dependencies)
|
||||
alias(libs.plugins.vaadin)
|
||||
alias(libs.plugins.lombok)
|
||||
//id 'com.github.ksoichiro.build.info' version '0.2.0'
|
||||
//id 'com.pasam.gradle.buildinfo' version '0.1.3'
|
||||
id 'com.gorylenko.gradle-git-properties' version '4.0.1'
|
||||
}
|
||||
|
||||
repositories {
|
||||
@@ -125,6 +111,10 @@ bootRun {
|
||||
args = ["--spring.profiles.active=${project.properties['profile'] ?: 'prod'}"]
|
||||
}
|
||||
|
||||
springBoot {
|
||||
buildInfo()
|
||||
}
|
||||
|
||||
task dockerImage(type: Exec) {
|
||||
dependsOn(bootJar)
|
||||
commandLine "docker", "build", ".", "-t", "kontor:${project.version}"
|
||||
|
||||
@@ -9,6 +9,7 @@ import de.thpeetz.kontor.security.SecurityService;
|
||||
import de.thpeetz.kontor.services.AdminService;
|
||||
import de.thpeetz.kontor.views.common.KontorLayoutUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.info.BuildProperties;
|
||||
|
||||
@Slf4j
|
||||
public class AdminLayout extends AppLayout {
|
||||
@@ -19,11 +20,15 @@ public class AdminLayout extends AppLayout {
|
||||
@SuppressWarnings("unused")
|
||||
private final SecurityService securityService;
|
||||
|
||||
public AdminLayout(AdminService adminService, SecurityService securityService) {
|
||||
@SuppressWarnings("unused")
|
||||
private final BuildProperties buildProperties;
|
||||
|
||||
public AdminLayout(AdminService adminService, SecurityService securityService, BuildProperties buildProperties) {
|
||||
this.adminService = adminService;
|
||||
this.securityService = securityService;
|
||||
this.buildProperties = buildProperties;
|
||||
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService);
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService, buildProperties);
|
||||
layout.setSecondaryNavigation(getSecondaryNavigation());
|
||||
layout.createHeader(AdminConstants.ADMIN_TITLE);
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import de.thpeetz.kontor.constants.BookshelfConstants;
|
||||
import de.thpeetz.kontor.security.SecurityService;
|
||||
import de.thpeetz.kontor.services.AdminService;
|
||||
import de.thpeetz.kontor.views.common.KontorLayoutUtil;
|
||||
import org.springframework.boot.info.BuildProperties;
|
||||
|
||||
public class BookshelfLayout extends AppLayout {
|
||||
|
||||
@@ -17,11 +18,15 @@ public class BookshelfLayout extends AppLayout {
|
||||
@SuppressWarnings("unused")
|
||||
private final SecurityService securityService;
|
||||
|
||||
public BookshelfLayout(AdminService adminService, SecurityService securityService) {
|
||||
@SuppressWarnings("unused")
|
||||
private final BuildProperties buildProperties;
|
||||
|
||||
public BookshelfLayout(AdminService adminService, SecurityService securityService, BuildProperties buildProperties) {
|
||||
this.adminService = adminService;
|
||||
this.securityService = securityService;
|
||||
this.buildProperties = buildProperties;
|
||||
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService);
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService, buildProperties);
|
||||
layout.setSecondaryNavigation(getSecondaryNavigation());
|
||||
layout.createHeader(BookshelfConstants.BOOKSHELF);
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import de.thpeetz.kontor.security.SecurityService;
|
||||
import de.thpeetz.kontor.services.AdminService;
|
||||
import de.thpeetz.kontor.views.common.KontorLayoutUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.info.BuildProperties;
|
||||
|
||||
/**
|
||||
* Represents a custom layout for the comic view in the application.
|
||||
@@ -21,11 +22,14 @@ public class ComicLayout extends AppLayout {
|
||||
|
||||
private final SecurityService securityService;
|
||||
|
||||
public ComicLayout(AdminService adminService, SecurityService securityService) {
|
||||
private final BuildProperties buildProperties;
|
||||
|
||||
public ComicLayout(AdminService adminService, SecurityService securityService, BuildProperties buildProperties) {
|
||||
this.adminService = adminService;
|
||||
this.securityService = securityService;
|
||||
this.buildProperties = buildProperties;
|
||||
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService);
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService, buildProperties);
|
||||
layout.setSecondaryNavigation(getSecondaryNavigation());
|
||||
layout.createHeader(ComicConstants.COMICS);
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import de.thpeetz.kontor.security.SecurityService;
|
||||
import de.thpeetz.kontor.services.AdminService;
|
||||
import de.thpeetz.kontor.views.admin.UserProfileView;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.info.BuildProperties;
|
||||
|
||||
@Slf4j
|
||||
@Route("avatar-menu-bar")
|
||||
@@ -21,9 +22,12 @@ public class AvatarMenuBar extends Div {
|
||||
|
||||
final AdminService adminService;
|
||||
|
||||
public AvatarMenuBar(SecurityService securityService, AdminService adminService) {
|
||||
private final BuildProperties buildProperties;
|
||||
|
||||
public AvatarMenuBar(SecurityService securityService, AdminService adminService, BuildProperties buildProperties) {
|
||||
this.adminService = adminService;
|
||||
this.securityService = securityService;
|
||||
this.buildProperties = buildProperties;
|
||||
|
||||
Avatar avatar = new Avatar();
|
||||
securityService.getAuthenticatedUser().ifPresent(user -> {
|
||||
@@ -45,6 +49,10 @@ public class AvatarMenuBar extends Div {
|
||||
profileItem.addClickListener(e -> profileItem.getUI().ifPresent(ui -> ui.navigate(UserProfileView.class)));
|
||||
subMenu.addItem("Settings");
|
||||
subMenu.addItem("Help");
|
||||
subMenu.addSeparator();
|
||||
subMenu.addItem("Version");
|
||||
subMenu.addItem(this.buildProperties.getVersion());
|
||||
subMenu.addItem(this.buildProperties.getTime().toString());
|
||||
add(menuBar);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ import de.thpeetz.kontor.security.SecurityService;
|
||||
import de.thpeetz.kontor.services.AdminService;
|
||||
import lombok.*;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.info.BuildProperties;
|
||||
|
||||
@Slf4j
|
||||
public class KontorLayoutUtil {
|
||||
@@ -33,9 +34,12 @@ public class KontorLayoutUtil {
|
||||
|
||||
private final SecurityService securityService;
|
||||
|
||||
public KontorLayoutUtil(AppLayout layout, AdminService adminService, SecurityService securityService) {
|
||||
private final BuildProperties buildProperties;
|
||||
|
||||
public KontorLayoutUtil(AppLayout layout, AdminService adminService, SecurityService securityService, BuildProperties buildProperties) {
|
||||
this.adminService = adminService;
|
||||
this.securityService = securityService;
|
||||
this.buildProperties = buildProperties;
|
||||
this.appLayout = layout;
|
||||
}
|
||||
|
||||
@@ -65,7 +69,7 @@ public class KontorLayoutUtil {
|
||||
viewTitle.addClassNames(LumoUtility.FontSize.LARGE, LumoUtility.Margin.NONE);
|
||||
HorizontalLayout subViews = this.secondaryNavigation;
|
||||
|
||||
AvatarMenuBar avatar = new AvatarMenuBar(securityService, adminService);
|
||||
AvatarMenuBar avatar = new AvatarMenuBar(securityService, adminService, buildProperties);
|
||||
HorizontalLayout wrapper = new HorizontalLayout(toggle, viewTitle, avatar);
|
||||
wrapper.setDefaultVerticalComponentAlignment(FlexComponent.Alignment.CENTER);
|
||||
wrapper.expand(viewTitle);
|
||||
|
||||
@@ -24,6 +24,7 @@ import de.thpeetz.kontor.services.AdminService;
|
||||
import de.thpeetz.kontor.views.DataManagementView;
|
||||
import de.thpeetz.kontor.views.EmailView;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.info.BuildProperties;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -34,9 +35,12 @@ public class MainLayout extends AppLayout {
|
||||
|
||||
private final SecurityService securityService;
|
||||
|
||||
public MainLayout(AdminService adminService, SecurityService securityService) {
|
||||
private final BuildProperties buildProperties;
|
||||
|
||||
public MainLayout(AdminService adminService, SecurityService securityService, BuildProperties buildProperties) {
|
||||
this.adminService = adminService;
|
||||
this.securityService = securityService;
|
||||
this.buildProperties = buildProperties;
|
||||
|
||||
createHeader("Kontor");
|
||||
createDrawer();
|
||||
@@ -57,7 +61,7 @@ public class MainLayout extends AppLayout {
|
||||
H2 viewTitle = new H2(titleName);
|
||||
viewTitle.addClassNames(LumoUtility.FontSize.LARGE, LumoUtility.Margin.NONE);
|
||||
|
||||
AvatarMenuBar avatar = new AvatarMenuBar(securityService, adminService);
|
||||
AvatarMenuBar avatar = new AvatarMenuBar(securityService, adminService, buildProperties);
|
||||
HorizontalLayout wrapper = new HorizontalLayout(toggle, viewTitle, avatar);
|
||||
wrapper.setDefaultVerticalComponentAlignment(FlexComponent.Alignment.CENTER);
|
||||
wrapper.expand(viewTitle);
|
||||
|
||||
@@ -3,15 +3,16 @@ package de.thpeetz.kontor.views.common;
|
||||
import com.vaadin.flow.component.applayout.AppLayout;
|
||||
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
|
||||
import com.vaadin.flow.theme.lumo.LumoUtility;
|
||||
import org.springframework.boot.info.BuildProperties;
|
||||
|
||||
import de.thpeetz.kontor.security.SecurityService;
|
||||
import de.thpeetz.kontor.services.AdminService;
|
||||
|
||||
public class SeparateMainLayout extends AppLayout {
|
||||
|
||||
public SeparateMainLayout(AdminService adminService, SecurityService securityService) {
|
||||
public SeparateMainLayout(AdminService adminService, SecurityService securityService, BuildProperties buildProperties) {
|
||||
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService);
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService, buildProperties);
|
||||
layout.setSecondaryNavigation(getSecondaryNavigation());
|
||||
layout.createHeader("Kontor");
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import de.thpeetz.kontor.security.SecurityService;
|
||||
import de.thpeetz.kontor.services.AdminService;
|
||||
import de.thpeetz.kontor.views.common.KontorLayoutUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.boot.info.BuildProperties;
|
||||
|
||||
/**
|
||||
* Represents a custom layout for the comic view in the application.
|
||||
@@ -21,11 +22,14 @@ public class TyscLayout extends AppLayout {
|
||||
|
||||
private final SecurityService securityService;
|
||||
|
||||
public TyscLayout(AdminService adminService, SecurityService securityService) {
|
||||
private final BuildProperties buildProperties;
|
||||
|
||||
public TyscLayout(AdminService adminService, SecurityService securityService, BuildProperties buildProperties) {
|
||||
this.adminService = adminService;
|
||||
this.securityService = securityService;
|
||||
this.buildProperties = buildProperties;
|
||||
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService);
|
||||
KontorLayoutUtil layout = new KontorLayoutUtil(this, adminService, securityService, buildProperties);
|
||||
layout.setSecondaryNavigation(getSecondaryNavigation());
|
||||
layout.createHeader(TyscConstants.TYSC);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
app:
|
||||
name: 'Kontor'
|
||||
shortName: 'Kontor'
|
||||
description: 'Kontor is a Spring Boot application'
|
||||
name: "Kontor"
|
||||
shortName: "Kontor"
|
||||
description: "Kontor is a Spring Boot application"
|
||||
spring:
|
||||
profiles:
|
||||
active: local,dev,test,prod
|
||||
@@ -39,6 +39,9 @@ management:
|
||||
web:
|
||||
exposure:
|
||||
include: health,info,metrics,prometheus,camelroutes
|
||||
info:
|
||||
git:
|
||||
mode: full
|
||||
endpoint:
|
||||
health:
|
||||
show-details: always
|
||||
@@ -61,15 +64,15 @@ logging:
|
||||
springframework:
|
||||
controllers: DEBUG
|
||||
jwt:
|
||||
auth:
|
||||
secret: 'J6GOtcwC2NJI1l0VkHu20PacPFGTxpirBxWwynoHjsc='
|
||||
auth:
|
||||
secret: "J6GOtcwC2NJI1l0VkHu20PacPFGTxpirBxWwynoHjsc="
|
||||
mail:
|
||||
protocol: 'imap'
|
||||
host: 'corky.svpdata.eu'
|
||||
port: 143
|
||||
userName: 'thomas.peetz@thpeetz.de'
|
||||
password: 'fS9f4JYDIO7A'
|
||||
starttls: true
|
||||
protocol: "imap"
|
||||
host: "corky.svpdata.eu"
|
||||
port: 143
|
||||
userName: "thomas.peetz@thpeetz.de"
|
||||
password: "fS9f4JYDIO7A"
|
||||
starttls: true
|
||||
---
|
||||
spring:
|
||||
config:
|
||||
@@ -77,8 +80,8 @@ spring:
|
||||
on-profile: prod
|
||||
datasource:
|
||||
url: jdbc:postgresql://postgres:5432/kontor
|
||||
username: 'kontor'
|
||||
password: 'kontor'
|
||||
username: "kontor"
|
||||
password: "kontor"
|
||||
artemis:
|
||||
mode: native
|
||||
broker-url: tcp://activemq:61616
|
||||
|
||||
Reference in New Issue
Block a user