Skip to content

Commit 8a51e63

Browse files
committed
Merge branch 'feature/update_dependencies' into feature/#165_Rest-API-New
# Conflicts: # pom.xml # src/main/java/de/doubleslash/keeptime/model/Model.java # src/main/java/de/doubleslash/keeptime/model/Project.java # src/main/java/de/doubleslash/keeptime/model/Work.java # src/main/java/de/doubleslash/keeptime/view/SettingsController.java
2 parents fb2535f + cc804ea commit 8a51e63

File tree

23 files changed

+212
-198
lines changed

23 files changed

+212
-198
lines changed

.github/workflows/mavenCi.yml

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,15 @@ jobs:
1919
runs-on: ubuntu-latest
2020

2121
env:
22-
version: 1.3.${{ github.run_number }}
22+
version: 2.0.${{ github.run_number }}
2323

2424
steps:
2525
- uses: actions/checkout@v3
2626

27-
- name: Set up JDK 11
27+
- name: Set up JDK 17
2828
uses: actions/setup-java@v3
2929
with:
30-
java-version: '11'
30+
java-version: '17'
3131
distribution: 'corretto'
3232
cache: maven
3333

@@ -37,7 +37,7 @@ jobs:
3737
languages: 'java'
3838

3939
- name: Build
40-
run: mvn -V -B clean package org.jacoco:jacoco-maven-plugin:0.8.7:prepare-agent org.jacoco:jacoco-maven-plugin:0.8.7:report -Pcoverage -Dproject.version=${{ env.version }}-SNAPSHOT
40+
run: mvn -V -B clean package org.jacoco:jacoco-maven-plugin:0.8.7:prepare-agent org.jacoco:jacoco-maven-plugin:0.8.7:report -Pcoverage -Dproject.version=${{ env.version }}-SNAPSHOT -Djava.awt.headless=true -Dtestfx.robot=glass -Dtestfx.headless=true
4141

4242
- name: Upload Build Artifact
4343
uses: actions/upload-artifact@v3
@@ -49,12 +49,7 @@ jobs:
4949
env:
5050
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5151
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
52-
run: mvn -V -B sonar:sonar
53-
-Dsonar.host.url=${{ secrets.HOST_URL }}
54-
-Dsonar.organization=${{ secrets.ORGANIZATION_NAME }}
55-
-Dsonar.projectKey=${{ secrets.PROJECT_KEY }}
56-
-Dsonar.java.binaries=.
57-
-Dsonar.qualitygate.wait=false
52+
run: mvn -V -B sonar:sonar -Dsonar.host.url=${{ secrets.HOST_URL }} -Dsonar.organization=${{ secrets.ORGANIZATION_NAME }} -Dsonar.projectKey=${{ secrets.PROJECT_KEY }} -Dsonar.java.binaries=. -Dsonar.qualitygate.wait=false
5853

5954
- name: Perform CodeQL Analysis
6055
uses: github/codeql-action/analyze@v2
@@ -66,10 +61,10 @@ jobs:
6661
steps:
6762
- uses: actions/checkout@v3
6863

69-
- name: Set up JDK 11
64+
- name: Set up JDK 17
7065
uses: actions/setup-java@v3
7166
with:
72-
java-version: '11'
67+
java-version: '17'
7368
distribution: 'corretto'
7469
cache: maven
7570

pom.xml

Lines changed: 106 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,29 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3-
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
44
<modelVersion>4.0.0</modelVersion>
55

6+
<parent>
7+
<groupId>org.springframework.boot</groupId>
8+
<artifactId>spring-boot-starter-parent</artifactId>
9+
<version>3.1.3</version>
10+
<relativePath />
11+
<!-- lookup parent from repository -->
12+
</parent>
613
<groupId>de.doubleslash</groupId>
714
<artifactId>keeptime</artifactId>
8-
<version>${project.version}</version>
9-
<packaging>jar</packaging>
15+
<version>2.0.0-SNAPSHOT</version>
1016

