Commit Graph

798 Commits

Author SHA1 Message Date
Lukas Eder
f1568d475a [jOOQ/jOOQ#9276] Consistently use same line terminators in generator
Also for the import list the Java / Scala generators now use the
configured line terminator rather than a hardcoded  terminator.
2019-09-26 10:42:28 +02:00
Lukas Eder
d18b17d44d [jOOQ/jOOQ#9150] Compilation error in generated code when Oracle OBJECT type contains index_of(varchar2) member procedure 2019-09-03 17:43:35 +02:00
Knut Wannheden
d27dbf4117 Preparing master for 3.13 release cycle 2019-08-29 16:12:59 +02:00
Lukas Eder
0f5b8799b9 [jOOQ/jOOQ#9048] Delete module-info.java.invalid files 2019-08-16 14:02:45 +02:00
Lukas Eder
854375dbcf [jOOQ/jOOQ#7789] Revert change
The jOOQ 3.12 Open Source Edition will continue to support Java 8. The only things we gain from the JDK 11 dependency is:

- Updated logic for reflection when mapping into proxied default methods (that stuff has changed completely in JDK 9). This is a regression, which we can live with. The workaround is to write a custom
- Explicit dependency on the JDK 9  API, for which we provide a Java 8 compatible alternative via reactive streams anyway.
- JDBC 4.3 compatibility (mostly sharding). We currently don't use that yet.

We're not even using  internally, outside of a few integration tests. So, we'll postpone the JDK 11 *requirement* (while supporting it nonetheless) to a later release, e.g. 3.13. We'll observe market share shifts. Currently Java 11's market share is a bit of a disappointment, so making it a requirement might be premature.
2019-07-26 15:18:18 +02:00
Kaan Ozdokmeci
e8e230ae2c make generatePojoMultiConstructor protected inline with it's javadoc 2019-07-23 19:47:08 +03:00
Lukas Eder
cacc3e5a7c [jOOQ/jOOQ#8932] Use diamond operator in jOOQ code 2019-07-11 11:55:51 +02:00
Lukas Eder
f43815aa73 [jOOQ/jOOQ#8925] Add DAO.fetchRangeOf(Field<Z>, Z, Z) 2019-07-10 15:05:52 +02:00
Knut Wannheden
8b04f08e15 [jOOQ/jOOQ#8919] Implement formatting in MiniJAXB
The formatting logic is encapsulated by the new internal `XMLBuilder`
class which also required a new internal interface `XMLAppendable` which
is implemented by all XJC generated classes.

The XJC plugin was modified accordingly and all code was regenerated.

Also note that the `MiniJAXB` class was moved to package
`org.jooq.util.jaxb.tools`.
2019-07-10 11:26:58 +02:00
Knut Wannheden
9020e4eb42 [jOOQ/jOOQ#8914] Consistently use MiniJAXB 2019-07-09 14:34:17 +02:00
lukaseder
1b0113cc25 [jOOQ/jOOQ#8905] Use GeneratorWriter.encoding() instead of "UTF-8" 2019-07-05 13:46:15 +02:00
Lukas Eder
bcdadee556 [jOOQ/jOOQ#8905] GeneratorWriter should check the file size prior to
opening existing files to compare contents
2019-07-04 17:15:09 +02:00
Lukas Eder
514f2eda6d [jOOQ/jOOQ#5412] Reverted the feature 2019-07-03 15:27:09 +02:00
Lukas Eder
06b3e0aecd [#8863] Fix for ScalaGenerator 2019-07-02 09:43:07 +02:00
Lukas Eder
74f3263653 [jOOQ/jOOQ#8863] Use imported class name in Tables.java to dereference singleton table instance 2019-06-28 15:21:08 +02:00
Knut Wannheden
3dbcccb65a [jOOQ/jOOQ#8808] Only qualify sequence class references when required
The `Sequences` class will now only have fully qualified references to
the sequence classes when there is a name conflict between the schema
and any of its sequences.
2019-06-26 15:57:20 +02:00
Knut Wannheden
1733cd5eaa [jOOQ/jOOQ#8808] Generate qualified references into Sequences class
The references to the static sequence fields in the generated
`Sequences` class should be fully qualified in order to avoid potential
conflicts between schema and sequence names.
2019-06-26 15:26:46 +02:00
Knut Wannheden
517ad869b6 [jOOQ/jOOQ#8859] Check for sequences in generateSchemaIfEmpty()
The `JavaGenerator` should also generate Java code for schemas which
only contain sequences. This was missing in `generateSchemaIfEmpty()`.
2019-06-26 15:06:45 +02:00
Knut Wannheden
c5c8d1d256 Fixed more Javadoc warnings in jOOQ-codegen and jOOQ-meta 2019-06-26 10:26:28 +02:00
Knut Wannheden
32a4bbfff4 Fix all Javadoc warnings in jOOQ
Mostly replaced `>` with `&gt;` in code examples.
2019-06-26 09:34:52 +02:00
Lukas Eder
5aee8a9b5d [jOOQ/jOOQ#5412] Generate a Record from POJO unmapper on generated
records
2019-06-18 17:04:54 +02:00
Lukas Eder
45c298a4bc [jOOQ/jOOQ#5412] Generate a Record to POJO mapper on generated records 2019-06-18 16:48:44 +02:00
Lukas Eder
7f75f47c29 [jOOQ/jOOQ#8781] Improve error msg when org.jooq.util class not found
Users keep running into issues when they don't see why their
org.jooq.util classes from the code generator cannot be found. This
change helps them better find the new package qualification of types in
the jOOQ-meta and jOOQ-codegen modules.
2019-06-13 12:20:16 +02:00
Lukas Eder
09d3a4d26e [#8685] Avoid generating unnecessary {@inheritDoc} 2019-05-27 10:48:21 +02:00
Knut Wannheden
35fc136643 [#2059] Add MemSQL support
Implement support for new dialect SQLDialect#MEMSQL. Excluded from the
support are stored procedures, MemSQL specific DDL keywords, MemSQL
specific DML (like REPLACE), and for the time being also the PIVOT
clause (see #8643).

Approved-by: Lukas Eder
2019-05-21 14:38:06 +02:00
Lukas Eder
fce9626b13 [jOOQ/jOOQ#8615] Missing NOTICE file from commons-lang 2019-05-21 12:23:17 +02:00
lukaseder
1116644cde [#8550] Improve formatting of generated table-level JPA annotations 2019-04-18 11:23:35 +02:00
lukaseder
65d779065f [#8536] Missing constraint name in generated @UniqueConstraint annotation 2019-04-18 10:56:38 +02:00
lukaseder
97cab67e4a [#8535] Generate @UniqueConstraint annotation instead of @Column(unique = true)
The current distinction is confusing, and if redundant uniqueness information is present, then Hibernate ignores the @UniqueConstraint name. Hence, we will only generate the @UniqueConstraint annotation
2019-04-17 11:26:59 +02:00
lukaseder
1673a1b971 [#6234] The encoded newline characters must be decoded 2019-04-13 18:37:54 +02:00
Knut Wannheden
df2ec439bc [#6971] Add <onError/> to generator's <configuration/>
Using the new <onError/> (which accepts the values FAIL (default), LOG,
and SILENT) the generator's behavior on an encountered exceptions can be
controlled.
2019-04-10 12:20:17 +02:00
lukaseder
2785bc84ae [#8491] Remove unnecessary marker tokens in source code 2019-04-05 11:52:34 +02:00
lukaseder
a088bec1af [#8463] Add <includeCheckConstraints/> flag to code generator 2019-03-29 15:08:59 +01:00
lukaseder
8f7e2f0dbf [#8465] Add a new <logSlowResultsAfterSeconds/> code generation flag 2019-03-29 15:00:41 +01:00
lukaseder
2ea2d93736 [#8447] Add <sqlMatchesPartialQualification> 2019-03-26 10:54:54 +01:00
lukaseder
94a59f50a8 [#8407] Add code generation configuration flag to set Connection.setAutoCommit() 2019-03-14 14:38:28 +01:00
lukaseder
d79d634963 [#7719] Add code generation flag to treat MySQL TINYINT(1) as BOOLEAN 2019-03-07 12:53:51 +01:00
lukaseder
70fe064517 [#7809] Generate overridden Table.fieldsRow() method in generated tables 2019-03-05 14:17:42 +01:00
lukaseder
0999465dff [#8363] Slow check for similar generated files that differ by case 2019-02-28 14:32:49 +01:00
lukaseder
e57e49a746 [#8363] Slow check for similar generated files that differ by case 2019-02-28 14:22:14 +01:00
lukaseder
f81ddaca57 [#8361] [#8362]
- [#8361] Cache Patterns in MatcherStrategy
- [#8362] <regexFlags/> is not applied to matcher strategy
2019-02-28 13:14:46 +01:00
lukaseder
dd340e74be [#8360] Add new MatcherTransformType.LOWER_FIRST_LETTER and UPPER_FIRST_LETTER 2019-02-28 12:37:07 +01:00
lukaseder
04d03bfda0 [#2530] First working draft 2019-02-22 15:35:35 +01:00
lukaseder
83bfd238b6 [#6234] [#8138] Code generation whitespace configuration
- [#6234] Add newline configuration to code generator
- [#8138] Add indentation configuration to code generator
2018-12-21 11:21:25 +01:00
lukaseder
add8767a68 [#5215] Companion object for routine classes generated by ScalaGenerator cause java.lang.IllegalAccessError at runtime 2018-12-05 11:50:09 +01:00
lukaseder
12a5a26fd2 [#7680] Allow for overriding the order of generated import statements 2018-11-28 12:25:41 +01:00
lukaseder
e392b4eb65 [#8067] Code generator doesn't generate length on VARCHAR(n) ARRAY types 2018-11-27 13:21:49 +01:00
lukaseder
9a7eef2aff [#7496] [#7685] UDT data types are unqualified in PostgreSQL, when there is more than one UDT data type per schema 2018-11-22 14:43:39 +01:00
lukaseder
8197c65fbb [#7579] [#8044] Code generation fails on JDK9+ with javax.xml.bind.UnmarshalException: unexpected element when using external <configurationFile/> 2018-11-20 10:25:01 +01:00
lukaseder
a430a9b736 [#8000] Deprecate AbstractTable.createField(String, ...) methods 2018-11-01 17:02:39 +01:00
lukaseder
0d2351382e [#7947] Let code generation patterns match also partially qualified object names 2018-10-17 11:31:49 +02:00
lukaseder
a2bcf50b6e [#7874] Pull up DAOImpl.getId() to DAO.getId() 2018-10-02 13:47:49 +02:00
lukaseder
04ad13f68d [#7904] Apply optimistic locking logic also for non-updatable TableRecords on insert() 2018-10-02 13:43:34 +02:00
Nicolai Ehemann
2e8749009f [#7893] Generate valid javadoc for deprecated data types 2018-09-25 09:20:01 +02:00
Lukas Eder
93ece30335 [#5538] Compilation error in Keys.java when two tables contain the same (unique) index name in SQL Server 2018-08-28 14:32:16 +02:00
Lukas Eder
7a188c868c [#5969] Add <includeInvisibleColumns/> to code generator configuration to allow for hiding Oracle's and H2's INVISIBLE columns 2018-08-23 14:07:07 +02:00
Lukas Eder
7373ad1092 [#7747] Rename jooq-codegen.xsd Schema, Schemata, Catalog, Catalogs types to have a Type suffix 2018-08-10 12:23:04 +02:00
lukaseder
e6c5401cc0 [#7735] XJC generated classes should generate XmlElementWrapper element for Lists 2018-08-08 16:02:49 +02:00
lukaseder
550b6009e6 [#6612] Revert modularisation of jOOQ 2018-08-08 11:34:23 +02:00
lukaseder
aa5e1140b8 [#7693] Compilation error in generated code when generated Javadoc contains unicode escape sequences 2018-07-30 10:42:26 +02:00
lukaseder
daf7067885 [#7692] Compilation errors in generated code for PostgreSQL's pg_catalog schem 2018-07-30 09:47:50 +02:00
lukaseder
c7060ef4cc [#7649]
jOOQ 3.11+ transitive dependency prevents it from being loaded on WebLogic 12.1.3
2018-07-10 10:09:23 +02:00
lukaseder
84c1376e5a [#7595] Add support for Java 11 2018-07-06 17:02:09 +02:00
lukaseder
965a925876 Removed unnecessary groupId re-definitions 2018-06-14 16:28:04 +02:00
lukaseder
333466038c [#7583] Add new <generatedAnnotationType/> flag to specify Generated annotation 2018-06-14 16:01:45 +02:00
lukaseder
09517ce2ec [#7573] Code generator should generate implicit join constructors in absence of inbound foreign keys 2018-06-12 14:41:48 +02:00
lukaseder
98b8130f84 [#6612] Modularise jOOQ and cross-release JDK 8 and 9 builds 2018-06-12 14:26:32 +02:00
lukaseder
7021dfe369 [#7556] Add a specific error message if org.jooq.util packages are being used in 3.11+ 2018-06-08 14:08:53 +02:00
lukaseder
7ea8cce3d4 [#7554] UpdatableRecordImpl no longer work when globalObjectReferences is set to false 2018-06-08 12:35:24 +02:00
lukaseder
22b200a389 Release 3.12.0-SNAPSHOT 2018-06-08 10:03:57 +02:00
lukaseder
23df47ba4f Release 3.11.0 2018-06-07 16:45:37 +02:00
lukaseder
ba9ba94ea9 [#7547] Code generator should not generate "USER-DEFINED" for unknown data types 2018-06-06 14:12:39 +02:00
lukaseder
7383fdc574 [#7547] Code generator should not generate "USER-DEFINED" for unknown data types 2018-06-06 10:45:49 +02:00
lukaseder
0512228565 [#7358] Add support for SQL Data Warehouse 2018-05-25 18:30:57 +02:00
lukaseder
9cf6e785a9 [#6794] [#7501] Binding ARRAY of jsonb in Postgres function results in SQLDialectNotSupportedException 2018-05-24 16:23:32 +02:00
lukaseder
4a18ba32f1 [#1502] Make constructor public (for cross schema navigation) 2018-05-24 13:16:23 +02:00
lukaseder
975dac427f [#7500] Nullability is not correctly generated for Postgres JSONB columns 2018-05-24 12:30:22 +02:00
lukaseder
6ec1958876 [#7497] Adaptations after the merge 2018-05-23 12:57:30 +02:00
Tim Wilson
5a5bddc640 Presize ArrayLists whose max size is known 2018-05-16 21:57:07 -07:00
lukaseder
2a3a57faf8 [#6794] Custom type converters ignored for table-valued (set-returning) function parameters 2018-05-16 17:52:49 +02:00
lukaseder
c16aafcac5 [#1502] Fully qualify table name when table name and schema names match 2018-05-15 11:54:50 +02:00
lukaseder
b3ff200fce [#7474] Make number of seconds that are considered "slow" in jOOQ-meta configurable 2018-05-11 10:48:21 +02:00
lukaseder
58a538fb95 [#7441] JavaGenerator should allow for overriding POJO constructor generation 2018-04-26 16:04:25 +02:00
lukaseder
863ade3b3c [#5196] Add support for Amazon Aurora MySQL Edition 2018-04-26 13:22:09 +02:00
lukaseder
27b8103f6d [#7419] Rename jooq-meta and jooq-codegen packages to avoid conflicts in JPMS 2018-04-16 11:56:00 +02:00
lukaseder
c77fdd3c85 [#7419] Rename jooq-meta and jooq-codegen packages to avoid conflicts in JPMS 2018-04-16 11:35:01 +02:00
lukaseder
d0737ce8e4 [#7415] Add ability for MatcherStrategy to allow for customizing enum class names 2018-04-16 10:23:04 +02:00
lukaseder
44a6049562 [#7416] Misleading warning message when using external configurationFile with <matchers/> 2018-04-16 09:55:59 +02:00
lukaseder
86007b3540 [#7229] Add <forceIntegerTypesOnZeroScaleDecimals/> configuration to allow for treating DECIMAL types as BigDecimal 2018-03-23 15:25:08 +01:00
lukaseder
a840f75ce6 [#7340] <validationAnnotations/> should generate Size annotations also for (VAR)BINARY types 2018-03-22 16:47:54 +01:00
lukaseder
0f98ba3e2e [#7343] Add <includePackageConstants>, <includePackageRoutines>, <includePackageUDTs> code generation configuration flags 2018-03-22 16:35:42 +01:00
lukaseder
d0acc17226 [#6879] Add javax.xml.bind:jaxb-api dependency and avoid using the implementation 2018-02-20 15:17:26 +01:00
lukaseder
a1f9d3afbf [#4888] [#7210] Serializable on generated POJOs and interfaces
- [#4888] Add <serializablePojos/> to allow for POJOs not to be Serializable
- [#7210] Add <serializableInterfaces/> to allow for interfaces not to be Serializable
2018-02-20 13:28:02 +01:00
lukaseder
4bfd5aa284 [#6241] DataType.nullable() and defaultValue() are not generated for enum types 2018-02-19 11:44:30 +01:00
lukaseder
c5b515be79 [#7148] [#7158] Add public internal API for use by code generator (to work around Scala issues) 2018-02-12 13:36:10 +01:00
lukaseder
e3dfbc0a9f [#7148] Fixed Scala implementation 2018-02-12 12:26:15 +01:00
lukaseder
49fe6ebebf [#7148] Improved implicit join code generation
If table A references table B only once, then B is a much better method name than the foreign key name itself.
2018-02-09 13:26:40 +01:00
lukaseder
92cfbbb90c [#1502] Use GeneratorStrategy.getJavaMethodName() 2018-02-07 21:40:23 +01:00
lukaseder
c67ed24a88 [#7148] Prevent generation of constructor if there are no inbound foreign keys 2018-02-07 15:14:25 +01:00
lukaseder
1f426ea3b1 [#7148] Add code generation support for to-one implicit join relationships 2018-02-07 15:02:16 +01:00