Compare commits
31 commits
Author | SHA1 | Date | |
---|---|---|---|
8f405448d2 | |||
9e6ac15b75 | |||
ec09c06b3d | |||
17742ad075 | |||
6139eb8245 | |||
3eab7e7b5e | |||
0218439665 | |||
0ddf538af9 | |||
ee124c567e | |||
33c3e22861 | |||
3b5b2596ea | |||
cc755c7b1e | |||
ca4ba41e21 | |||
7637f90bc5 | |||
7af0b06d14 | |||
75abe7c657 | |||
4571ce9767 | |||
d27869df5d | |||
3758df5080 | |||
4162c64ab9 | |||
69a431e6ab | |||
daf45f674c | |||
94efbbf7df | |||
f8cceedc35 | |||
77b9ea0f61 | |||
4fa6ec6306 | |||
592a269ec8 | |||
791db7f890 | |||
ade7898516 | |||
2600e74be7 | |||
15034b4363 |
32 changed files with 185 additions and 97 deletions
28
.github/workflows/bld.yml
vendored
28
.github/workflows/bld.yml
vendored
|
@ -4,11 +4,13 @@ on: [push, pull_request, workflow_dispatch]
|
|||
|
||||
jobs:
|
||||
build-bld-project:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
java-version: [17, 21, 22]
|
||||
java-version: [ 17, 21, 24 ]
|
||||
kotlin-version: [ 1.9.25, 2.0.21, 2.1.20 ]
|
||||
os: [ ubuntu-latest, windows-latest, macos-latest ]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- name: Checkout source repository
|
||||
|
@ -22,6 +24,26 @@ jobs:
|
|||
distribution: "zulu"
|
||||
java-version: ${{ matrix.java-version }}
|
||||
|
||||
- name: Download dependencies [examples]
|
||||
working-directory: examples
|
||||
run: ./bld download
|
||||
|
||||
- name: Compile run [examples]
|
||||
working-directory: examples
|
||||
run: ./bld compile run
|
||||
|
||||
- name: Update version properties and run [examples]
|
||||
working-directory: examples
|
||||
run: |
|
||||
./bld update-major run
|
||||
./bld update-minor run
|
||||
./bld update-patch run
|
||||
./bld update-release run
|
||||
|
||||
- name: Delete version properties and run [examples]
|
||||
working-directory: examples
|
||||
run: ./bld delete-version run
|
||||
|
||||
- name: Download dependencies
|
||||
run: ./bld download
|
||||
|
||||
|
|
4
.github/workflows/pages.yml
vendored
4
.github/workflows/pages.yml
vendored
|
@ -47,11 +47,11 @@ jobs:
|
|||
uses: actions/configure-pages@v3
|
||||
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-pages-artifact@v1
|
||||
uses: actions/upload-pages-artifact@v3
|
||||
with:
|
||||
# Upload generated Javadocs repository
|
||||
path: "build/javadoc/"
|
||||
|
||||
- name: Deploy to GitHub Pages
|
||||
id: deployment
|
||||
uses: actions/deploy-pages@v1
|
||||
uses: actions/deploy-pages@v4
|
||||
|
|
2
.idea/copyright/Apache_License.xml
generated
2
.idea/copyright/Apache_License.xml
generated
|
@ -1,6 +1,6 @@
|
|||
<component name="CopyrightManager">
|
||||
<copyright>
|
||||
<option name="notice" value="Copyright 2023-Copyright &#36;today.yearamp;#36;today.year the original author or authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License." />
|
||||
<option name="notice" value="Copyright 2023-&#36;today.year the original author or authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License." />
|
||||
<option name="myName" value="Apache License" />
|
||||
</copyright>
|
||||
</component>
|
13
.idea/icon.svg
generated
Normal file
13
.idea/icon.svg
generated
Normal file
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg width="100%" height="100%" viewBox="0 0 179 108" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
||||
<g transform="matrix(1,0,0,1,-210.511,-96.3382)">
|
||||
<g transform="matrix(1,0,0,1,-23.3386,-649.816)">
|
||||
<g transform="matrix(0.221288,0,0,0.24,73.9536,390.254)">
|
||||
<path d="M722.568,1482.92L722.568,1921.1L808.968,1921.1L808.968,1888.7C822.168,1907.9 846.168,1930.1 893.568,1930.1C933.168,1930.1 961.968,1917.5 985.368,1893.5C1012.97,1865.9 1027.37,1827.5 1027.37,1786.1C1027.37,1741.7 1011.17,1705.1 985.368,1680.5C961.968,1658.3 928.968,1644.5 892.368,1644.5C862.968,1644.5 830.568,1654.1 808.968,1683.5L808.968,1482.92L722.568,1482.92ZM871.368,1718.9C888.768,1718.9 903.768,1723.7 917.568,1736.9C930.168,1748.9 938.568,1766.3 938.568,1787.9C938.568,1807.7 930.168,1825.1 917.568,1837.1C904.368,1849.7 887.568,1855.7 872.568,1855.7C856.368,1855.7 837.168,1849.1 823.368,1835.9C813.168,1826.3 803.568,1810.1 803.568,1787.9C803.568,1765.1 812.568,1749.5 822.768,1738.7C836.568,1724.3 852.768,1718.9 871.368,1718.9Z" style="fill:rgb(35,146,255);fill-rule:nonzero;"/>
|
||||
<rect x="1083.77" y="1482.92" width="86.4" height="438.182" style="fill:rgb(250,144,82);fill-rule:nonzero;"/>
|
||||
<path d="M1531.37,1482.92L1444.97,1482.92L1444.97,1683.5C1423.37,1654.1 1390.97,1644.5 1361.57,1644.5C1324.97,1644.5 1291.97,1658.3 1268.57,1680.5C1242.77,1705.1 1226.57,1741.7 1226.57,1786.1C1226.57,1827.5 1240.97,1865.9 1268.57,1893.5C1291.97,1917.5 1320.77,1930.1 1360.37,1930.1C1407.77,1930.1 1431.77,1907.9 1444.97,1888.7L1444.97,1921.1L1531.37,1921.1L1531.37,1482.92ZM1382.57,1718.9C1401.17,1718.9 1417.37,1724.3 1431.17,1738.7C1441.37,1749.5 1450.37,1765.1 1450.37,1787.9C1450.37,1810.1 1440.77,1826.3 1430.57,1835.9C1416.77,1849.1 1397.57,1855.7 1381.37,1855.7C1366.37,1855.7 1349.57,1849.7 1336.37,1837.1C1323.77,1825.1 1315.37,1807.7 1315.37,1787.9C1315.37,1766.3 1323.77,1748.9 1336.37,1736.9C1350.17,1723.7 1365.17,1718.9 1382.57,1718.9Z" style="fill:rgb(35,146,255);fill-rule:nonzero;"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.4 KiB |
4
.idea/libraries/bld.xml
generated
4
.idea/libraries/bld.xml
generated
|
@ -2,12 +2,12 @@
|
|||
<library name="bld">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/lib/bld" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.0.1.jar!/" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.2.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib/bld" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.0.1-sources.jar!/" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.2.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
<excluded>
|
||||
<root url="jar://$PROJECT_DIR$/lib/bld/bld-wrapper.jar!/" />
|
||||
|
|
4
.idea/libraries/compile.xml
generated
4
.idea/libraries/compile.xml
generated
|
@ -7,7 +7,7 @@
|
|||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib/compile" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/compile" recursive="false" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/compile" recursive="false" type="SOURCES" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/compile" recursive="true" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/compile" recursive="true" type="SOURCES" />
|
||||
</library>
|
||||
</component>
|
4
.idea/libraries/runtime.xml
generated
4
.idea/libraries/runtime.xml
generated
|
@ -7,7 +7,7 @@
|
|||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib/runtime" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/runtime" recursive="false" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/runtime" recursive="false" type="SOURCES" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/runtime" recursive="true" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/runtime" recursive="true" type="SOURCES" />
|
||||
</library>
|
||||
</component>
|
4
.idea/libraries/test.xml
generated
4
.idea/libraries/test.xml
generated
|
@ -7,7 +7,7 @@
|
|||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib/test" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/test" recursive="false" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/test" recursive="false" type="SOURCES" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/test" recursive="true" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/test" recursive="true" type="SOURCES" />
|
||||
</library>
|
||||
</component>
|
2
.vscode/settings.json
vendored
2
.vscode/settings.json
vendored
|
@ -9,7 +9,7 @@
|
|||
],
|
||||
"java.configuration.updateBuildConfiguration": "automatic",
|
||||
"java.project.referencedLibraries": [
|
||||
"${HOME}/.bld/dist/bld-2.0.1.jar",
|
||||
"${HOME}/.bld/dist/bld-2.2.1.jar",
|
||||
"lib/**/*.jar"
|
||||
]
|
||||
}
|
||||
|
|
14
README.md
14
README.md
|
@ -2,14 +2,22 @@
|
|||
|
||||
[](https://opensource.org/licenses/Apache-2.0)
|
||||
[](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
[](https://rife2.com/bld)
|
||||
[](https://rife2.com/bld)
|
||||
[](https://repo.rife2.com/#/releases/com/uwyn/rife2/bld-property-file)
|
||||
[](https://repo.rife2.com/#/snapshots/com/uwyn/rife2/bld-property-file)
|
||||
[](https://github.com/rife2/bld-property-file/actions/workflows/bld.yml)
|
||||
|
||||
To install, please refer to the [extensions documentation](https://github.com/rife2/bld/wiki/Extensions).
|
||||
To install the latest version, add the following to the `lib/bld/bld-wrapper.properties` file:
|
||||
|
||||
To create or modifying [property files](https://docs.oracle.com/javase/tutorial/essential/environment/properties.html) with [bld](https://rife2.com/bld), add the follwing to your build file:
|
||||
```properties
|
||||
bld.extension-property-file=com.uwyn.rife2:bld-property-file
|
||||
```
|
||||
|
||||
For more information, please refer to the [extensions](https://github.com/rife2/bld/wiki/Extensions) documentation.
|
||||
|
||||
## Create or Modify Property Files
|
||||
|
||||
To create or modify [property files](https://docs.oracle.com/javase/tutorial/essential/environment/properties.html) with [bld](https://rife2.com/bld), add the follwing to your build file:
|
||||
|
||||
```java
|
||||
@BuildCommand
|
||||
|
|
|
@ -7,9 +7,9 @@
|
|||
<!-- BEST PRACTICES -->
|
||||
<rule ref="category/java/bestpractices.xml">
|
||||
<exclude name="AvoidPrintStackTrace"/>
|
||||
<exclude name="JUnit4TestShouldUseTestAnnotation"/>
|
||||
<exclude name="JUnitTestContainsTooManyAsserts"/>
|
||||
<exclude name="GuardLogStatement"/>
|
||||
<exclude name="UnitTestContainsTooManyAsserts"/>
|
||||
<exclude name="UnitTestShouldUseTestAnnotation"/>
|
||||
</rule>
|
||||
|
||||
<rule ref="category/java/bestpractices.xml/MissingOverride">
|
||||
|
|
4
examples/.idea/libraries/bld.xml
generated
4
examples/.idea/libraries/bld.xml
generated
|
@ -2,12 +2,12 @@
|
|||
<library name="bld">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/lib/bld" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.0.1.jar!/" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.2.1.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/lib/bld" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.0.1-sources.jar!/" />
|
||||
<root url="jar://$USER_HOME$/.bld/dist/bld-2.2.1-sources.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/lib/bld" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/bld" recursive="false" />
|
||||
|
|
4
examples/.idea/libraries/compile.xml
generated
4
examples/.idea/libraries/compile.xml
generated
|
@ -7,7 +7,7 @@
|
|||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib/compile" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/compile" recursive="false" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/compile" recursive="false" type="SOURCES" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/compile" recursive="true" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/compile" recursive="true" type="SOURCES" />
|
||||
</library>
|
||||
</component>
|
4
examples/.idea/libraries/runtime.xml
generated
4
examples/.idea/libraries/runtime.xml
generated
|
@ -7,7 +7,7 @@
|
|||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib/runtime" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/runtime" recursive="false" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/runtime" recursive="false" type="SOURCES" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/runtime" recursive="true" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/runtime" recursive="true" type="SOURCES" />
|
||||
</library>
|
||||
</component>
|
4
examples/.idea/libraries/test.xml
generated
4
examples/.idea/libraries/test.xml
generated
|
@ -7,7 +7,7 @@
|
|||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib/test" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/test" recursive="false" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/test" recursive="false" type="SOURCES" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/test" recursive="true" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib/test" recursive="true" type="SOURCES" />
|
||||
</library>
|
||||
</component>
|
2
examples/.vscode/settings.json
vendored
2
examples/.vscode/settings.json
vendored
|
@ -9,7 +9,7 @@
|
|||
],
|
||||
"java.configuration.updateBuildConfiguration": "automatic",
|
||||
"java.project.referencedLibraries": [
|
||||
"${HOME}/.bld/dist/bld-2.0.1.jar",
|
||||
"${HOME}/.bld/dist/bld-2.2.1.jar",
|
||||
"lib/**/*.jar"
|
||||
]
|
||||
}
|
||||
|
|
Binary file not shown.
|
@ -1,6 +1,6 @@
|
|||
#Sun Apr 02 10:32:44 PDT 2023
|
||||
bld.downloadExtensionSources=true
|
||||
bld.downloadLocation=
|
||||
bld.extension=com.uwyn.rife2:bld-property-file:0.9.6
|
||||
bld.extension=com.uwyn.rife2:bld-property-file:0.9.9
|
||||
bld.repositories=MAVEN_LOCAL,RIFE2_SNAPSHOTS,RIFE2_RELEASES
|
||||
bld.version=2.0.1
|
||||
bld.version=2.2.1
|
||||
|
|
|
@ -42,8 +42,8 @@ public class PropertyFileExampleBuild extends Project {
|
|||
repositories = List.of(MAVEN_CENTRAL, RIFE2_RELEASES);
|
||||
|
||||
scope(test)
|
||||
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 10, 3)))
|
||||
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 10, 3)));
|
||||
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 12, 1)))
|
||||
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 12, 1)));
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#
|
||||
#Sun Jul 28 22:07:37 PDT 2024
|
||||
build.date=2024-07-28
|
||||
release=beta.20240728220737
|
||||
version.major=1
|
||||
#Mon Jan 13 22:23:02 PST 2025
|
||||
build.date=2025-01-13
|
||||
release=beta.20250113222132
|
||||
version.major=3
|
||||
version.minor=1
|
||||
version.patch=20
|
||||
|
|
Binary file not shown.
|
@ -1,6 +1,6 @@
|
|||
bld.downloadExtensionJavadoc=false
|
||||
bld.downloadExtensionSources=true
|
||||
bld.downloadLocation=
|
||||
bld.extension-pmd=com.uwyn.rife2:bld-pmd:1.1.4
|
||||
bld.extension-pmd=com.uwyn.rife2:bld-pmd:1.2.2
|
||||
bld.repositories=MAVEN_CENTRAL,MAVEN_LOCAL,RIFE2_SNAPSHOTS,RIFE2_RELEASES
|
||||
bld.version=2.0.1
|
||||
bld.version=2.2.1
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -34,7 +34,7 @@ public class PropertyFileBuild extends Project {
|
|||
public PropertyFileBuild() {
|
||||
pkg = "rife.bld.extension";
|
||||
name = "bld-property-file";
|
||||
version = version(0, 9, 6);
|
||||
version = version(0, 9, 9);
|
||||
|
||||
javaRelease = 17;
|
||||
downloadSources = true;
|
||||
|
@ -42,11 +42,11 @@ public class PropertyFileBuild extends Project {
|
|||
repositories = List.of(MAVEN_LOCAL, MAVEN_CENTRAL, RIFE2_RELEASES, RIFE2_SNAPSHOTS);
|
||||
|
||||
scope(compile)
|
||||
.include(dependency("com.uwyn.rife2", "bld", version(2, 0, 1)));
|
||||
.include(dependency("com.uwyn.rife2", "bld", version(2, 2, 1)));
|
||||
scope(test)
|
||||
.include(dependency("org.jsoup", "jsoup", version(1, 18, 1)))
|
||||
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 10, 3)))
|
||||
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 10, 3)))
|
||||
.include(dependency("org.jsoup", "jsoup", version(1, 19, 1)))
|
||||
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 12, 1)))
|
||||
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 12, 1)))
|
||||
.include(dependency("org.assertj:assertj-joda-time:2.2.0"));
|
||||
|
||||
javadocOperation()
|
||||
|
@ -58,6 +58,7 @@ public class PropertyFileBuild extends Project {
|
|||
|
||||
publishOperation()
|
||||
.repository(version.isSnapshot() ? repository("rife2-snapshot") : repository("rife2"))
|
||||
.repository(repository("github"))
|
||||
.info()
|
||||
.groupId("com.uwyn.rife2")
|
||||
.artifactId("bld-property-file")
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -48,6 +48,16 @@ public class EntryDate extends EntryBase<EntryDate> {
|
|||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the {@link java.time.format.DateTimeFormatter DateTimeFormatter} pattern.
|
||||
*
|
||||
* @param pattern the pattern
|
||||
*/
|
||||
public EntryDate pattern(String pattern) {
|
||||
super.pattern(pattern);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the new {@link java.util.Properties property} value to an {@link Instant}
|
||||
*
|
||||
|
@ -145,16 +155,6 @@ public class EntryDate extends EntryBase<EntryDate> {
|
|||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the {@link java.time.format.DateTimeFormatter DateTimeFormatter} pattern.
|
||||
*
|
||||
* @param pattern the pattern
|
||||
*/
|
||||
public EntryDate pattern(String pattern) {
|
||||
super.pattern(pattern);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* The units available for {@link EntryDate} calculations.
|
||||
*
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -32,6 +32,16 @@ public class EntryInt extends EntryBase<EntryInt> {
|
|||
super(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the {@link java.text.DecimalFormat DecimalFormat} pattern.
|
||||
*
|
||||
* @param pattern the pattern
|
||||
*/
|
||||
public EntryInt pattern(String pattern) {
|
||||
super.pattern(pattern);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the new {@link java.util.Properties property} value to an integer.
|
||||
*
|
||||
|
@ -42,14 +52,4 @@ public class EntryInt extends EntryBase<EntryInt> {
|
|||
newValue(i);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the {@link java.text.DecimalFormat DecimalFormat} pattern.
|
||||
*
|
||||
* @param pattern the pattern
|
||||
*/
|
||||
public EntryInt pattern(String pattern) {
|
||||
super.pattern(pattern);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -21,6 +21,7 @@ import rife.bld.operations.AbstractOperation;
|
|||
import rife.bld.operations.exceptions.ExitStatusException;
|
||||
|
||||
import java.io.File;
|
||||
import java.nio.file.Path;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Properties;
|
||||
|
@ -34,7 +35,7 @@ import java.util.logging.Logger;
|
|||
* @since 1.0
|
||||
*/
|
||||
public class PropertyFileOperation extends AbstractOperation<PropertyFileOperation> {
|
||||
private final static Logger LOGGER = Logger.getLogger(PropertyFileOperation.class.getName());
|
||||
private static final Logger LOGGER = Logger.getLogger(PropertyFileOperation.class.getName());
|
||||
private final List<EntryBase<?>> entries_ = new ArrayList<>();
|
||||
private String comment_ = "";
|
||||
private boolean failOnWarning_;
|
||||
|
@ -152,8 +153,26 @@ public class PropertyFileOperation extends AbstractOperation<PropertyFileOperati
|
|||
* @return this instance
|
||||
*/
|
||||
public PropertyFileOperation file(String file) {
|
||||
file_ = new File(file);
|
||||
return this;
|
||||
return file(new File(file));
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the location of the {@link java.util.Properties} file to be edited.
|
||||
*
|
||||
* @return the properties file
|
||||
*/
|
||||
public File file() {
|
||||
return file_;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the location of the {@link java.util.Properties} file to be edited.
|
||||
*
|
||||
* @param file the file to be edited
|
||||
* @return this instance
|
||||
*/
|
||||
public PropertyFileOperation file(Path file) {
|
||||
return file(file.toFile());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -39,7 +39,7 @@ import java.util.logging.Logger;
|
|||
* @since 1.0
|
||||
*/
|
||||
public final class PropertyFileUtils {
|
||||
private final static Logger LOGGER = Logger.getLogger(PropertyFileUtils.class.getName());
|
||||
private static final Logger LOGGER = Logger.getLogger(PropertyFileUtils.class.getName());
|
||||
|
||||
private PropertyFileUtils() {
|
||||
// no-op
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-Copyright $today.yearamp;#36;today.year the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -16,6 +16,7 @@
|
|||
|
||||
package rife.bld.extension.propertyfile;
|
||||
|
||||
import org.assertj.core.api.AutoCloseableSoftAssertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import rife.bld.Project;
|
||||
import rife.bld.operations.exceptions.ExitStatusException;
|
||||
|
@ -51,11 +52,13 @@ class PropertyFileOperationTest {
|
|||
var p = new Properties();
|
||||
p.load(Files.newInputStream(tmpFile.toPath()));
|
||||
|
||||
assertThat(p.getProperty("version.major")).as("major").isEqualTo("1");
|
||||
assertThat(p.getProperty("version.minor")).as("minor").isEqualTo("0");
|
||||
assertThat(p.getProperty("version.patch")).as("patch").isEqualTo("0");
|
||||
assertThat(p.getProperty("build.date")).as("date")
|
||||
try (var softly = new AutoCloseableSoftAssertions()) {
|
||||
softly.assertThat(p.getProperty("version.major")).as("major").isEqualTo("1");
|
||||
softly.assertThat(p.getProperty("version.minor")).as("minor").isEqualTo("0");
|
||||
softly.assertThat(p.getProperty("version.patch")).as("patch").isEqualTo("0");
|
||||
softly.assertThat(p.getProperty("build.date")).as("date")
|
||||
.isEqualTo(LocalDate.now().format(DateTimeFormatter.ISO_LOCAL_DATE));
|
||||
}
|
||||
|
||||
new PropertyFileOperation()
|
||||
.fromProject(new Project())
|
||||
|
@ -84,4 +87,18 @@ class PropertyFileOperationTest {
|
|||
var op = new PropertyFileOperation();
|
||||
assertThatCode(op::execute).isInstanceOf(ExitStatusException.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testFile() {
|
||||
var foo = new File("foo");
|
||||
|
||||
var op = new PropertyFileOperation().file("foo");
|
||||
assertThat(op.file()).as("as string").isEqualTo(foo);
|
||||
|
||||
op = new PropertyFileOperation().file(foo);
|
||||
assertThat(op.file()).as("as file").isEqualTo(foo);
|
||||
|
||||
op = new PropertyFileOperation().file(foo.toPath());
|
||||
assertThat(op.file()).as("as path").isEqualTo(foo);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2023-2024 the original author or authors.
|
||||
* Copyright 2023-2025 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -39,7 +39,6 @@ import static rife.bld.extension.propertyfile.Calc.SUB;
|
|||
*/
|
||||
@SuppressWarnings("PMD.AvoidDuplicateLiterals")
|
||||
class PropertyFileUtilsTest {
|
||||
final static int dayOfYear = LocalDate.now().getDayOfYear();
|
||||
final static Properties p = new Properties();
|
||||
final static String t = "test";
|
||||
|
||||
|
@ -62,23 +61,28 @@ class PropertyFileUtilsTest {
|
|||
void parseDateSub() {
|
||||
var entryDate = newEntryDate().calc(SUB);
|
||||
PropertyFileUtils.processDate(p, entryDate.now());
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(now-3)").isEqualTo(String.valueOf(dayOfYear - 1));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(now-3)").isEqualTo(String.valueOf(
|
||||
LocalDateTime.now().minusDays(1).getDayOfYear()));
|
||||
|
||||
entryDate.calc(v -> v - 2);
|
||||
PropertyFileUtils.processDate(p, entryDate.now());
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(now-2)").isEqualTo(String.valueOf(dayOfYear - 2));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(now-2)").isEqualTo(String.valueOf(
|
||||
LocalDateTime.now().minusDays(2).getDayOfYear()));
|
||||
|
||||
entryDate.calc(SUB);
|
||||
PropertyFileUtils.processDate(p, entryDate.set(new Date()));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(date-1)").isEqualTo(String.valueOf(dayOfYear - 1));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(date-1)").isEqualTo(String.valueOf(
|
||||
LocalDateTime.now().minusDays(1).getDayOfYear()));
|
||||
|
||||
entryDate.calc(v -> v - 2);
|
||||
PropertyFileUtils.processDate(p, entryDate.set(Calendar.getInstance()));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(cal-2)").isEqualTo(String.valueOf(dayOfYear - 2));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(cal-2)").isEqualTo(String.valueOf(
|
||||
LocalDateTime.now().minusDays(2).getDayOfYear()));
|
||||
|
||||
entryDate.calc(v -> v - 3);
|
||||
PropertyFileUtils.processDate(p, entryDate.set(LocalDate.now()));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(LocalDate-3)").isEqualTo(String.valueOf(dayOfYear - 3));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(LocalDate-3)").isEqualTo(String.valueOf(
|
||||
LocalDateTime.now().minusDays(3).getDayOfYear()));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -170,22 +174,26 @@ class PropertyFileUtilsTest {
|
|||
var entryDate = newEntryDate();
|
||||
entryDate.calc(ADD);
|
||||
PropertyFileUtils.processDate(p, entryDate.now());
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(now+1)").isEqualTo(String.valueOf(dayOfYear + 1));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(now+1)").isEqualTo(String.valueOf(
|
||||
LocalDateTime.now().plusDays(1).getDayOfYear()));
|
||||
|
||||
PropertyFileUtils.processDate(p, entryDate.now().calc(v -> v + 3));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(now+3)").isEqualTo(String.valueOf(dayOfYear + 3));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(now+3)").isEqualTo(String.valueOf(
|
||||
LocalDateTime.now().plusDays(3).getDayOfYear()));
|
||||
|
||||
entryDate.calc(ADD);
|
||||
PropertyFileUtils.processDate(p, entryDate.set(ZonedDateTime.now()));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(ZonedDateTime+1)")
|
||||
.isEqualTo(String.valueOf(dayOfYear + 1));
|
||||
.isEqualTo(String.valueOf(LocalDateTime.now().plusDays(1).getDayOfYear()));
|
||||
|
||||
PropertyFileUtils.processDate(p, entryDate.set(Instant.now()).calc(v -> v + 2));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(Instant+2)").isEqualTo(String.valueOf(dayOfYear + 2));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(Instant+2)").isEqualTo(String.valueOf(
|
||||
LocalDateTime.now().plusDays(2).getDayOfYear()));
|
||||
|
||||
entryDate.calc(v -> v + 3);
|
||||
PropertyFileUtils.processDate(p, entryDate.set(LocalDateTime.now()));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(LocalDteTime+2)").isEqualTo(String.valueOf(dayOfYear + 3));
|
||||
assertThat(p.getProperty(entryDate.key())).as("processDate(LocalDteTime+2)")
|
||||
.isEqualTo(String.valueOf(LocalDateTime.now().plusDays(3).getDayOfYear()));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue