Cleaned up API to match bld operations aand options APIs
This commit is contained in:
parent
46b9a52215
commit
eabca28d38
6 changed files with 56 additions and 6 deletions
|
@ -34,7 +34,7 @@ public class GeneratedVersionOperationBuild extends Project {
|
|||
public GeneratedVersionOperationBuild() {
|
||||
pkg = "rife.bld.extension";
|
||||
name = "GeneratedVersionOperation";
|
||||
version = version(0, 9, 8);
|
||||
version = version(0, 9, 9, "SNAPSHOT");
|
||||
|
||||
javaRelease = 17;
|
||||
|
||||
|
|
|
@ -22,6 +22,7 @@ import rife.bld.operations.AbstractOperation;
|
|||
import rife.bld.operations.exceptions.ExitStatusException;
|
||||
|
||||
import java.io.File;
|
||||
import java.nio.file.Path;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
|
@ -67,6 +68,16 @@ public class GeneratedVersionOperation extends AbstractOperation<GeneratedVersio
|
|||
return classTemplate(new File(template));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the class template path.
|
||||
*
|
||||
* @param template the template path
|
||||
* @return this operation instance
|
||||
*/
|
||||
public GeneratedVersionOperation classTemplate(Path template) {
|
||||
return classTemplate(template.toFile());
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the destination directory.
|
||||
*
|
||||
|
@ -88,6 +99,16 @@ public class GeneratedVersionOperation extends AbstractOperation<GeneratedVersio
|
|||
return directory(new File(directory));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the destination directory.
|
||||
*
|
||||
* @param directory the destination directory
|
||||
* @return this operation instance
|
||||
*/
|
||||
public GeneratedVersionOperation directory(Path directory) {
|
||||
return directory(directory.toFile());
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a version data class for this project.
|
||||
*/
|
||||
|
@ -140,6 +161,15 @@ public class GeneratedVersionOperation extends AbstractOperation<GeneratedVersio
|
|||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the generated version instance.
|
||||
*
|
||||
* @return the generated version
|
||||
*/
|
||||
public GeneratedVersion generatedVersion() {
|
||||
return generatedVersion_;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the package name.
|
||||
*
|
||||
|
|
|
@ -91,17 +91,16 @@ class GeneratedVersionTest {
|
|||
gv.setClassName("MyVersion");
|
||||
|
||||
var t = gv.buildTemplate();
|
||||
//noinspection TrailingWhitespacesInTextBlock
|
||||
assertThat(t.getContent()).isEqualTo("""
|
||||
package com.example.my;
|
||||
|
||||
|
||||
public final class MyVersion {
|
||||
public static final int PROJECT = "My App";
|
||||
public static final int MAJOR = 2;
|
||||
public static final int MINOR = 1;
|
||||
public static final int REVISION = 3;
|
||||
public static final String QUALIFIER = "";
|
||||
|
||||
|
||||
private MyVersion() {
|
||||
// no-op
|
||||
}
|
||||
|
@ -127,6 +126,21 @@ class GeneratedVersionTest {
|
|||
.contains("private GeneratedVersion");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testDirectories() {
|
||||
var foo = new File("foo");
|
||||
var bar = new File("bar");
|
||||
|
||||
var op = new GeneratedVersionOperation().directory(foo);
|
||||
assertThat(op.generatedVersion().getDirectory()).as("as file").isEqualTo(foo);
|
||||
|
||||
op = op.directory(bar.toPath());
|
||||
assertThat(op.generatedVersion().getDirectory()).as("as path").isEqualTo(bar);
|
||||
|
||||
op = op.directory("foo");
|
||||
assertThat(op.generatedVersion().getDirectory()).as("as string").isEqualTo(foo);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testExample() throws Exception {
|
||||
var tmpDir = Files.createTempDirectory("bld-generated-version-example-").toFile();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue