[#3202] Allow for Pattern.COMMENTS in code generation configuration's regexes
This commit is contained in:
parent
44fc9fd1f7
commit
fcd068dfb3
@ -53,6 +53,7 @@ import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import org.jooq.AggregateFunction;
|
||||
import org.jooq.Configuration;
|
||||
@ -1856,9 +1857,11 @@ public class JavaGenerator extends AbstractGenerator {
|
||||
// if properly configured
|
||||
if (updatable) {
|
||||
patternLoop: for (String pattern : database.getRecordVersionFields()) {
|
||||
Pattern p = Pattern.compile(pattern, Pattern.COMMENTS);
|
||||
|
||||
for (ColumnDefinition column : table.getColumns()) {
|
||||
if ((column.getName().matches(pattern.trim()) ||
|
||||
column.getQualifiedName().matches(pattern.trim()))) {
|
||||
if ((p.matcher(column.getName()).matches() ||
|
||||
p.matcher(column.getQualifiedName()).matches())) {
|
||||
|
||||
final String columnType = getJavaType(column.getType());
|
||||
final String columnId = getStrategy().getFullJavaIdentifier(column);
|
||||
@ -1875,9 +1878,11 @@ public class JavaGenerator extends AbstractGenerator {
|
||||
}
|
||||
|
||||
timestampLoop: for (String pattern : database.getRecordTimestampFields()) {
|
||||
Pattern p = Pattern.compile(pattern, Pattern.COMMENTS);
|
||||
|
||||
for (ColumnDefinition column : table.getColumns()) {
|
||||
if ((column.getName().matches(pattern.trim()) ||
|
||||
column.getQualifiedName().matches(pattern.trim()))) {
|
||||
if ((p.matcher(column.getName()).matches() ||
|
||||
p.matcher(column.getQualifiedName()).matches())) {
|
||||
|
||||
final String columnType = getJavaType(column.getType());
|
||||
final String columnId = getStrategy().getFullJavaIdentifier(column);
|
||||
|
||||
@ -54,6 +54,7 @@ import java.util.Iterator;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import org.jooq.DSLContext;
|
||||
import org.jooq.SQLDialect;
|
||||
@ -798,9 +799,11 @@ public abstract class AbstractDatabase implements Database {
|
||||
definitionsLoop: for (T definition : definitions) {
|
||||
if (excludes != null) {
|
||||
for (String exclude : excludes) {
|
||||
Pattern p = Pattern.compile(exclude, Pattern.COMMENTS);
|
||||
|
||||
if (exclude != null &&
|
||||
(definition.getName().matches(exclude.trim()) ||
|
||||
definition.getQualifiedName().matches(exclude.trim()))) {
|
||||
(p.matcher(definition.getName()).matches() ||
|
||||
p.matcher(definition.getQualifiedName()).matches())) {
|
||||
|
||||
continue definitionsLoop;
|
||||
}
|
||||
@ -809,9 +812,11 @@ public abstract class AbstractDatabase implements Database {
|
||||
|
||||
if (includes != null) {
|
||||
for (String include : includes) {
|
||||
Pattern p = Pattern.compile(include, Pattern.COMMENTS);
|
||||
|
||||
if (include != null &&
|
||||
(definition.getName().matches(include.trim()) ||
|
||||
definition.getQualifiedName().matches(include.trim()))) {
|
||||
(p.matcher(definition.getName()).matches() ||
|
||||
p.matcher(definition.getQualifiedName()).matches())) {
|
||||
|
||||
result.add(definition);
|
||||
continue definitionsLoop;
|
||||
|
||||
@ -10,10 +10,22 @@
|
||||
<name>org.jooq.util.DefaultGenerator</name>
|
||||
<database>
|
||||
<includes>.*</includes>
|
||||
<excludes>T_BOOK_DETAILS|SYSTEM_SEQUENCE.*|.*\.COL2|COL3</excludes>
|
||||
<excludes>
|
||||
T_BOOK_DETAILS # Check if dependent objects (e.g. foreign keys) are not generated
|
||||
| SYSTEM_SEQUENCE.* # who knows where this came from (sample comment)
|
||||
| .*\.COL2 # v_2603 contains some columns that we don't want to generate
|
||||
| COL3 # v_2603 contains some columns that we don't want to generate
|
||||
</excludes>
|
||||
<includeExcludeColumns>true</includeExcludeColumns>
|
||||
<recordVersionFields>REC_VERSION</recordVersionFields>
|
||||
<recordTimestampFields>REC_TIMESTAMP</recordTimestampFields>
|
||||
<recordVersionFields>
|
||||
REC_VERSION
|
||||
| ASDF_ASDF_ASDF # This should not have any effect
|
||||
</recordVersionFields>
|
||||
<recordTimestampFields>
|
||||
REC_TIMESTAMP
|
||||
| ASDF_ASDF_ASDF # This should not have any effect
|
||||
| ASDF_ASDF_ASDF # This should not have any effect
|
||||
</recordTimestampFields>
|
||||
<dateAsTimestamp>false</dateAsTimestamp>
|
||||
<unsignedTypes>true</unsignedTypes>
|
||||
<inputSchema>PUBLIC</inputSchema>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user