Footer Component using generated properties, removed font testing,

master
Markus Kreth 4 years ago
parent a000e052d8
commit f3dfdfb084
  1. 5
      .classpath
  2. 11
      package-lock.json
  3. 11
      pom.xml
  4. 8
      src/main/java/de/kreth/invoice/Application.java
  5. 29
      src/main/java/de/kreth/invoice/views/FooterComponent.java
  6. 4
      src/main/resources/version.properties
  7. 8
      src/packaging/version.properties

@ -28,10 +28,5 @@
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/packaging">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="target/classes"/>
</classpath>

11
package-lock.json generated

@ -121,6 +121,7 @@
"@vaadin/virtual-list": "23.0.7",
"construct-style-sheets-polyfill": "3.0.4",
"date-fns": "2.28.0",
"line-awesome": "1.3.0",
"lit": "2.1.4"
},
"devDependencies": {
@ -9195,6 +9196,11 @@
"node": ">=6"
}
},
"node_modules/line-awesome": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/line-awesome/-/line-awesome-1.3.0.tgz",
"integrity": "sha512-Y0YHksL37ixDsHz+ihCwOtF5jwJgCDxQ3q+zOVgaSW8VugHGTsZZXMacPYZB1/JULBi6BAuTCTek+4ZY/UIwcw=="
},
"node_modules/lines-and-columns": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
@ -21171,6 +21177,11 @@
"integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
"dev": true
},
"line-awesome": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/line-awesome/-/line-awesome-1.3.0.tgz",
"integrity": "sha512-Y0YHksL37ixDsHz+ihCwOtF5jwJgCDxQ3q+zOVgaSW8VugHGTsZZXMacPYZB1/JULBi6BAuTCTek+4ZY/UIwcw=="
},
"lines-and-columns": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",

@ -193,15 +193,13 @@
<build>
<defaultGoal>spring-boot:run</defaultGoal>
<resources>
<!--
<resource>
<filtering>true</filtering>
<directory>src/packaging</directory>
<directory>${basedir}/src/packaging</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
<directory>${basedir}/src/main/resources</directory>
</resource>
-->
</resources>
<plugins>
<!--
@ -242,11 +240,6 @@
</executions>
</plugin>
<!--
Take care of synchronizing java dependencies and imports in
package.json and main.js files.
It also creates webpack.config.js if not exists yet.
-->
<plugin>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-maven-plugin</artifactId>

@ -1,6 +1,5 @@
package de.kreth.invoice;
import java.awt.GraphicsEnvironment;
import java.util.PropertyResourceBundle;
import java.util.ResourceBundle;
@ -31,13 +30,6 @@ public class Application extends SpringBootServletInitializer implements AppShel
private static ResourceBundle bundle = null;
public static void main(String[] args) {
String[] names = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
System.out.println("Found " + names.length + " fonts:");
for (String name : names) {
System.out.println(name);
}
SpringApplication.run(Application.class, args);
}

@ -1,5 +1,8 @@
package de.kreth.invoice.views;
import static de.kreth.invoice.Version_Properties.BUILD_DATETIME;
import static de.kreth.invoice.Version_Properties.PROJECT_VERSION;
import java.io.IOException;
import java.net.URL;
import java.text.DateFormat;
@ -11,8 +14,8 @@ import java.util.Properties;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.vaadin.flow.component.Text;
import com.vaadin.flow.component.formlayout.FormLayout;
import com.vaadin.flow.component.html.Label;
import de.kreth.invoice.Version_Properties;
@ -52,12 +55,13 @@ public class FooterComponent extends FormLayout {
public FooterComponent() {
Text copyright = new Text("\u00a9 Markus Kreth\u00A0");
Label copyright = new Label("\u00a9 Markus Kreth\u00A0");
copyright.addClassName("formlayout-spacing");
add(copyright);
if (propertiesLoaded()) {
String dateTimeProperty = Version_Properties.BUILD_DATETIME.getString(VERSION::getProperty);
String dateTimeProperty = getString(BUILD_DATETIME);
SimpleDateFormat sourceFormat = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss");
try {
@ -69,18 +73,21 @@ public class FooterComponent extends FormLayout {
"Unable to parse dateTimeProperty=" + dateTimeProperty,
e);
}
Text vers = new Text(
"\u00A0Version: " + Version_Properties.PROJECT_VERSION.getString(VERSION::getProperty));
Text buildTime = new Text("\u00A0Build: " + dateTimeProperty);
Label vers = new Label(
"\u00A0Version: " + getString(PROJECT_VERSION));
Label buildTime = new Label("\u00A0Build: " + dateTimeProperty);
vers.addClassName("formlayout-spacing");
buildTime.addClassName("formlayout-spacing");
add(vers, buildTime);
}
getStyle().set("margin", "3px");
// getChildren().forEach(c -> {
// c.getElement().setAttribute("padding", "5px");
// });
}
private boolean propertiesLoaded() {
return !VERSION.isEmpty() && !Version_Properties.BUILD_DATETIME.getString(VERSION::getProperty).contains("${");
return !VERSION.isEmpty() && !getString(BUILD_DATETIME).contains("${");
}
private String getString(Version_Properties prop) {
return prop.getString(VERSION::getProperty);
}
}

@ -1,4 +0,0 @@
project.artifactId=trainerinvoice
project.version=1.0.0-SNAPSHOT
build.dateTime=2022-05-29 23:00:00
package_name=trainerinvoice-1.0.0-SNAPSHOT.jar

@ -1,4 +1,4 @@
project.artifactId=${project.artifactId}
project.version=${project.version}
build.dateTime=${timestamp}
package_name=${project.artifactId}-${project.version}.${project.packaging}
project.artifactId=@project.artifactId@
project.version=@project.version@
build.dateTime=@timestamp@
package_name=@project.artifactId@-@project.version@.@project.packaging@

Loading…
Cancel
Save