17+
<packaging>jar</packaging>
1118
<name>KeepTime</name>
19+
1220
<description>Time tracker</description>
1321

22+
<organization>
23+
<name>doubleSlash Net-Business GmbH</name>
24+
<url>https://www.doubleslash.de/</url>
25+
</organization>
26+
1427
<licenses>
1528
<license>
1629
<name>GNU General Public License (GPL) version 3.0</name>
@@ -19,24 +32,11 @@
1932
</license>
2033
</licenses>
2134

22-
<organization>
23-
<name>doubleSlash Net-Business GmbH</name>
24-
<url>https://www.doubleslash.de/</url>
25-
</organization>
26-
27-
<parent>
28-
<groupId>org.springframework.boot</groupId>
29-
<artifactId>spring-boot-starter-parent</artifactId>
30-
<version>2.7.5</version>
31-
<relativePath/> <!-- lookup parent from repository -->
32-
</parent>
33-
3435
<properties>
35-
<project.version>1.3.0-SNAPSHOT</project.version>
3636
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3737
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
38-
<maven.compiler.source>11</maven.compiler.source>
39-
<maven.compiler.target>11</maven.compiler.target>
38+
<java.version>17</java.version>
39+
<javafx.version>20.0.1</javafx.version>
4040

4141
<maven-dependency-check.version>8.0.2</maven-dependency-check.version>
4242
<!-- USING HTML,XML (comma-separated list) did not work with plugin version 5.1.0 -->
@@ -47,6 +47,16 @@
4747
</properties>
4848

4949
<dependencies>
50+
<dependency>
51+
<groupId>javax.persistence</groupId>
52+
<artifactId>javax.persistence-api</artifactId>
53+
<version>2.2</version>
54+
</dependency>
55+
<dependency>
56+
<groupId>javax.validation</groupId>
57+
<artifactId>validation-api</artifactId>
58+
<version>1.1.0.Final</version>
59+
</dependency>
5060
<dependency>
5161
<groupId>org.mapstruct</groupId>
5262
<artifactId>mapstruct</artifactId>
@@ -61,30 +71,36 @@
6171
<dependency>
6272
<groupId>org.openjfx</groupId>
6373
<artifactId>javafx-controls</artifactId>
64-
<version>11.0.2</version>
74+
<version>${javafx.version}</version>
6575
</dependency>
6676
<dependency>
6777
<groupId>org.openjfx</groupId>
6878
<artifactId>javafx-fxml</artifactId>
69-
<version>11.0.2</version>
79+
<version>${javafx.version}</version>
7080
</dependency>
7181
<dependency>
7282
<groupId>org.openjfx</groupId>
7383
<artifactId>javafx-swing</artifactId>
74-
<version>11</version>
84+
<version>${javafx.version}</version>
7585
</dependency>
7686
<dependency>
7787
<groupId>org.openjfx</groupId>
7888
<artifactId>javafx-graphics</artifactId>
79-
<version>11.0.2</version>
89+
<version>${javafx.version}</version>
8090
<classifier>win</classifier>
8191
</dependency>
8292
<dependency>
8393
<groupId>org.openjfx</groupId>
8494
<artifactId>javafx-graphics</artifactId>
85-
<version>11.0.2</version>
95+
<version>${javafx.version}</version>
8696
<classifier>linux</classifier>
8797
</dependency>
98+
<dependency>
99+
<groupId>org.openjfx</groupId>
100+
<artifactId>javafx-graphics</artifactId>
101+
<version>${javafx.version}</version>
102+
<classifier>mac-aarch64</classifier>
103+
</dependency>
88104
<dependency>
89105
<groupId>org.springframework.boot</groupId>
90106
<artifactId>spring-boot-starter-data-jpa</artifactId>
@@ -105,6 +121,11 @@
105121
<version>3.1.3</version>
106122
</dependency>
107123

