Skip to content

Commit 8be5d70

Browse files
committed
refactoring
1 parent 22d3737 commit 8be5d70

File tree

7 files changed

+68
-23
lines changed

7 files changed

+68
-23
lines changed

jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/jbbp-mvn-getterssetters/pom.xml renamed to jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/jbbp-mvn-test-getterssetters/pom.xml

File renamed without changes.

jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/jbbp-mvn-getterssetters/src/jbbp/com.igormaznitsa.mvn.test.jbbp.VarCustom.jbbp renamed to jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/jbbp-mvn-test-getterssetters/src/jbbp/com.igormaznitsa.mvn.test.jbbp.VarCustom.jbbp

File renamed without changes.

jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/jbbp-mvn-getterssetters/src/main/java/com/igormaznitsa/mvn/tst/VarCustomImpl.java renamed to jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/jbbp-mvn-test-getterssetters/src/main/java/com/igormaznitsa/mvn/tst/VarCustomImpl.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import com.igormaznitsa.jbbp.model.JBBPFieldLong;
2828
import com.igormaznitsa.jbbp.model.JBBPFieldShort;
2929
import com.igormaznitsa.mvn.test.jbbp.VarCustom;
30-
3130
import java.io.IOException;
3231

3332
public class VarCustomImpl extends VarCustom {

jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/jbbp-mvn-getterssetters/src/test/java/com/igormaznitsa/mvn/test/jbbp/VarCustomTest.java renamed to jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/jbbp-mvn-test-getterssetters/src/test/java/com/igormaznitsa/mvn/test/jbbp/VarCustomTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,17 @@
1616

1717
package com.igormaznitsa.mvn.test.jbbp;
1818

19+
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
20+
import static org.junit.jupiter.api.Assertions.assertEquals;
21+
22+
1923
import com.igormaznitsa.jbbp.io.JBBPBitInputStream;
2024
import com.igormaznitsa.jbbp.io.JBBPBitOutputStream;
2125
import com.igormaznitsa.mvn.tst.VarCustomImpl;
22-
import org.junit.jupiter.api.Test;
23-
2426
import java.io.ByteArrayInputStream;
2527
import java.io.ByteArrayOutputStream;
2628
import java.util.Random;
27-
28-
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
29-
import static org.junit.jupiter.api.Assertions.assertEquals;
29+
import org.junit.jupiter.api.Test;
3030

3131

3232
public class VarCustomTest {

jbbp-plugins/jbbp-maven/jbbp-maven-plugin-tests/pom.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,9 @@
1717
<modules>
1818
<module>jbbp-mvn-test-primitives</module>
1919
<module>jbbp-mvn-test-customvars</module>
20-
<module>jbbp-mvn-getterssetters</module>
20+
<module>jbbp-mvn-test-getterssetters</module>
21+
<module>jbbp-mvn-test-genannotations</module>
22+
<module>jbbp-mvn-test-genannotations-nonstatic</module>
2123
</modules>
2224

2325
<dependencies>

jbbp-plugins/jbbp-maven/jbbp-maven-plugin/src/main/java/com/igormaznitsa/jbbp/plugin/mvn/JBBPGenerateMojo.java

Lines changed: 45 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,35 +16,36 @@
1616

1717
package com.igormaznitsa.jbbp.plugin.mvn;
1818

19+
import static com.igormaznitsa.jbbp.plugin.common.utils.CommonUtils.ensureEncodingName;
20+
import static com.igormaznitsa.jbbp.utils.JBBPUtils.ARRAY_STRING_EMPTY;
21+
22+
1923
import com.igormaznitsa.jbbp.JBBPCustomFieldTypeProcessor;
2024
import com.igormaznitsa.jbbp.compiler.JBBPNamedFieldInfo;
2125
import com.igormaznitsa.jbbp.compiler.tokenizer.JBBPFieldTypeParameterContainer;
2226
import com.igormaznitsa.jbbp.io.JBBPBitInputStream;
2327
import com.igormaznitsa.jbbp.io.JBBPBitOrder;
28+
import com.igormaznitsa.jbbp.mapper.Bin;
2429
import com.igormaznitsa.jbbp.model.JBBPAbstractField;
2530
import com.igormaznitsa.jbbp.plugin.common.converters.JBBPScriptTranslator;
2631
import com.igormaznitsa.jbbp.plugin.common.converters.ParserFlags;
2732
import com.igormaznitsa.jbbp.plugin.common.converters.Target;
2833
import com.igormaznitsa.meta.annotation.MustNotContainNull;
29-
import org.apache.commons.io.FileUtils;
30-
import org.apache.maven.plugin.MojoExecutionException;
31-
import org.apache.maven.plugin.MojoFailureException;
32-
import org.apache.maven.plugins.annotations.LifecyclePhase;
33-
import org.apache.maven.plugins.annotations.Mojo;
34-
import org.apache.maven.plugins.annotations.Parameter;
35-
36-
import javax.annotation.Nonnull;
37-
import javax.annotation.Nullable;
3834
import java.io.File;
3935
import java.io.IOException;
4036
import java.util.HashMap;
4137
import java.util.HashSet;
4238
import java.util.Locale;
4339
import java.util.Map;
4440
import java.util.Set;
45-
46-
import static com.igormaznitsa.jbbp.plugin.common.utils.CommonUtils.ensureEncodingName;
47-
import static com.igormaznitsa.jbbp.utils.JBBPUtils.ARRAY_STRING_EMPTY;
41+
import javax.annotation.Nonnull;
42+
import javax.annotation.Nullable;
43+
import org.apache.commons.io.FileUtils;
44+
import org.apache.maven.plugin.MojoExecutionException;
45+
import org.apache.maven.plugin.MojoFailureException;
46+
import org.apache.maven.plugins.annotations.LifecyclePhase;
47+
import org.apache.maven.plugins.annotations.Mojo;
48+
import org.apache.maven.plugins.annotations.Parameter;
4849

4950
/**
5051
* The Mojo looks for all JBBP scripts in source and generate sources.
@@ -163,6 +164,23 @@ public class JBBPGenerateMojo extends AbstractJBBPMojo {
163164
@Parameter(alias = "addToTestSourceFolders")
164165
private boolean addToTestSourceFolders;
165166

167+
/**
168+
* Turn on generate of newInstance methods inside generated classes.
169+
*
170+
* @since 2.0.0
171+
*/
172+
@Parameter(alias = "addNewInstanceMethods", defaultValue = "false")
173+
private boolean addNewInstanceMethods;
174+
175+
/**
176+
* Add Bin annotations
177+
*
178+
* @see Bin
179+
* @since 2.0.0
180+
*/
181+
@Parameter(alias = "addBinAnnotations", defaultValue = "false")
182+
private boolean addBinAnnotations;
183+
166184
public boolean isAddToSourceFolders() {
167185
return this.addToSourceFolders;
168186
}
@@ -410,4 +428,19 @@ public JBBPAbstractField readCustomFieldType(@Nonnull final JBBPBitInputStream i
410428
registerSourceRoot(this.output);
411429
}
412430

431+
public boolean isAddNewInstanceMethods() {
432+
return this.addNewInstanceMethods;
433+
}
434+
435+
public void setAddNewInstanceMethods(final boolean addNewInstanceMethods) {
436+
this.addNewInstanceMethods = addNewInstanceMethods;
437+
}
438+
439+
public boolean isAddBinAnnotations() {
440+
return addBinAnnotations;
441+
}
442+
443+
public void setAddBinAnnotations(boolean addBinAnnotations) {
444+
this.addBinAnnotations = addBinAnnotations;
445+
}
413446
}

jbbp-plugins/jbbp-maven/jbbp-maven-plugin/src/test/java/com/igormaznitsa/jbbp/plugin/mvn/JBBPGenerateMojoTest.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,17 @@ private String[] set2array(final Set<String> set) {
6262
return arr;
6363
}
6464

65+
private void assertPath(final String expected, final String check) {
66+
final String normalized = expected.replace('/', File.separatorChar);
67+
if (check.endsWith(normalized)) {
68+
final String start = check.substring(0, check.length() - expected.length());
69+
if (start.length() == 0 || start.endsWith(":")) {
70+
return;
71+
}
72+
}
73+
fail(String.format("Expected %s but detected %s", expected, check));
74+
}
75+
6576
@Test
6677
public void testConfig() throws Exception {
6778
final JBBPGenerateMojo mojo = findMojo("mojoConfig.xml", "generate");
@@ -70,13 +81,13 @@ public void testConfig() throws Exception {
7081
assertTrue(mojo.getGenerateTestSources());
7182
assertTrue(mojo.getSkip());
7283
assertTrue(mojo.getVerbose());
73-
assertEquals("/some/custom/file", mojo.getCustomTextFile().getPath());
84+
assertPath("/some/custom/file", mojo.getCustomTextFile().getPath());
7485
assertEquals("public void test(){}", mojo.getCustomText());
7586
assertEquals("uber.package", mojo.getPackageName());
76-
assertEquals("/some/cap/file", mojo.getHeadCommentFile().getPath());
87+
assertPath("/some/cap/file", mojo.getHeadCommentFile().getPath());
7788
assertEquals("some cap text", mojo.getHeadComment());
78-
assertEquals("/some/source", mojo.getSource().getPath());
79-
assertEquals("/some/output", mojo.getOutput().getPath());
89+
assertPath("/some/source", mojo.getSource().getPath());
90+
assertPath("/some/output", mojo.getOutput().getPath());
8091
assertEquals("IN-8", mojo.getInputEncoding());
8192
assertEquals("OUT-8", mojo.getOutputEncoding());
8293
assertEquals("com.igormaznitsa.Super", mojo.getSuperClass());

0 commit comments

Comments
 (0)