124+
<dependency>
125+
<groupId>org.glassfish.jaxb</groupId>
126+
<artifactId>jaxb-runtime</artifactId>
127+
<scope>provided</scope>
128+
</dependency>
108129

109130
<dependency>
110131
<groupId>com.h2database</groupId>
@@ -143,59 +164,24 @@
143164
<dependency>
144165
<groupId>org.hamcrest</groupId>
145166
<artifactId>hamcrest-library</artifactId>
146-
<version>2.2</version>
167+
<scope>test</scope>
168+
</dependency>
169+
<dependency>
170+
<groupId>org.testfx</groupId>
171+
<artifactId>testfx-junit5</artifactId>
172+
<version>4.0.16-alpha</version>
173+
<scope>test</scope>
174+
</dependency>
175+
<!-- https://mvnrepository.com/artifact/org.testfx/openjfx-monocle -->
176+
<dependency>
177+
<groupId>org.testfx</groupId>
178+
<artifactId>openjfx-monocle</artifactId>
179+
<version>jdk-12.0.1+2</version>
147180
<scope>test</scope>
148181
</dependency>
149182

150183

151184
</dependencies>
152-
<profiles>
153-
<profile>
154-
<id>coverage</id>
155-
<build>
156-
<plugins>
157-
<plugin>
158-
<groupId>org.apache.maven.plugins</groupId>
159-
<artifactId>maven-compiler-plugin</artifactId>
160-
<version>3.11.0</version>
161-
<configuration>
162-
<annotationProcessorPaths>
163-
<path>
164-
<groupId>org.mapstruct</groupId>
165-
<artifactId>mapstruct-processor</artifactId>
166-
<version>1.5.5.Final</version>
167-
</path>
168-
</annotationProcessorPaths>
169-
</configuration>
170-
</plugin>
171-
<plugin>
172-
<groupId>org.jacoco</groupId>
173-
<artifactId>jacoco-maven-plugin</artifactId>
174-
<version>0.8.10</version>
175-
<executions>
176-
<execution>
177-
<id>prepare-agent</id>
178-
<goals>
179-
<goal>prepare-agent</goal>
180-
</goals>
181-
</execution>
182-
<execution>
183-
<id>report</id>
184-
<goals>
185-
<goal>report</goal>
186-
</goals>
187-
<configuration>
188-
<formats>
189-
<format>XML</format>
190-
</formats>
191-
</configuration>
192-
</execution>
193-
</executions>
194-
</plugin>
195-
</plugins>
196-
</build>
197-
</profile>
198-
</profiles>
199185
<build>
200186
<plugins>
201187
<plugin>
@@ -259,7 +245,6 @@
259245
</plugin>
260246
</plugins>
261247
</build>
262-
263248
<!-- generate site with mvn site (including dependency check) -->
264249
<reporting>
265250
<plugins>
@@ -285,4 +270,52 @@
285270
</plugin>
286271
</plugins>
287272
</reporting>
288-
</project>
273+
274+
<profiles>
275+
<profile>
276+
<id>coverage</id>
277+
<build>
278+
<plugins>
279+
<plugin>
280+
<groupId>org.apache.maven.plugins</groupId>
281+
<artifactId>maven-compiler-plugin</artifactId>
282+
<version>3.11.0</version>
283+
<configuration>
284+
<annotationProcessorPaths>
285+
<path>
286+
<groupId>org.mapstruct</groupId>
287+
<artifactId>mapstruct-processor</artifactId>
288+
<version>1.5.5.Final</version>
289+
</path>
290+
</annotationProcessorPaths>
291+
</configuration>
292+
</plugin>
293+
<plugin>
294+
<groupId>org.jacoco</groupId>
295+
<artifactId>jacoco-maven-plugin</artifactId>
296+
<version>0.8.10</version>
297+
<executions>
298+
<execution>
299+
<id>prepare-agent</id>
300+
<goals>
301+
<goal>prepare-agent</goal>
302+
</goals>
303+
</execution>
304+
<execution>
305+
<id>report</id>
306+
<goals>
307+
<goal>report</goal>
308+
</goals>
309+
<configuration>
310+
<formats>
311+
<format>XML</format>
312+
</formats>
313+
</configuration>
314+
</execution>
315+
</executions>
316+
</plugin>
317+
</plugins>
318+
</build>
319+
</profile>
320+
</profiles>
321+
</project>

src/main/java/de/doubleslash/keeptime/App.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,7 @@ private void initialiseApplication(final Stage primaryStage) throws Exception {
144144
readSettings();
145145

146146
final List<Work> todaysWorkItems = model.getWorkRepository().findByStartDateOrderByStartTimeAsc(LocalDate.now());
147+
147148
LOG.info("Found {} past work items", todaysWorkItems.size());
148149
model.getPastWorkItems().addAll(todaysWorkItems);
149150

@@ -184,6 +185,7 @@ private void readSettings() {
184185
final List<Settings> settingsList = model.getSettingsRepository().findAll();
185186
final Settings settings;
186187
if (settingsList.isEmpty()) {
188+
LOG.info("Empty settings. Set default");
187189
settings = new Settings();
188190
settings.setTaskBarColor(model.taskBarColor.get());
189191

@@ -197,6 +199,7 @@ private void readSettings() {
197199
settings.setHideProjectsOnMouseExit(false);
198200
model.getSettingsRepository().save(settings);
199201
} else {
202+
LOG.info("Got settings from database");
200203
settings = settingsList.get(0);
201204
}
202205

@@ -239,7 +242,7 @@ private void initialisePopupUI(final Stage primaryStage) throws IOException {
239242
final ViewControllerPopup viewControllerPopupController = loader.getController();
240243
viewControllerPopupController.setStage(popupViewStage);
241244

242-
if (!OS.isLinux()) {
245+
if (OS.isWindows()) {
243246
globalScreenListener = new GlobalScreenListener();
244247
globalScreenListener.register(model.useHotkey.get());
245248
globalScreenListener.setViewController(viewControllerPopupController);

src/main/java/de/doubleslash/keeptime/KeepTime.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,14 @@
1616

1717
package de.doubleslash.keeptime;
1818

19+
import org.springframework.boot.autoconfigure.SpringBootApplication;
20+
import org.springframework.context.annotation.ComponentScan;
21+
import org.springframework.stereotype.Component;
22+
1923
import static javafx.application.Application.launch;
2024

25+
@SpringBootApplication
26+
@ComponentScan(basePackages = "de.doubleslash.keeptime")
2127
public class KeepTime {
2228
public static void main(final String[] args) {
2329
launch(App.class, args);

src/main/java/de/doubleslash/keeptime/controller/Controller.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,8 @@
2222
import java.util.ArrayList;
2323
import java.util.List;
2424

25-
import javax.annotation.PreDestroy;
26-
2725
import org.slf4j.Logger;
2826
import org.slf4j.LoggerFactory;
29-
import org.springframework.beans.factory.annotation.Autowired;
3027
import org.springframework.stereotype.Service;
3128

3229
import de.doubleslash.keeptime.common.DateFormatter;
@@ -36,6 +33,7 @@
3633
import de.doubleslash.keeptime.model.Project;
3734
import de.doubleslash.keeptime.model.Settings;
3835
import de.doubleslash.keeptime.model.Work;
36+
import jakarta.annotation.PreDestroy;
3937
import javafx.collections.ObservableList;
4038

4139
@Service
@@ -48,7 +46,6 @@ public class Controller {
4846

4947
private final DateProvider dateProvider;
5048

51-
@Autowired
5249
public Controller(final Model model, final DateProvider dateProvider) {
5350
this.model = model;
5451
this.dateProvider = dateProvider;

0 commit comments

Comments
 (0)