From e63719fad01b98685ba6cda8d241cd80c1769286 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Mon, 23 May 2022 16:45:35 +0200 Subject: [PATCH] [jOOQ/jOOQ#12430] Make Java 17 the baseline for the jOOQ Open Source Edition --- .../codegen/DefaultGeneratorStrategy.java | 8 +- .../java/org/jooq/codegen/GenerationTool.java | 4 +- .../org/jooq/codegen/GeneratorWriter.java | 16 +- .../java/org/jooq/codegen/JavaGenerator.java | 32 ++-- .../PrefixSuffixGeneratorStrategy.java | 4 +- jOOQ-examples/jOOQ-academy/pom.xml | 6 +- .../jOOQ-checker-framework-example/pom.xml | 4 +- jOOQ-examples/jOOQ-javafx-example/pom.xml | 6 +- .../jOOQ-jpa-example-entities/pom.xml | 6 +- jOOQ-examples/jOOQ-jpa-example/pom.xml | 6 +- jOOQ-examples/jOOQ-kotlin-example/pom.xml | 6 +- jOOQ-examples/jOOQ-oracle-example/pom.xml | 6 +- jOOQ-examples/jOOQ-r2dbc-example/pom.xml | 6 +- .../jOOQ-spark-chart-example/pom.xml | 6 +- jOOQ-examples/jOOQ-spark-example/pom.xml | 6 +- jOOQ-examples/jOOQ-spring-example/pom.xml | 6 +- .../jOOQ-testcontainers-example/pom.xml | 6 +- .../test/containers/TestContainersTest.java | 6 +- .../pom.xml | 6 +- .../TestContainersTest.java | 6 +- .../jooq/meta/extensions/jpa/JPADatabase.java | 14 +- .../jooq/meta/extensions/ddl/DDLDatabase.java | 2 +- .../AbstractElementContainerDefinition.java | 2 +- .../jooq/meta/DefaultColumnDefinition.java | 2 +- .../java/org/jooq/meta/DefaultRelations.java | 2 +- .../java/org/jooq/meta/h2/H2Database.java | 44 ++--- .../org/jooq/meta/mysql/MySQLDatabase.java | 2 +- .../jooq/meta/postgres/PostgresDatabase.java | 2 +- jOOQ-xtend/pom.xml | 6 +- jOOQ/src/main/java/org/jooq/Asterisk.java | 2 +- jOOQ/src/main/java/org/jooq/CLIUtil.java | 12 +- .../src/main/java/org/jooq/ColumnElement.java | 6 +- jOOQ/src/main/java/org/jooq/Comment.java | 2 +- jOOQ/src/main/java/org/jooq/Constraint.java | 2 +- jOOQ/src/main/java/org/jooq/Converters.java | 8 +- jOOQ/src/main/java/org/jooq/Field.java | 2 +- .../main/java/org/jooq/FieldOrConstraint.java | 6 +- jOOQ/src/main/java/org/jooq/FieldOrRow.java | 6 +- .../java/org/jooq/FieldOrRowOrSelect.java | 6 +- jOOQ/src/main/java/org/jooq/Geography.java | 4 +- jOOQ/src/main/java/org/jooq/Geometry.java | 4 +- jOOQ/src/main/java/org/jooq/GroupField.java | 6 +- jOOQ/src/main/java/org/jooq/Index.java | 2 +- jOOQ/src/main/java/org/jooq/JSON.java | 4 +- jOOQ/src/main/java/org/jooq/JSONB.java | 4 +- jOOQ/src/main/java/org/jooq/OrderField.java | 6 +- jOOQ/src/main/java/org/jooq/Param.java | 2 +- .../main/java/org/jooq/ParamOrVariable.java | 6 +- .../main/java/org/jooq/QualifiedAsterisk.java | 2 +- jOOQ/src/main/java/org/jooq/Row.java | 2 +- jOOQ/src/main/java/org/jooq/Select.java | 2 +- jOOQ/src/main/java/org/jooq/SelectField.java | 2 +- .../java/org/jooq/SelectFieldOrAsterisk.java | 6 +- jOOQ/src/main/java/org/jooq/SortField.java | 2 +- jOOQ/src/main/java/org/jooq/Table.java | 2 +- jOOQ/src/main/java/org/jooq/TableElement.java | 6 +- jOOQ/src/main/java/org/jooq/TableLike.java | 6 +- jOOQ/src/main/java/org/jooq/XML.java | 4 +- jOOQ/src/main/java/org/jooq/impl/Abs.java | 2 +- .../java/org/jooq/impl/AbstractContext.java | 6 +- .../java/org/jooq/impl/AbstractDMLQuery.java | 16 +- .../java/org/jooq/impl/AbstractField.java | 12 +- .../main/java/org/jooq/impl/AbstractMeta.java | 4 +- .../main/java/org/jooq/impl/AbstractName.java | 2 +- .../java/org/jooq/impl/AbstractNamed.java | 4 +- .../java/org/jooq/impl/AbstractParam.java | 18 +- .../java/org/jooq/impl/AbstractQueryPart.java | 4 +- .../java/org/jooq/impl/AbstractRecord.java | 8 +- .../java/org/jooq/impl/AbstractResult.java | 38 ++-- .../java/org/jooq/impl/AbstractStore.java | 2 +- .../org/jooq/impl/AbstractStoreQuery.java | 4 +- .../java/org/jooq/impl/AbstractTable.java | 4 +- .../org/jooq/impl/AbstractWindowFunction.java | 4 +- jOOQ/src/main/java/org/jooq/impl/Acos.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Acosh.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Acoth.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Add.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Alias.java | 8 +- .../java/org/jooq/impl/AlterTableImpl.java | 12 +- jOOQ/src/main/java/org/jooq/impl/And.java | 2 +- .../src/main/java/org/jooq/impl/AnyValue.java | 2 +- .../src/main/java/org/jooq/impl/ArrayGet.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Ascii.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Asin.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Asinh.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Atan.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Atan2.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Atanh.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Avg.java | 2 +- .../main/java/org/jooq/impl/BatchCRUD.java | 4 +- jOOQ/src/main/java/org/jooq/impl/BitAnd.java | 2 +- .../main/java/org/jooq/impl/BitAndAgg.java | 2 +- .../src/main/java/org/jooq/impl/BitCount.java | 2 +- .../main/java/org/jooq/impl/BitLength.java | 2 +- jOOQ/src/main/java/org/jooq/impl/BitNand.java | 2 +- .../main/java/org/jooq/impl/BitNandAgg.java | 2 +- jOOQ/src/main/java/org/jooq/impl/BitNor.java | 2 +- .../main/java/org/jooq/impl/BitNorAgg.java | 2 +- jOOQ/src/main/java/org/jooq/impl/BitNot.java | 2 +- jOOQ/src/main/java/org/jooq/impl/BitOr.java | 2 +- .../src/main/java/org/jooq/impl/BitOrAgg.java | 2 +- jOOQ/src/main/java/org/jooq/impl/BitXNor.java | 2 +- .../main/java/org/jooq/impl/BitXNorAgg.java | 2 +- jOOQ/src/main/java/org/jooq/impl/BitXor.java | 2 +- .../main/java/org/jooq/impl/BitXorAgg.java | 2 +- .../main/java/org/jooq/impl/BlockImpl.java | 4 +- jOOQ/src/main/java/org/jooq/impl/BoolAnd.java | 2 +- jOOQ/src/main/java/org/jooq/impl/BoolOr.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Cache.java | 2 +- .../main/java/org/jooq/impl/Cardinality.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Ceil.java | 2 +- .../main/java/org/jooq/impl/CharLength.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Chr.java | 2 +- .../java/org/jooq/impl/ConditionAsField.java | 2 +- .../src/main/java/org/jooq/impl/Contains.java | 2 +- .../org/jooq/impl/ContainsIgnoreCase.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Convert.java | 24 +-- .../java/org/jooq/impl/ConvertedDataType.java | 2 +- .../main/java/org/jooq/impl/ConvertedVal.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Corr.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Cos.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Cosh.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Cot.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Coth.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Count.java | 2 +- .../src/main/java/org/jooq/impl/CovarPop.java | 2 +- .../main/java/org/jooq/impl/CovarSamp.java | 2 +- .../java/org/jooq/impl/CreateTableImpl.java | 4 +- .../java/org/jooq/impl/CurrentCatalog.java | 2 +- .../java/org/jooq/impl/CurrentSchema.java | 2 +- .../main/java/org/jooq/impl/CurrentUser.java | 2 +- .../java/org/jooq/impl/CustomCondition.java | 2 +- .../main/java/org/jooq/impl/CustomField.java | 2 +- .../java/org/jooq/impl/CustomQueryPart.java | 2 +- .../main/java/org/jooq/impl/CustomTable.java | 2 +- jOOQ/src/main/java/org/jooq/impl/DSL.java | 20 +- .../org/jooq/impl/DataChangeDeltaTable.java | 4 +- jOOQ/src/main/java/org/jooq/impl/DateAdd.java | 2 +- .../java/org/jooq/impl/DefaultBinding.java | 26 +-- .../jooq/impl/DefaultCloseableDSLContext.java | 4 +- .../org/jooq/impl/DefaultConfiguration.java | 8 +- .../java/org/jooq/impl/DefaultDSLContext.java | 12 +- .../org/jooq/impl/DefaultRecordMapper.java | 78 ++++---- .../org/jooq/impl/DefaultRecordUnmapper.java | 6 +- .../jooq/impl/DefaultTransactionContext.java | 2 +- .../jooq/impl/DefaultUnwrapperProvider.java | 8 +- jOOQ/src/main/java/org/jooq/impl/Degrees.java | 2 +- .../org/jooq/impl/DelayedArrayCollector.java | 4 +- jOOQ/src/main/java/org/jooq/impl/Diff.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Digits.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Div.java | 2 +- .../src/main/java/org/jooq/impl/EndsWith.java | 2 +- .../org/jooq/impl/EndsWithIgnoreCase.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Eq.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Euler.java | 2 +- .../src/main/java/org/jooq/impl/Excluded.java | 2 +- .../java/org/jooq/impl/ExecuteListeners.java | 4 +- jOOQ/src/main/java/org/jooq/impl/Exists.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Exp.java | 2 +- .../main/java/org/jooq/impl/ExplainQuery.java | 4 +- .../main/java/org/jooq/impl/Expression.java | 2 +- .../java/org/jooq/impl/FieldCondition.java | 2 +- .../java/org/jooq/impl/FieldMapForUpdate.java | 4 +- .../main/java/org/jooq/impl/FieldsImpl.java | 16 +- jOOQ/src/main/java/org/jooq/impl/Floor.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Ge.java | 2 +- .../java/org/jooq/impl/GroupFieldList.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Gt.java | 2 +- jOOQ/src/main/java/org/jooq/impl/IAdd.java | 2 +- jOOQ/src/main/java/org/jooq/impl/IDiv.java | 2 +- jOOQ/src/main/java/org/jooq/impl/IMul.java | 2 +- jOOQ/src/main/java/org/jooq/impl/ISub.java | 2 +- jOOQ/src/main/java/org/jooq/impl/In.java | 2 +- .../jooq/impl/InformationSchemaExport.java | 10 +- .../main/java/org/jooq/impl/InsertImpl.java | 8 +- .../java/org/jooq/impl/InsertQueryImpl.java | 4 +- .../src/main/java/org/jooq/impl/Internal.java | 12 +- .../main/java/org/jooq/impl/Interpreter.java | 108 +++++------ .../java/org/jooq/impl/IsDistinctFrom.java | 2 +- .../main/java/org/jooq/impl/IsDocument.java | 2 +- jOOQ/src/main/java/org/jooq/impl/IsJson.java | 2 +- .../java/org/jooq/impl/IsNotDistinctFrom.java | 2 +- .../java/org/jooq/impl/IsNotDocument.java | 2 +- .../main/java/org/jooq/impl/IsNotJson.java | 2 +- .../main/java/org/jooq/impl/IsNotNull.java | 2 +- jOOQ/src/main/java/org/jooq/impl/IsNull.java | 2 +- .../main/java/org/jooq/impl/JSONArray.java | 2 +- .../java/org/jooq/impl/JSONEntryImpl.java | 10 +- .../main/java/org/jooq/impl/JSONObject.java | 2 +- jOOQ/src/main/java/org/jooq/impl/LTrim.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Le.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Left.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Like.java | 2 +- .../java/org/jooq/impl/LikeIgnoreCase.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Limit.java | 4 +- jOOQ/src/main/java/org/jooq/impl/Ln.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Log.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Log10.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Lower.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Lpad.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Lt.java | 2 +- jOOQ/src/main/java/org/jooq/impl/MD5.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Max.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Median.java | 2 +- .../main/java/org/jooq/impl/MergeImpl.java | 4 +- .../src/main/java/org/jooq/impl/MetaImpl.java | 22 +-- jOOQ/src/main/java/org/jooq/impl/Min.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Mod.java | 2 +- .../main/java/org/jooq/impl/ModeDeferred.java | 8 +- jOOQ/src/main/java/org/jooq/impl/Mul.java | 2 +- .../src/main/java/org/jooq/impl/Multiset.java | 2 +- .../java/org/jooq/impl/MultisetDataType.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Ne.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Not.java | 2 +- .../src/main/java/org/jooq/impl/NotField.java | 2 +- jOOQ/src/main/java/org/jooq/impl/NotIn.java | 2 +- jOOQ/src/main/java/org/jooq/impl/NotLike.java | 2 +- .../java/org/jooq/impl/NotLikeIgnoreCase.java | 2 +- .../main/java/org/jooq/impl/NotSimilarTo.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Nullif.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Nvl.java | 2 +- .../main/java/org/jooq/impl/OctetLength.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Or.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Overlay.java | 2 +- .../java/org/jooq/impl/ParamCollector.java | 2 +- .../main/java/org/jooq/impl/ParserImpl.java | 96 +++++----- jOOQ/src/main/java/org/jooq/impl/Pi.java | 2 +- .../src/main/java/org/jooq/impl/Position.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Power.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Product.java | 2 +- jOOQ/src/main/java/org/jooq/impl/QOM.java | 26 +-- .../java/org/jooq/impl/QualifiedName.java | 10 +- .../java/org/jooq/impl/QualifiedRowid.java | 2 +- .../main/java/org/jooq/impl/QueriesImpl.java | 4 +- .../jooq/impl/QueryPartCollectionView.java | 16 +- .../java/org/jooq/impl/QueryPartList.java | 6 +- .../java/org/jooq/impl/QueryPartListView.java | 6 +- jOOQ/src/main/java/org/jooq/impl/R2DBC.java | 8 +- jOOQ/src/main/java/org/jooq/impl/RTrim.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Radians.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Rand.java | 2 +- .../src/main/java/org/jooq/impl/RegrAvgX.java | 2 +- .../src/main/java/org/jooq/impl/RegrAvgY.java | 2 +- .../main/java/org/jooq/impl/RegrCount.java | 2 +- .../java/org/jooq/impl/RegrIntercept.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RegrR2.java | 2 +- .../main/java/org/jooq/impl/RegrSlope.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RegrSxx.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RegrSxy.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RegrSyy.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Repeat.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Replace.java | 2 +- .../main/java/org/jooq/impl/ResultImpl.java | 4 +- .../java/org/jooq/impl/ResultQueryTrait.java | 10 +- .../main/java/org/jooq/impl/ResultsImpl.java | 6 +- jOOQ/src/main/java/org/jooq/impl/Reverse.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Right.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Round.java | 4 +- .../main/java/org/jooq/impl/RowIdImpl.java | 2 +- .../org/jooq/impl/RowSubqueryCondition.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Rpad.java | 2 +- .../src/main/java/org/jooq/impl/SQLQuery.java | 4 +- .../java/org/jooq/impl/SQLResultQuery.java | 4 +- .../main/java/org/jooq/impl/SchemaImpl.java | 2 +- .../main/java/org/jooq/impl/ScopeStack.java | 2 +- .../java/org/jooq/impl/SelectFieldList.java | 8 +- .../main/java/org/jooq/impl/SelectImpl.java | 4 +- .../java/org/jooq/impl/SelectQueryImpl.java | 36 ++-- .../main/java/org/jooq/impl/SequenceImpl.java | 8 +- jOOQ/src/main/java/org/jooq/impl/Shl.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Shr.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Sign.java | 2 +- .../main/java/org/jooq/impl/SimilarTo.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Sin.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Sinh.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Space.java | 2 +- .../main/java/org/jooq/impl/SplitPart.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Sqrt.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Square.java | 2 +- .../main/java/org/jooq/impl/StartsWith.java | 2 +- .../org/jooq/impl/StartsWithIgnoreCase.java | 2 +- .../main/java/org/jooq/impl/StddevPop.java | 2 +- .../main/java/org/jooq/impl/StddevSamp.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Sub.java | 2 +- .../main/java/org/jooq/impl/Substring.java | 2 +- .../java/org/jooq/impl/SubstringIndex.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Sum.java | 2 +- jOOQ/src/main/java/org/jooq/impl/TableEq.java | 2 +- .../main/java/org/jooq/impl/TableImpl.java | 4 +- jOOQ/src/main/java/org/jooq/impl/TableNe.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Tan.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Tanh.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Tau.java | 2 +- jOOQ/src/main/java/org/jooq/impl/ToChar.java | 2 +- jOOQ/src/main/java/org/jooq/impl/ToDate.java | 2 +- jOOQ/src/main/java/org/jooq/impl/ToHex.java | 2 +- .../main/java/org/jooq/impl/ToTimestamp.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Tools.java | 180 +++++++++--------- .../main/java/org/jooq/impl/Translate.java | 2 +- .../jooq/impl/TranslatingMetaProvider.java | 22 +-- jOOQ/src/main/java/org/jooq/impl/Trim.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Trunc.java | 2 +- .../main/java/org/jooq/impl/UDTFieldImpl.java | 4 +- jOOQ/src/main/java/org/jooq/impl/Unique.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Upper.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Uuid.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Val.java | 4 +- jOOQ/src/main/java/org/jooq/impl/VarPop.java | 2 +- jOOQ/src/main/java/org/jooq/impl/VarSamp.java | 2 +- .../main/java/org/jooq/impl/VersionImpl.java | 2 +- .../main/java/org/jooq/impl/WidthBucket.java | 2 +- .../main/java/org/jooq/impl/XMLComment.java | 2 +- .../main/java/org/jooq/impl/XMLForest.java | 2 +- .../main/java/org/jooq/impl/XMLHandler.java | 2 +- .../main/java/org/jooq/impl/Xmlconcat.java | 2 +- jOOQ/src/main/java/org/jooq/impl/Xmlpi.java | 2 +- .../main/java/org/jooq/impl/Xmlserialize.java | 2 +- .../java/org/jooq/tools/LoggerListener.java | 2 +- .../tools/jdbc/MockConnectionProvider.java | 4 +- .../tools/jdbc/MockResultSetMetaData.java | 4 +- .../org/jooq/util/jaxb/tools/XMLBuilder.java | 4 +- .../org/jooq/util/postgres/PostgresUtils.java | 8 +- pom.xml | 6 +- 323 files changed, 904 insertions(+), 904 deletions(-) diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/DefaultGeneratorStrategy.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/DefaultGeneratorStrategy.java index 7175732aea..3e46ce9ec9 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/DefaultGeneratorStrategy.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/DefaultGeneratorStrategy.java @@ -274,7 +274,7 @@ public class DefaultGeneratorStrategy extends AbstractGeneratorStrategy { public String getJavaMethodName(Definition definition, Mode mode) { // [#7148] If table A references table B only once, then B is the ideal name // for the implicit JOIN path. Otherwise, fall back to the foreign key name - if (getUseTableNameForUnambiguousFKs() && definition instanceof ForeignKeyDefinition) { ForeignKeyDefinition fk = (ForeignKeyDefinition) definition; + if (getUseTableNameForUnambiguousFKs() && definition instanceof ForeignKeyDefinition fk) { TableDefinition referenced = fk.getReferencedTable(); if (fk.getKeyTable().getForeignKeys(referenced).size() == 1) @@ -489,7 +489,7 @@ public class DefaultGeneratorStrategy extends AbstractGeneratorStrategy { return "embeddables"; // [#799] UDT's are also packages - else if (definition instanceof UDTDefinition) { UDTDefinition u = (UDTDefinition) definition; + else if (definition instanceof UDTDefinition u) { // [#330] [#6529] A UDT inside of a package is a PL/SQL RECORD type if (u.getPackage() != null) @@ -499,7 +499,7 @@ public class DefaultGeneratorStrategy extends AbstractGeneratorStrategy { } else if (definition instanceof PackageDefinition) return "packages"; - else if (definition instanceof RoutineDefinition) { RoutineDefinition r = (RoutineDefinition) definition; + else if (definition instanceof RoutineDefinition r) { if (r.getPackage() instanceof UDTDefinition) return "udt." + getJavaIdentifier(r.getPackage()).toLowerCase(targetLocale); else if (r.getPackage() != null) @@ -511,7 +511,7 @@ public class DefaultGeneratorStrategy extends AbstractGeneratorStrategy { return "enums"; else if (definition instanceof DomainDefinition) return "domains"; - else if (definition instanceof ArrayDefinition) { ArrayDefinition a = (ArrayDefinition) definition; + else if (definition instanceof ArrayDefinition a) { // [#7125] An array inside of a package is a PL/SQL TABLE type if (a.getPackage() != null) diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/GenerationTool.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/GenerationTool.java index 756c17fa39..257e259a0f 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/GenerationTool.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/GenerationTool.java @@ -618,8 +618,8 @@ public class GenerationTool { if (d.getRegexFlags() != null) { database.setRegexFlags(d.getRegexFlags()); - if (strategy instanceof MatcherStrategy) - ((MatcherStrategy) strategy).getPatterns().setRegexFlags(d.getRegexFlags()); + if (strategy instanceof MatcherStrategy s) + s.getPatterns().setRegexFlags(d.getRegexFlags()); } database.setRegexMatchesPartialQualification(!FALSE.equals(d.isRegexMatchesPartialQualification())); diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/GeneratorWriter.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/GeneratorWriter.java index 63e16bae43..4ff7b3c02f 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/GeneratorWriter.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/GeneratorWriter.java @@ -70,14 +70,14 @@ public abstract class GeneratorWriter> { * A pattern to be used with "list" expressions */ private static final Pattern PATTERN_LIST = Pattern.compile( - ("" + - "\\[\n" + - " (?:\\[before=([^]]+)])?\n" + - " (?:\\[separator=([^]]+)])?\n" + - " (?:\\[after=([^]]+)])?\n" + - " (?:\\[(.*)])\n" + - "]\n" + - ""), + """ + \\[ + (?:\\[before=([^]]+)])? + (?:\\[separator=([^]]+)])? + (?:\\[after=([^]]+)])? + (?:\\[(.*)]) + ] + """, Pattern.DOTALL | Pattern.COMMENTS ); diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java index 761a228a10..3ca4d35658 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java @@ -4246,7 +4246,7 @@ public class JavaGenerator extends AbstractGenerator { Query query = parser.parseQuery(method.getSql()); // TODO: ResultQuery (e.g. RETURNING clause) - if (query instanceof Select) { Select select = (Select) query; + if (query instanceof Select select) { final String namespace = StringUtils.toUC(method.getName(), getTargetLocale()); final List> fields = select.getSelect(); final TableDefinition table = new DefaultMetaTableDefinition(dao.getSchema(), new TableImpl("t") {{ @@ -7530,8 +7530,8 @@ public class JavaGenerator extends AbstractGenerator { return false; default: - - + if (true) + return true; return false; } @@ -7557,20 +7557,20 @@ public class JavaGenerator extends AbstractGenerator { String result = string.replace("\"\"\"", "\\\"\\\"\\\""); + // Only Java has incidental whitespace support (?) + // The first line may be ill-indented, because we read it from XML. + // Depending on the reader, the content may have been trimmed. + if (!result.startsWith(" ")) { + Matcher matcher = P_LEADING_WHITESPACE.matcher(result); + int indent = Integer.MAX_VALUE; + while (matcher.find()) + indent = Math.min(indent, matcher.group(1).length()); + result = (indent != Integer.MAX_VALUE ? " ".repeat(indent) : "") + result; + } - - - - - - - - - - - + result = result.stripIndent(); return "\"\"\"\n" + result + "\n\"\"\""; @@ -8700,8 +8700,8 @@ public class JavaGenerator extends AbstractGenerator { if (routine.getOverload() != null) out.println("setOverloaded(true)%s", semicolon); - if (routine instanceof PostgresRoutineDefinition) - if (((PostgresRoutineDefinition) routine).isProcedure()) + if (routine instanceof PostgresRoutineDefinition p) + if (p.isProcedure()) out.println("setSQLUsable(false)%s", semicolon); diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/PrefixSuffixGeneratorStrategy.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/PrefixSuffixGeneratorStrategy.java index 96c8de6550..e59ecee6a2 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/PrefixSuffixGeneratorStrategy.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/PrefixSuffixGeneratorStrategy.java @@ -70,8 +70,8 @@ public class PrefixSuffixGeneratorStrategy extends AbstractDelegatingGeneratorSt GeneratorStrategy delegate, Function configuration ) { - return delegate instanceof GeneratorStrategyWrapper - ? new GeneratorStrategyWrapper(((GeneratorStrategyWrapper) delegate).generator, configuration.apply(new PrefixSuffixGeneratorStrategy(((GeneratorStrategyWrapper) delegate).delegate))) + return delegate instanceof GeneratorStrategyWrapper w + ? new GeneratorStrategyWrapper(w.generator, configuration.apply(new PrefixSuffixGeneratorStrategy(w.delegate))) : configuration.apply(new PrefixSuffixGeneratorStrategy(delegate)); } diff --git a/jOOQ-examples/jOOQ-academy/pom.xml b/jOOQ-examples/jOOQ-academy/pom.xml index 0151da6153..bd9dd3e459 100644 --- a/jOOQ-examples/jOOQ-academy/pom.xml +++ b/jOOQ-examples/jOOQ-academy/pom.xml @@ -82,12 +82,12 @@ 256m UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 true lines,vars,source diff --git a/jOOQ-examples/jOOQ-checker-framework-example/pom.xml b/jOOQ-examples/jOOQ-checker-framework-example/pom.xml index 4ed2fa7c6e..b25f85fcc1 100644 --- a/jOOQ-examples/jOOQ-checker-framework-example/pom.xml +++ b/jOOQ-examples/jOOQ-checker-framework-example/pom.xml @@ -87,8 +87,8 @@ javac-with-errorprone true false - 11 - 11 + 16 + 16 org.jooq diff --git a/jOOQ-examples/jOOQ-javafx-example/pom.xml b/jOOQ-examples/jOOQ-javafx-example/pom.xml index a41dc38b05..bd89bbb255 100644 --- a/jOOQ-examples/jOOQ-javafx-example/pom.xml +++ b/jOOQ-examples/jOOQ-javafx-example/pom.xml @@ -85,12 +85,12 @@ 256m UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 true lines,vars,source diff --git a/jOOQ-examples/jOOQ-jpa-example-entities/pom.xml b/jOOQ-examples/jOOQ-jpa-example-entities/pom.xml index 4b1d77b2b0..bb99a8c90e 100644 --- a/jOOQ-examples/jOOQ-jpa-example-entities/pom.xml +++ b/jOOQ-examples/jOOQ-jpa-example-entities/pom.xml @@ -41,12 +41,12 @@ maven-compiler-plugin - 11 + 16 - 11 - 11 + 16 + 16 diff --git a/jOOQ-examples/jOOQ-jpa-example/pom.xml b/jOOQ-examples/jOOQ-jpa-example/pom.xml index d8be43d8f5..5220af28c0 100644 --- a/jOOQ-examples/jOOQ-jpa-example/pom.xml +++ b/jOOQ-examples/jOOQ-jpa-example/pom.xml @@ -81,12 +81,12 @@ 256m UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 true lines,vars,source diff --git a/jOOQ-examples/jOOQ-kotlin-example/pom.xml b/jOOQ-examples/jOOQ-kotlin-example/pom.xml index bf017027a0..6d01471109 100644 --- a/jOOQ-examples/jOOQ-kotlin-example/pom.xml +++ b/jOOQ-examples/jOOQ-kotlin-example/pom.xml @@ -184,12 +184,12 @@ maven-compiler-plugin - 11 + 16 - 11 - 11 + 16 + 16 diff --git a/jOOQ-examples/jOOQ-oracle-example/pom.xml b/jOOQ-examples/jOOQ-oracle-example/pom.xml index 3001eb86e8..597cf375b6 100644 --- a/jOOQ-examples/jOOQ-oracle-example/pom.xml +++ b/jOOQ-examples/jOOQ-oracle-example/pom.xml @@ -64,12 +64,12 @@ 256m UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 true lines,vars,source diff --git a/jOOQ-examples/jOOQ-r2dbc-example/pom.xml b/jOOQ-examples/jOOQ-r2dbc-example/pom.xml index dcf22ac11c..79ca65d0a5 100644 --- a/jOOQ-examples/jOOQ-r2dbc-example/pom.xml +++ b/jOOQ-examples/jOOQ-r2dbc-example/pom.xml @@ -20,12 +20,12 @@ maven-compiler-plugin - 11 + 16 - 11 - 11 + 16 + 16 diff --git a/jOOQ-examples/jOOQ-spark-chart-example/pom.xml b/jOOQ-examples/jOOQ-spark-chart-example/pom.xml index b81a3a4778..b8821fa2a1 100644 --- a/jOOQ-examples/jOOQ-spark-chart-example/pom.xml +++ b/jOOQ-examples/jOOQ-spark-chart-example/pom.xml @@ -41,12 +41,12 @@ maven-compiler-plugin - 11 + 16 - 11 - 11 + 16 + 16 diff --git a/jOOQ-examples/jOOQ-spark-example/pom.xml b/jOOQ-examples/jOOQ-spark-example/pom.xml index 0559b82b46..7962b0e5f1 100644 --- a/jOOQ-examples/jOOQ-spark-example/pom.xml +++ b/jOOQ-examples/jOOQ-spark-example/pom.xml @@ -96,12 +96,12 @@ 256m UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 true lines,vars,source diff --git a/jOOQ-examples/jOOQ-spring-example/pom.xml b/jOOQ-examples/jOOQ-spring-example/pom.xml index 411527f46c..d87df69ea9 100644 --- a/jOOQ-examples/jOOQ-spring-example/pom.xml +++ b/jOOQ-examples/jOOQ-spring-example/pom.xml @@ -96,12 +96,12 @@ 256m UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 true lines,vars,source diff --git a/jOOQ-examples/jOOQ-testcontainers-example/pom.xml b/jOOQ-examples/jOOQ-testcontainers-example/pom.xml index 64423d93e0..946e066b8b 100644 --- a/jOOQ-examples/jOOQ-testcontainers-example/pom.xml +++ b/jOOQ-examples/jOOQ-testcontainers-example/pom.xml @@ -67,12 +67,12 @@ 256m UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 true lines,vars,source diff --git a/jOOQ-examples/jOOQ-testcontainers-example/src/test/java/org/jooq/example/test/containers/TestContainersTest.java b/jOOQ-examples/jOOQ-testcontainers-example/src/test/java/org/jooq/example/test/containers/TestContainersTest.java index 4898cd7884..68bd547e77 100644 --- a/jOOQ-examples/jOOQ-testcontainers-example/src/test/java/org/jooq/example/test/containers/TestContainersTest.java +++ b/jOOQ-examples/jOOQ-testcontainers-example/src/test/java/org/jooq/example/test/containers/TestContainersTest.java @@ -64,9 +64,9 @@ public class TestContainersTest { } } - static final /* record */ class Film { private final String title; public Film(String title) { this.title = title; } public String title() { return title; } @Override public boolean equals(Object o) { if (!(o instanceof Film)) return false; Film other = (Film) o; if (!java.util.Objects.equals(this.title, other.title)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.title); } @Override public String toString() { return new StringBuilder("Film[").append("title=").append(this.title).append("]").toString(); } } - static final /* record */ class Actor { private final String firstName; private final String lastName; public Actor(String firstName, String lastName) { this.firstName = firstName; this.lastName = lastName; } public String firstName() { return firstName; } public String lastName() { return lastName; } @Override public boolean equals(Object o) { if (!(o instanceof Actor)) return false; Actor other = (Actor) o; if (!java.util.Objects.equals(this.firstName, other.firstName)) return false; if (!java.util.Objects.equals(this.lastName, other.lastName)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.firstName, this.lastName); } @Override public String toString() { return new StringBuilder("Actor[").append("firstName=").append(this.firstName).append(", lastName=").append(this.lastName).append("]").toString(); } } - static final /* record */ class Category { private final String name; public Category(String name) { this.name = name; } public String name() { return name; } @Override public boolean equals(Object o) { if (!(o instanceof Category)) return false; Category other = (Category) o; if (!java.util.Objects.equals(this.name, other.name)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.name); } @Override public String toString() { return new StringBuilder("Category[").append("name=").append(this.name).append("]").toString(); } } + record Film(String title) {} + record Actor(String firstName, String lastName) {} + record Category(String name) {} @Test public void testMultisetMappingIntoJavaRecords() { diff --git a/jOOQ-examples/jOOQ-testcontainers-flyway-example/pom.xml b/jOOQ-examples/jOOQ-testcontainers-flyway-example/pom.xml index 9fb6e3e249..e37d387daf 100644 --- a/jOOQ-examples/jOOQ-testcontainers-flyway-example/pom.xml +++ b/jOOQ-examples/jOOQ-testcontainers-flyway-example/pom.xml @@ -66,12 +66,12 @@ 256m UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 true lines,vars,source diff --git a/jOOQ-examples/jOOQ-testcontainers-flyway-example/src/test/java/org/jooq/example/testcontainersflyway/TestContainersTest.java b/jOOQ-examples/jOOQ-testcontainers-flyway-example/src/test/java/org/jooq/example/testcontainersflyway/TestContainersTest.java index db5b1e47be..b017c91a08 100644 --- a/jOOQ-examples/jOOQ-testcontainers-flyway-example/src/test/java/org/jooq/example/testcontainersflyway/TestContainersTest.java +++ b/jOOQ-examples/jOOQ-testcontainers-flyway-example/src/test/java/org/jooq/example/testcontainersflyway/TestContainersTest.java @@ -51,9 +51,9 @@ public class TestContainersTest { } } - static final /* record */ class Film { private final String title; public Film(String title) { this.title = title; } public String title() { return title; } @Override public boolean equals(Object o) { if (!(o instanceof Film)) return false; Film other = (Film) o; if (!java.util.Objects.equals(this.title, other.title)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.title); } @Override public String toString() { return new StringBuilder("Film[").append("title=").append(this.title).append("]").toString(); } } - static final /* record */ class Actor { private final String firstName; private final String lastName; public Actor(String firstName, String lastName) { this.firstName = firstName; this.lastName = lastName; } public String firstName() { return firstName; } public String lastName() { return lastName; } @Override public boolean equals(Object o) { if (!(o instanceof Actor)) return false; Actor other = (Actor) o; if (!java.util.Objects.equals(this.firstName, other.firstName)) return false; if (!java.util.Objects.equals(this.lastName, other.lastName)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.firstName, this.lastName); } @Override public String toString() { return new StringBuilder("Actor[").append("firstName=").append(this.firstName).append(", lastName=").append(this.lastName).append("]").toString(); } } - static final /* record */ class Category { private final String name; public Category(String name) { this.name = name; } public String name() { return name; } @Override public boolean equals(Object o) { if (!(o instanceof Category)) return false; Category other = (Category) o; if (!java.util.Objects.equals(this.name, other.name)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.name); } @Override public String toString() { return new StringBuilder("Category[").append("name=").append(this.name).append("]").toString(); } } + record Film(String title) {} + record Actor(String firstName, String lastName) {} + record Category(String name) {} @Test public void testMultisetMappingIntoJavaRecords() { diff --git a/jOOQ-meta-extensions-hibernate/src/main/java/org/jooq/meta/extensions/jpa/JPADatabase.java b/jOOQ-meta-extensions-hibernate/src/main/java/org/jooq/meta/extensions/jpa/JPADatabase.java index d346af45f8..94a6a2e382 100644 --- a/jOOQ-meta-extensions-hibernate/src/main/java/org/jooq/meta/extensions/jpa/JPADatabase.java +++ b/jOOQ-meta-extensions-hibernate/src/main/java/org/jooq/meta/extensions/jpa/JPADatabase.java @@ -157,13 +157,13 @@ public class JPADatabase extends AbstractInterpretingDatabase { if (count > 0) log.info("Entities added", "Number of entities added: " + count); else - log.warn("No entities added", ("" + - "No entities were added to the MetadataSources\n" + - "\n" + - "This can have several reasons, including:\n" + - "- The packages you've listed do not exist ({packages})\n" + - "- The entities in the listed packages are not on the JPADatabase classpath (you must compile them before running jOOQ's codegen, see \"how to organise your dependencies\" in the manual: https://www.jooq.org/doc/latest/manual/code-generation/codegen-jpa/!)\n" + - "").replace("{packages}", packages) + log.warn("No entities added", """ + No entities were added to the MetadataSources + + This can have several reasons, including: + - The packages you've listed do not exist ({packages}) + - The entities in the listed packages are not on the JPADatabase classpath (you must compile them before running jOOQ's codegen, see "how to organise your dependencies" in the manual: https://www.jooq.org/doc/latest/manual/code-generation/codegen-jpa/!) + """.replace("{packages}", packages) ); // This seems to be the way to do this in idiomatic Hibernate 5.0 API diff --git a/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/ddl/DDLDatabase.java b/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/ddl/DDLDatabase.java index 390dcd759a..1f3a4e2e44 100644 --- a/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/ddl/DDLDatabase.java +++ b/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/ddl/DDLDatabase.java @@ -127,7 +127,7 @@ public class DDLDatabase extends AbstractInterpretingDatabase { ctx.configuration().set(new VisitListener() { @Override public void visitStart(VisitContext vc) { - if (vc.queryPart() instanceof Name) { Name n = (Name) vc.queryPart(); + if (vc.queryPart() instanceof Name n) { Name[] parts = n.parts(); boolean changed = false; diff --git a/jOOQ-meta/src/main/java/org/jooq/meta/AbstractElementContainerDefinition.java b/jOOQ-meta/src/main/java/org/jooq/meta/AbstractElementContainerDefinition.java index 0f12bc314b..b7922b40a6 100644 --- a/jOOQ-meta/src/main/java/org/jooq/meta/AbstractElementContainerDefinition.java +++ b/jOOQ-meta/src/main/java/org/jooq/meta/AbstractElementContainerDefinition.java @@ -99,7 +99,7 @@ extends AbstractDefinition { List e = getElements0(); // [#5335] Warn if a table definition contains several identity columns - if (this instanceof TableDefinition) { TableDefinition t = (TableDefinition) this; + if (this instanceof TableDefinition t) { if (e.stream().map(c -> (ColumnDefinition) c).filter(ColumnDefinition::isIdentity).count() > 1) log.warn("Multiple identities", "Table " + getOutputName() + " has multiple identity columns. Only the first one is considered."); diff --git a/jOOQ-meta/src/main/java/org/jooq/meta/DefaultColumnDefinition.java b/jOOQ-meta/src/main/java/org/jooq/meta/DefaultColumnDefinition.java index 8fb2969d10..292057547f 100644 --- a/jOOQ-meta/src/main/java/org/jooq/meta/DefaultColumnDefinition.java +++ b/jOOQ-meta/src/main/java/org/jooq/meta/DefaultColumnDefinition.java @@ -90,7 +90,7 @@ public class DefaultColumnDefinition this.readonly = readonly || isSyntheticReadonlyColumn(this, this.identity); // [#6222] Copy the column's identity flag to the data type definition - if (type instanceof DefaultDataTypeDefinition) { DefaultDataTypeDefinition dd = (DefaultDataTypeDefinition) type; + if (type instanceof DefaultDataTypeDefinition dd) { dd.identity(this.identity); dd.readonly(this.readonly); } diff --git a/jOOQ-meta/src/main/java/org/jooq/meta/DefaultRelations.java b/jOOQ-meta/src/main/java/org/jooq/meta/DefaultRelations.java index c2ccea70d5..9322726fb8 100644 --- a/jOOQ-meta/src/main/java/org/jooq/meta/DefaultRelations.java +++ b/jOOQ-meta/src/main/java/org/jooq/meta/DefaultRelations.java @@ -446,5 +446,5 @@ public class DefaultRelations implements Relations { /** * A simple local wrapper for a key definition (table + key name) */ - private static final /* record */ class Key { private final TableDefinition table; private final String keyName; public Key(TableDefinition table, String keyName) { this.table = table; this.keyName = keyName; } public TableDefinition table() { return table; } public String keyName() { return keyName; } @Override public boolean equals(Object o) { if (!(o instanceof Key)) return false; Key other = (Key) o; if (!java.util.Objects.equals(this.table, other.table)) return false; if (!java.util.Objects.equals(this.keyName, other.keyName)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.table, this.keyName); } @Override public String toString() { return new StringBuilder("Key[").append("table=").append(this.table).append(", keyName=").append(this.keyName).append("]").toString(); } } + private static record Key(TableDefinition table, String keyName) {} } diff --git a/jOOQ-meta/src/main/java/org/jooq/meta/h2/H2Database.java b/jOOQ-meta/src/main/java/org/jooq/meta/h2/H2Database.java index 22dc518222..5477adbf6f 100644 --- a/jOOQ-meta/src/main/java/org/jooq/meta/h2/H2Database.java +++ b/jOOQ-meta/src/main/java/org/jooq/meta/h2/H2Database.java @@ -659,7 +659,7 @@ public class H2Database extends AbstractDatabase implements ResultQueryDatabase return result; } - static final /* record */ class TableRecord { private final String schema; private final String table; private final TableType type; private final String comment; private final String source; public TableRecord(String schema, String table, TableType type, String comment, String source) { this.schema = schema; this.table = table; this.type = type; this.comment = comment; this.source = source; } public String schema() { return schema; } public String table() { return table; } public TableType type() { return type; } public String comment() { return comment; } public String source() { return source; } @Override public boolean equals(Object o) { if (!(o instanceof TableRecord)) return false; TableRecord other = (TableRecord) o; if (!java.util.Objects.equals(this.schema, other.schema)) return false; if (!java.util.Objects.equals(this.table, other.table)) return false; if (!java.util.Objects.equals(this.type, other.type)) return false; if (!java.util.Objects.equals(this.comment, other.comment)) return false; if (!java.util.Objects.equals(this.source, other.source)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.schema, this.table, this.type, this.comment, this.source); } @Override public String toString() { return new StringBuilder("TableRecord[").append("schema=").append(this.schema).append(", table=").append(this.table).append(", type=").append(this.type).append(", comment=").append(this.comment).append(", source=").append(this.source).append("]").toString(); } } + static record TableRecord(String schema, String table, TableType type, String comment, String source) {} @Override protected List getTables0() throws SQLException { @@ -826,18 +826,18 @@ public class H2Database extends AbstractDatabase implements ResultQueryDatabase private void getInlineEnums2_0(List result) { // TODO: Re-generate the H2 schema and use generated code to run this query - create().resultQuery(("" + - "select c.TABLE_SCHEMA , c.TABLE_NAME , c.COLUMN_NAME , array_agg(ev.value_name order by ev.VALUE_ORDINAL)\n" + - "from INFORMATION_SCHEMA.ENUM_VALUES ev\n" + - "join INFORMATION_SCHEMA.COLUMNS c\n" + - "on ev.OBJECT_SCHEMA = c.TABLE_SCHEMA\n" + - "and ev.OBJECT_NAME = c.TABLE_NAME\n" + - "and ev.ENUM_IDENTIFIER = c.DTD_IDENTIFIER\n" + - "where ev.OBJECT_TYPE = 'TABLE'\n" + - "and c.DOMAIN_NAME IS NULL\n" + - "group by c.TABLE_SCHEMA , c.TABLE_NAME , c.COLUMN_NAME\n" + - "order by 1, 2, 3\n" + - "")) + create().resultQuery(""" + select c.TABLE_SCHEMA , c.TABLE_NAME , c.COLUMN_NAME , array_agg(ev.value_name order by ev.VALUE_ORDINAL) + from INFORMATION_SCHEMA.ENUM_VALUES ev + join INFORMATION_SCHEMA.COLUMNS c + on ev.OBJECT_SCHEMA = c.TABLE_SCHEMA + and ev.OBJECT_NAME = c.TABLE_NAME + and ev.ENUM_IDENTIFIER = c.DTD_IDENTIFIER + where ev.OBJECT_TYPE = 'TABLE' + and c.DOMAIN_NAME IS NULL + group by c.TABLE_SCHEMA , c.TABLE_NAME , c.COLUMN_NAME + order by 1, 2, 3 + """) .coerce(COLUMNS.TABLE_SCHEMA, COLUMNS.TABLE_NAME, COLUMNS.COLUMN_NAME, arrayAgg(COLUMNS.COLUMN_NAME)) .forEach(r -> { SchemaDefinition schema = getSchema(r.value1()); @@ -868,7 +868,7 @@ public class H2Database extends AbstractDatabase implements ResultQueryDatabase }); } - static final /* record */ class EnumRecord { private final String schema; private final String table; private final String column; private final String type; public EnumRecord(String schema, String table, String column, String type) { this.schema = schema; this.table = table; this.column = column; this.type = type; } public String schema() { return schema; } public String table() { return table; } public String column() { return column; } public String type() { return type; } @Override public boolean equals(Object o) { if (!(o instanceof EnumRecord)) return false; EnumRecord other = (EnumRecord) o; if (!java.util.Objects.equals(this.schema, other.schema)) return false; if (!java.util.Objects.equals(this.table, other.table)) return false; if (!java.util.Objects.equals(this.column, other.column)) return false; if (!java.util.Objects.equals(this.type, other.type)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.schema, this.table, this.column, this.type); } @Override public String toString() { return new StringBuilder("EnumRecord[").append("schema=").append(this.schema).append(", table=").append(this.table).append(", column=").append(this.column).append(", type=").append(this.type).append("]").toString(); } } + static record EnumRecord (String schema, String table, String column, String type) {} private void getInlineEnums1_4(List result) { @@ -928,13 +928,13 @@ public class H2Database extends AbstractDatabase implements ResultQueryDatabase private void getDomainEnums2_0(List result) { // TODO: Re-generate the H2 schema and use generated code to run this query - create().resultQuery(("" + - "select object_schema, object_name, array_agg(ev.value_name order by ev.VALUE_ORDINAL)\n" + - "from INFORMATION_SCHEMA.ENUM_VALUES ev\n" + - "where ev.OBJECT_TYPE = 'DOMAIN'\n" + - "group by object_schema, object_name\n" + - "order by 1, 2\n" + - "")) + create().resultQuery(""" + select object_schema, object_name, array_agg(ev.value_name order by ev.VALUE_ORDINAL) + from INFORMATION_SCHEMA.ENUM_VALUES ev + where ev.OBJECT_TYPE = 'DOMAIN' + group by object_schema, object_name + order by 1, 2 + """) .coerce(COLUMNS.TABLE_SCHEMA, COLUMNS.TABLE_NAME, arrayAgg(COLUMNS.COLUMN_NAME)) .forEach(r -> { @@ -950,7 +950,7 @@ public class H2Database extends AbstractDatabase implements ResultQueryDatabase }); } - static final /* record */ class DomainRecord { private final String schema; private final String name; private final String sql; public DomainRecord(String schema, String name, String sql) { this.schema = schema; this.name = name; this.sql = sql; } public String schema() { return schema; } public String name() { return name; } public String sql() { return sql; } @Override public boolean equals(Object o) { if (!(o instanceof DomainRecord)) return false; DomainRecord other = (DomainRecord) o; if (!java.util.Objects.equals(this.schema, other.schema)) return false; if (!java.util.Objects.equals(this.name, other.name)) return false; if (!java.util.Objects.equals(this.sql, other.sql)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.schema, this.name, this.sql); } @Override public String toString() { return new StringBuilder("DomainRecord[").append("schema=").append(this.schema).append(", name=").append(this.name).append(", sql=").append(this.sql).append("]").toString(); } } + static record DomainRecord (String schema, String name, String sql) {} private void getDomainEnums1_4(List result) { diff --git a/jOOQ-meta/src/main/java/org/jooq/meta/mysql/MySQLDatabase.java b/jOOQ-meta/src/main/java/org/jooq/meta/mysql/MySQLDatabase.java index 9388664416..794fb66051 100644 --- a/jOOQ-meta/src/main/java/org/jooq/meta/mysql/MySQLDatabase.java +++ b/jOOQ-meta/src/main/java/org/jooq/meta/mysql/MySQLDatabase.java @@ -458,7 +458,7 @@ public class MySQLDatabase extends AbstractDatabase implements ResultQueryDataba return result; } - static final /* record */ class ColumnRecord { private final String schema; private final String table; private final String column; private final String type; private final String comment; public ColumnRecord(String schema, String table, String column, String type, String comment) { this.schema = schema; this.table = table; this.column = column; this.type = type; this.comment = comment; } public String schema() { return schema; } public String table() { return table; } public String column() { return column; } public String type() { return type; } public String comment() { return comment; } @Override public boolean equals(Object o) { if (!(o instanceof ColumnRecord)) return false; ColumnRecord other = (ColumnRecord) o; if (!java.util.Objects.equals(this.schema, other.schema)) return false; if (!java.util.Objects.equals(this.table, other.table)) return false; if (!java.util.Objects.equals(this.column, other.column)) return false; if (!java.util.Objects.equals(this.type, other.type)) return false; if (!java.util.Objects.equals(this.comment, other.comment)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.schema, this.table, this.column, this.type, this.comment); } @Override public String toString() { return new StringBuilder("ColumnRecord[").append("schema=").append(this.schema).append(", table=").append(this.table).append(", column=").append(this.column).append(", type=").append(this.type).append(", comment=").append(this.comment).append("]").toString(); } } + static record ColumnRecord (String schema, String table, String column, String type, String comment) {} @Override protected List getEnums0() throws SQLException { diff --git a/jOOQ-meta/src/main/java/org/jooq/meta/postgres/PostgresDatabase.java b/jOOQ-meta/src/main/java/org/jooq/meta/postgres/PostgresDatabase.java index aab9546b43..2a45709d66 100644 --- a/jOOQ-meta/src/main/java/org/jooq/meta/postgres/PostgresDatabase.java +++ b/jOOQ-meta/src/main/java/org/jooq/meta/postgres/PostgresDatabase.java @@ -745,7 +745,7 @@ public class PostgresDatabase extends AbstractDatabase implements ResultQueryDat return result; } - static final /* record */ class Identifier { private final String schema; private final String name; public Identifier(String schema, String name) { this.schema = schema; this.name = name; } public String schema() { return schema; } public String name() { return name; } @Override public boolean equals(Object o) { if (!(o instanceof Identifier)) return false; Identifier other = (Identifier) o; if (!java.util.Objects.equals(this.schema, other.schema)) return false; if (!java.util.Objects.equals(this.name, other.name)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.schema, this.name); } @Override public String toString() { return new StringBuilder("Identifier[").append("schema=").append(this.schema).append(", name=").append(this.name).append("]").toString(); } } + static record Identifier(String schema, String name) {} @Override protected List getEnums0() throws SQLException { diff --git a/jOOQ-xtend/pom.xml b/jOOQ-xtend/pom.xml index 85ffa02b26..563a1e212e 100644 --- a/jOOQ-xtend/pom.xml +++ b/jOOQ-xtend/pom.xml @@ -46,12 +46,12 @@ UTF-8 - 11 + 16 - 11 - 11 + 16 + 16 diff --git a/jOOQ/src/main/java/org/jooq/Asterisk.java b/jOOQ/src/main/java/org/jooq/Asterisk.java index 090d8798ec..974fcd97f3 100644 --- a/jOOQ/src/main/java/org/jooq/Asterisk.java +++ b/jOOQ/src/main/java/org/jooq/Asterisk.java @@ -70,7 +70,7 @@ import org.jooq.impl.QOM.UnmodifiableList; * @see Table#asterisk() * @author Lukas Eder */ -public /* non-sealed */ interface Asterisk extends SelectFieldOrAsterisk { +public non-sealed interface Asterisk extends SelectFieldOrAsterisk { /** * The asterisk (* EXCEPT (fields)) expression to be used in diff --git a/jOOQ/src/main/java/org/jooq/CLIUtil.java b/jOOQ/src/main/java/org/jooq/CLIUtil.java index 7647103145..f2b867961d 100644 --- a/jOOQ/src/main/java/org/jooq/CLIUtil.java +++ b/jOOQ/src/main/java/org/jooq/CLIUtil.java @@ -56,12 +56,12 @@ final class CLIUtil { } catch (NoClassDefFoundError e) { throw new RuntimeException( - ("" + - "A class definition could not be found when running the CLI utility.\n" + - "\n" + - "This is mostly due to a missing dependency. Make sure you have added the right dependencies\n" + - "as according to the manual for {url}\n" + - "").replace("{url}", url.replace("/latest/", "/" + MINOR_VERSION + "/")), + """ + A class definition could not be found when running the CLI utility. + + This is mostly due to a missing dependency. Make sure you have added the right dependencies + as according to the manual for {url} + """.replace("{url}", url.replace("/latest/", "/" + MINOR_VERSION + "/")), e ); } diff --git a/jOOQ/src/main/java/org/jooq/ColumnElement.java b/jOOQ/src/main/java/org/jooq/ColumnElement.java index b1dd2eb92e..2d3a447fba 100644 --- a/jOOQ/src/main/java/org/jooq/ColumnElement.java +++ b/jOOQ/src/main/java/org/jooq/ColumnElement.java @@ -47,11 +47,11 @@ package org.jooq; * * @author Lukas Eder */ -public /* sealed */ interface ColumnElement +public sealed interface ColumnElement extends QueryPart -/* permits - Comment */ +permits + Comment { } diff --git a/jOOQ/src/main/java/org/jooq/Comment.java b/jOOQ/src/main/java/org/jooq/Comment.java index 23a024f73d..5623b17a7f 100644 --- a/jOOQ/src/main/java/org/jooq/Comment.java +++ b/jOOQ/src/main/java/org/jooq/Comment.java @@ -66,7 +66,7 @@ import org.jetbrains.annotations.ApiStatus.Experimental; * * @author Lukas Eder */ -public /* non-sealed */ interface Comment extends ColumnElement { +public non-sealed interface Comment extends ColumnElement { /** * Get the comment. diff --git a/jOOQ/src/main/java/org/jooq/Constraint.java b/jOOQ/src/main/java/org/jooq/Constraint.java index d56adb1a25..e285fcec15 100644 --- a/jOOQ/src/main/java/org/jooq/Constraint.java +++ b/jOOQ/src/main/java/org/jooq/Constraint.java @@ -61,7 +61,7 @@ import org.jooq.impl.DSL; * * @author Lukas Eder */ -public /* non-sealed */ interface Constraint +public non-sealed interface Constraint extends FieldOrConstraint, TableElement diff --git a/jOOQ/src/main/java/org/jooq/Converters.java b/jOOQ/src/main/java/org/jooq/Converters.java index b973ce380b..a4502a3ca2 100644 --- a/jOOQ/src/main/java/org/jooq/Converters.java +++ b/jOOQ/src/main/java/org/jooq/Converters.java @@ -134,8 +134,8 @@ public class Converters extends AbstractConverter { * the argument converter's types. */ public static Converter forArrays(Converter converter) { - if (converter instanceof ArrayComponentConverter) - return ((ArrayComponentConverter) converter).converter; + if (converter instanceof ArrayComponentConverter a) + return a.converter; else return new ArrayConverter<>(converter); } @@ -145,8 +145,8 @@ public class Converters extends AbstractConverter { * converter, which converts array types. */ public static Converter forArrayComponents(Converter converter) { - if (converter instanceof ArrayConverter) - return ((ArrayConverter) converter).converter; + if (converter instanceof ArrayConverter a) + return a.converter; else return new ArrayComponentConverter<>(converter); } diff --git a/jOOQ/src/main/java/org/jooq/Field.java b/jOOQ/src/main/java/org/jooq/Field.java index 37c8185606..257cf868f2 100644 --- a/jOOQ/src/main/java/org/jooq/Field.java +++ b/jOOQ/src/main/java/org/jooq/Field.java @@ -145,7 +145,7 @@ import org.jetbrains.annotations.Nullable; * @param The field type * @author Lukas Eder */ -public /* non-sealed */ interface Field +public non-sealed interface Field extends SelectField, GroupField, diff --git a/jOOQ/src/main/java/org/jooq/FieldOrConstraint.java b/jOOQ/src/main/java/org/jooq/FieldOrConstraint.java index 949da78fc9..e831702969 100644 --- a/jOOQ/src/main/java/org/jooq/FieldOrConstraint.java +++ b/jOOQ/src/main/java/org/jooq/FieldOrConstraint.java @@ -49,12 +49,12 @@ package org.jooq; * @deprecated - 3.17.0 - [#13005] - Use {@link TableElement} instead. */ @Deprecated -public /* sealed */ interface FieldOrConstraint +public sealed interface FieldOrConstraint extends TableElement -/* permits +permits Field, - Constraint */ + Constraint { } diff --git a/jOOQ/src/main/java/org/jooq/FieldOrRow.java b/jOOQ/src/main/java/org/jooq/FieldOrRow.java index 0e0ce8f691..39e38b8b64 100644 --- a/jOOQ/src/main/java/org/jooq/FieldOrRow.java +++ b/jOOQ/src/main/java/org/jooq/FieldOrRow.java @@ -55,12 +55,12 @@ package org.jooq; * * @author Lukas Eder */ -public /* sealed */ interface FieldOrRow +public sealed interface FieldOrRow extends QueryPart -/* permits +permits Field, - Row */ + Row { } diff --git a/jOOQ/src/main/java/org/jooq/FieldOrRowOrSelect.java b/jOOQ/src/main/java/org/jooq/FieldOrRowOrSelect.java index c0ecb94ec0..d939f15768 100644 --- a/jOOQ/src/main/java/org/jooq/FieldOrRowOrSelect.java +++ b/jOOQ/src/main/java/org/jooq/FieldOrRowOrSelect.java @@ -45,13 +45,13 @@ package org.jooq; * * @author Lukas Eder */ -public /* sealed */ interface FieldOrRowOrSelect +public sealed interface FieldOrRowOrSelect extends QueryPart -/* permits +permits Field, Row, - Select */ + Select { } diff --git a/jOOQ/src/main/java/org/jooq/Geography.java b/jOOQ/src/main/java/org/jooq/Geography.java index a825b75cdf..5a29d56071 100644 --- a/jOOQ/src/main/java/org/jooq/Geography.java +++ b/jOOQ/src/main/java/org/jooq/Geography.java @@ -104,8 +104,8 @@ public final class Geography implements Spatial { public boolean equals(Object obj) { if (this == obj) return true; - if (obj instanceof Geography) - return data.equals(((Geography) obj).data); + if (obj instanceof Geography j) + return data.equals(j.data); return false; } diff --git a/jOOQ/src/main/java/org/jooq/Geometry.java b/jOOQ/src/main/java/org/jooq/Geometry.java index b95df2c99f..93e58e7706 100644 --- a/jOOQ/src/main/java/org/jooq/Geometry.java +++ b/jOOQ/src/main/java/org/jooq/Geometry.java @@ -104,8 +104,8 @@ public final class Geometry implements Spatial { public boolean equals(Object obj) { if (this == obj) return true; - if (obj instanceof Geometry) - return data.equals(((Geometry) obj).data); + if (obj instanceof Geometry j) + return data.equals(j.data); return false; } diff --git a/jOOQ/src/main/java/org/jooq/GroupField.java b/jOOQ/src/main/java/org/jooq/GroupField.java index f14374c0bc..e2aa303c19 100644 --- a/jOOQ/src/main/java/org/jooq/GroupField.java +++ b/jOOQ/src/main/java/org/jooq/GroupField.java @@ -65,14 +65,14 @@ import org.jooq.impl.QOM; * * @author Lukas Eder */ -public /* sealed */ interface GroupField +public sealed interface GroupField extends QueryPart -/* permits +permits Table, Field, QOM.EmptyGroupingSet, QOM.Rollup, QOM.Cube, - QOM.GroupingSets */ + QOM.GroupingSets {} diff --git a/jOOQ/src/main/java/org/jooq/Index.java b/jOOQ/src/main/java/org/jooq/Index.java index 306bb6470e..14554d3c00 100644 --- a/jOOQ/src/main/java/org/jooq/Index.java +++ b/jOOQ/src/main/java/org/jooq/Index.java @@ -53,7 +53,7 @@ import org.jetbrains.annotations.ApiStatus.Experimental; * * @author Lukas Eder */ -public /* non-sealed */ interface Index extends TableElement { +public non-sealed interface Index extends TableElement { /** * The table on which this index is defined. diff --git a/jOOQ/src/main/java/org/jooq/JSON.java b/jOOQ/src/main/java/org/jooq/JSON.java index 2286bbb4e3..59b08f2b21 100644 --- a/jOOQ/src/main/java/org/jooq/JSON.java +++ b/jOOQ/src/main/java/org/jooq/JSON.java @@ -101,8 +101,8 @@ public final class JSON implements Serializable { public boolean equals(Object obj) { if (this == obj) return true; - if (obj instanceof JSON) - return data.equals(((JSON) obj).data); + if (obj instanceof JSON j) + return data.equals(j.data); return false; } diff --git a/jOOQ/src/main/java/org/jooq/JSONB.java b/jOOQ/src/main/java/org/jooq/JSONB.java index d5a04cd349..1f39eaca63 100644 --- a/jOOQ/src/main/java/org/jooq/JSONB.java +++ b/jOOQ/src/main/java/org/jooq/JSONB.java @@ -121,8 +121,8 @@ public final class JSONB implements Serializable { public boolean equals(Object obj) { if (this == obj) return true; - if (obj instanceof JSONB) - return Objects.equals(parsed(), (((JSONB) obj).parsed())); + if (obj instanceof JSONB j) + return Objects.equals(parsed(), (j.parsed())); return false; } diff --git a/jOOQ/src/main/java/org/jooq/OrderField.java b/jOOQ/src/main/java/org/jooq/OrderField.java index 464546f8d3..10e37c297a 100644 --- a/jOOQ/src/main/java/org/jooq/OrderField.java +++ b/jOOQ/src/main/java/org/jooq/OrderField.java @@ -45,12 +45,12 @@ package org.jooq; * * @author Lukas Eder */ -public /* sealed */ interface OrderField +public sealed interface OrderField extends QueryPart -/* permits +permits Field, - SortField */ + SortField { } diff --git a/jOOQ/src/main/java/org/jooq/Param.java b/jOOQ/src/main/java/org/jooq/Param.java index 003e33b879..dbcaf4dd33 100644 --- a/jOOQ/src/main/java/org/jooq/Param.java +++ b/jOOQ/src/main/java/org/jooq/Param.java @@ -94,7 +94,7 @@ import org.jetbrains.annotations.ApiStatus.Experimental; * @author Lukas Eder * @see DSL#param(String, Object) */ -public /* non-sealed */ interface Param extends ParamOrVariable { +public non-sealed interface Param extends ParamOrVariable { /** * The parameter name. This name is useful for two things: diff --git a/jOOQ/src/main/java/org/jooq/ParamOrVariable.java b/jOOQ/src/main/java/org/jooq/ParamOrVariable.java index 0c70d6d733..4324612f74 100644 --- a/jOOQ/src/main/java/org/jooq/ParamOrVariable.java +++ b/jOOQ/src/main/java/org/jooq/ParamOrVariable.java @@ -42,12 +42,12 @@ package org.jooq; * * @author Lukas Eder */ -public /* sealed */ interface ParamOrVariable +public sealed interface ParamOrVariable extends Field -/* permits +permits Param, - Variable */ + Variable { } diff --git a/jOOQ/src/main/java/org/jooq/QualifiedAsterisk.java b/jOOQ/src/main/java/org/jooq/QualifiedAsterisk.java index ef91749d18..9534453e76 100644 --- a/jOOQ/src/main/java/org/jooq/QualifiedAsterisk.java +++ b/jOOQ/src/main/java/org/jooq/QualifiedAsterisk.java @@ -69,7 +69,7 @@ import org.jetbrains.annotations.ApiStatus.Experimental; * * @author Lukas Eder */ -public /* non-sealed */ interface QualifiedAsterisk extends SelectFieldOrAsterisk { +public non-sealed interface QualifiedAsterisk extends SelectFieldOrAsterisk { /** * The qualifier. diff --git a/jOOQ/src/main/java/org/jooq/Row.java b/jOOQ/src/main/java/org/jooq/Row.java index 6978830fe3..6c26ecaeac 100644 --- a/jOOQ/src/main/java/org/jooq/Row.java +++ b/jOOQ/src/main/java/org/jooq/Row.java @@ -80,7 +80,7 @@ import org.jetbrains.annotations.ApiStatus.Experimental; * * @author Lukas Eder */ -public /* non-sealed */ interface Row +public non-sealed interface Row extends Fields, FieldOrRow, diff --git a/jOOQ/src/main/java/org/jooq/Select.java b/jOOQ/src/main/java/org/jooq/Select.java index 250c0164f4..24d36eed60 100644 --- a/jOOQ/src/main/java/org/jooq/Select.java +++ b/jOOQ/src/main/java/org/jooq/Select.java @@ -97,7 +97,7 @@ import org.jetbrains.annotations.ApiStatus.Experimental; * @param The record type being returned by this query * @author Lukas Eder */ -public /* non-sealed */ interface Select +public non-sealed interface Select extends ResultQuery, TableLike, diff --git a/jOOQ/src/main/java/org/jooq/SelectField.java b/jOOQ/src/main/java/org/jooq/SelectField.java index 0f698df2db..3315a5e1c4 100644 --- a/jOOQ/src/main/java/org/jooq/SelectField.java +++ b/jOOQ/src/main/java/org/jooq/SelectField.java @@ -52,7 +52,7 @@ import org.jetbrains.annotations.NotNull; * * @author Lukas Eder */ -public /* non-sealed */ interface SelectField extends SelectFieldOrAsterisk, Named, Typed { +public non-sealed interface SelectField extends SelectFieldOrAsterisk, Named, Typed { // ------------------------------------------------------------------------ // Aliasing diff --git a/jOOQ/src/main/java/org/jooq/SelectFieldOrAsterisk.java b/jOOQ/src/main/java/org/jooq/SelectFieldOrAsterisk.java index c606ed8c63..3f4d1915a8 100644 --- a/jOOQ/src/main/java/org/jooq/SelectFieldOrAsterisk.java +++ b/jOOQ/src/main/java/org/jooq/SelectFieldOrAsterisk.java @@ -46,13 +46,13 @@ package org.jooq; * * @author Lukas Eder */ -public /* sealed */ interface SelectFieldOrAsterisk +public sealed interface SelectFieldOrAsterisk extends QueryPart -/* permits +permits SelectField, Asterisk, - QualifiedAsterisk */ + QualifiedAsterisk { } diff --git a/jOOQ/src/main/java/org/jooq/SortField.java b/jOOQ/src/main/java/org/jooq/SortField.java index d49da2e753..2f508bde9c 100644 --- a/jOOQ/src/main/java/org/jooq/SortField.java +++ b/jOOQ/src/main/java/org/jooq/SortField.java @@ -73,7 +73,7 @@ import org.jetbrains.annotations.ApiStatus.Experimental; * @see Field#asc() * @see Field#desc() */ -public /* non-sealed */ interface SortField extends OrderField { +public non-sealed interface SortField extends OrderField { /** * The name of this sort field diff --git a/jOOQ/src/main/java/org/jooq/Table.java b/jOOQ/src/main/java/org/jooq/Table.java index 8090d09632..c3a1ca40b8 100644 --- a/jOOQ/src/main/java/org/jooq/Table.java +++ b/jOOQ/src/main/java/org/jooq/Table.java @@ -139,7 +139,7 @@ import org.jetbrains.annotations.Nullable; * @param The record type associated with this table * @author Lukas Eder */ -public /* non-sealed */ interface Table +public non-sealed interface Table extends TableLike, RecordQualifier, diff --git a/jOOQ/src/main/java/org/jooq/TableElement.java b/jOOQ/src/main/java/org/jooq/TableElement.java index df81b8af3a..d5b270bffa 100644 --- a/jOOQ/src/main/java/org/jooq/TableElement.java +++ b/jOOQ/src/main/java/org/jooq/TableElement.java @@ -47,14 +47,14 @@ package org.jooq; * * @author Lukas Eder */ -public /* sealed */ interface TableElement +public sealed interface TableElement extends Named -/* permits +permits FieldOrConstraint, Field, Constraint, - Index */ + Index { } diff --git a/jOOQ/src/main/java/org/jooq/TableLike.java b/jOOQ/src/main/java/org/jooq/TableLike.java index 84cab799e7..fa57905d17 100644 --- a/jOOQ/src/main/java/org/jooq/TableLike.java +++ b/jOOQ/src/main/java/org/jooq/TableLike.java @@ -67,13 +67,13 @@ import org.jetbrains.annotations.NotNull; * @param The record type * @author Lukas Eder */ -public /* sealed */ interface TableLike +public sealed interface TableLike extends Fields, QueryPart -/* permits +permits Select, - Table */ + Table { /** diff --git a/jOOQ/src/main/java/org/jooq/XML.java b/jOOQ/src/main/java/org/jooq/XML.java index 82611d293f..a50072c32a 100644 --- a/jOOQ/src/main/java/org/jooq/XML.java +++ b/jOOQ/src/main/java/org/jooq/XML.java @@ -101,8 +101,8 @@ public final class XML implements Serializable { public boolean equals(Object obj) { if (this == obj) return true; - if (obj instanceof XML) - return data.equals(((XML) obj).data); + if (obj instanceof XML x) + return data.equals(x.data); return false; } diff --git a/jOOQ/src/main/java/org/jooq/impl/Abs.java b/jOOQ/src/main/java/org/jooq/impl/Abs.java index 61f918f072..f98168206f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Abs.java +++ b/jOOQ/src/main/java/org/jooq/impl/Abs.java @@ -165,7 +165,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Abs) { QOM.Abs o = (QOM.Abs) that; + if (that instanceof QOM.Abs o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractContext.java b/jOOQ/src/main/java/org/jooq/impl/AbstractContext.java index d76cf08ef1..6c5c01ebb2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractContext.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractContext.java @@ -236,7 +236,7 @@ abstract class AbstractContext> extends AbstractScope imple @Override public final C visit(Field part) { - return part instanceof Condition ? visit((QueryPart) DSL.field((Condition) part)) : visit((QueryPart) part); + return part instanceof Condition c ? visit((QueryPart) DSL.field(c)) : visit((QueryPart) part); } @Override @@ -546,12 +546,12 @@ abstract class AbstractContext> extends AbstractScope imple @Override public final RenderContext renderContext() { - return context() instanceof RenderContext ? (RenderContext) context() : null; + return context() instanceof RenderContext c ? c : null; } @Override public final BindContext bindContext() { - return context() instanceof BindContext ? (BindContext) context() : null; + return context() instanceof BindContext c ? c : null; } } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractDMLQuery.java b/jOOQ/src/main/java/org/jooq/impl/AbstractDMLQuery.java index 1dbc30ca0d..443d296c4d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractDMLQuery.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractDMLQuery.java @@ -235,16 +235,16 @@ abstract class AbstractDMLQuery extends AbstractRowCountQuery returningResolvedAsterisks.clear(); for (SelectFieldOrAsterisk s : returning) - if (s instanceof Field) - returningResolvedAsterisks.add((Field) s); - else if (s instanceof QualifiedAsterisk) - returningResolvedAsterisks.addAll(Arrays.asList(((QualifiedAsterisk) s).qualifier().fields())); + if (s instanceof Field f) + returningResolvedAsterisks.add(f); + else if (s instanceof QualifiedAsterisk a) + returningResolvedAsterisks.addAll(Arrays.asList(a.qualifier().fields())); else if (s instanceof Asterisk) returningResolvedAsterisks.addAll(Arrays.asList(table.fields())); - else if (s instanceof Row) - returningResolvedAsterisks.add(new RowAsField<>((Row) s)); - else if (s instanceof Table) - returningResolvedAsterisks.add(new TableAsField<>((Table) s)); + else if (s instanceof Row r) + returningResolvedAsterisks.add(new RowAsField<>(r)); + else if (s instanceof Table t) + returningResolvedAsterisks.add(new TableAsField<>(t)); else throw new UnsupportedOperationException("Type not supported: " + s); } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java index a94186fc37..4b0e2996c5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java @@ -240,7 +240,7 @@ abstract class AbstractField extends AbstractTypedNamed implements Field as(Name alias) { - return new FieldAlias<>((Field) (this instanceof Condition ? DSL.field((Condition) this) : this), alias); + return new FieldAlias<>((Field) (this instanceof Condition c ? DSL.field(c) : this), alias); } @Override @@ -312,7 +312,7 @@ abstract class AbstractField extends AbstractTypedNamed implements Field sort(SortOrder order) { - return this instanceof NoField ? (NoField) this : new SortFieldImpl<>(this, order); + return this instanceof NoField n ? n : new SortFieldImpl<>(this, order); } @Override @@ -1482,14 +1482,14 @@ abstract class AbstractField extends AbstractTypedNamed implements Field(this, nullSafe(field, getDataType())); case IN: - if (field instanceof ScalarSubquery) - return new In<>(this, (Select>) ((ScalarSubquery) field).query); + if (field instanceof ScalarSubquery s) + return new In<>(this, (Select>) s.query); break; case NOT_IN: - if (field instanceof ScalarSubquery) - return new NotIn<>(this, (Select>) ((ScalarSubquery) field).query); + if (field instanceof ScalarSubquery s) + return new NotIn<>(this, (Select>) s.query); break; } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractMeta.java b/jOOQ/src/main/java/org/jooq/impl/AbstractMeta.java index eb95f9873d..074eb8419c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractMeta.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractMeta.java @@ -641,8 +641,8 @@ abstract class AbstractMeta extends AbstractScope implements Meta, Serializable @Override public boolean equals(Object obj) { - if (obj instanceof Meta) - return ddl().equals(((Meta) obj).ddl()); + if (obj instanceof Meta m) + return ddl().equals(m.ddl()); return false; } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractName.java b/jOOQ/src/main/java/org/jooq/impl/AbstractName.java index c0d8627711..e00b5c7af4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractName.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractName.java @@ -373,7 +373,7 @@ implements // [#1626] [#11126] NameImpl equality can be decided without executing the // rather expensive implementation of AbstractQueryPart.equals() - if (that instanceof AbstractName) { AbstractName n = (AbstractName) that; + if (that instanceof AbstractName n) { // [#11126] No need to access name arrays if not both names are equally qualified if (qualified() != n.qualified()) diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractNamed.java b/jOOQ/src/main/java/org/jooq/impl/AbstractNamed.java index 7202f5096c..8f5a35d84f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractNamed.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractNamed.java @@ -112,8 +112,8 @@ abstract class AbstractNamed extends AbstractQueryPart implements Named { // [#2144] Non-equality can be decided early, without executing the // rather expensive implementation of AbstractQueryPart.equals() - if (that instanceof AbstractNamed) - if (!getQualifiedName().equals(((AbstractNamed) that).getQualifiedName())) + if (that instanceof AbstractNamed n) + if (!getQualifiedName().equals(n.getQualifiedName())) return false; return super.equals(that); diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractParam.java b/jOOQ/src/main/java/org/jooq/impl/AbstractParam.java index a0014c8aeb..d4a67c5929 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractParam.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractParam.java @@ -104,8 +104,8 @@ abstract class AbstractParam extends AbstractParamX implements SimpleQuery ? paramName // [#3707] Protect value.toString call for certain jOOQ types. - : value instanceof QualifiedRecord - ? ((QualifiedRecord) value).getQualifier().getName() + : value instanceof QualifiedRecord q + ? q.getQualifier().getName() @@ -121,7 +121,7 @@ abstract class AbstractParam extends AbstractParamX implements SimpleQuery // [#13392] The generated name of a byte[] value shouldn't depend on the // identity of the value, but on the value itself - if (value instanceof byte[]) { byte[] b = (byte[]) value; + if (value instanceof byte[] b) { return "b_" + Internal.hash0(Arrays.hashCode(Arrays.copyOf(b, 16))); } else @@ -143,7 +143,7 @@ abstract class AbstractParam extends AbstractParamX implements SimpleQuery } private static boolean positive(Object value) { - return value instanceof Number ? ((Number) value).doubleValue() >= 0 : false; + return value instanceof Number n ? n.doubleValue() >= 0 : false; } @Override @@ -249,7 +249,7 @@ abstract class AbstractParam extends AbstractParamX implements SimpleQuery if (this == that) return true; - if (that instanceof Param) { Param p = (Param) that; + if (that instanceof Param p) { Object thatValue = p.getValue(); if (value == null) @@ -269,10 +269,10 @@ abstract class AbstractParam extends AbstractParamX implements SimpleQuery public int hashCode() { return value == null ? 0 - : value instanceof byte[] - ? Arrays.hashCode((byte[]) value) - : value instanceof Object[] - ? Arrays.hashCode((Object[]) value) + : value instanceof byte[] a + ? Arrays.hashCode(a) + : value instanceof Object[] a + ? Arrays.hashCode(a) : value.hashCode(); } } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPart.java b/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPart.java index 28455e6e31..99c4c35a67 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPart.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPart.java @@ -160,11 +160,11 @@ abstract class AbstractQueryPart implements QueryPartInternal { // This is a working default implementation. It should be overridden by // concrete subclasses, to improve performance - if (that instanceof QueryPart) { QueryPart q = (QueryPart) that; + if (that instanceof QueryPart q) { // [#10635] The two QueryParts may have different Settings attached. DSLContext dsl1 = Tools.configuration(configuration()).dsl(); - DSLContext dsl2 = that instanceof AbstractQueryPart ? Tools.configuration(((AbstractQueryPart) that).configuration()).dsl() : dsl1; + DSLContext dsl2 = that instanceof AbstractQueryPart a ? Tools.configuration(a.configuration()).dsl() : dsl1; String sql1 = dsl1.renderInlined(this); String sql2 = dsl2.renderInlined(q); diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractRecord.java b/jOOQ/src/main/java/org/jooq/impl/AbstractRecord.java index 609894bd2a..948a5bb0e4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractRecord.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractRecord.java @@ -159,7 +159,7 @@ abstract class AbstractRecord extends AbstractStore implements Record { int size = size(); for (int i = 0; i < size; i++) { - if (values[i] instanceof Attachable) { Attachable a = (Attachable) values[i]; + if (values[i] instanceof Attachable a) { if (result == null) result = new ArrayList<>(); @@ -416,8 +416,8 @@ abstract class AbstractRecord extends AbstractStore implements Record { set(index, field, value); else if (Tools.nonReplacingEmbeddable(field)) { Field[] f = embeddedFields(field); - Object[] v = value instanceof EmbeddableRecord - ? ((EmbeddableRecord) value).intoArray() + Object[] v = value instanceof EmbeddableRecord e + ? e.intoArray() : new Object[f.length]; for (int i = 0; i < f.length; i++) @@ -860,7 +860,7 @@ abstract class AbstractRecord extends AbstractStore implements Record { try { // [#1522] [#2989] If possible the complete state of this record should be copied onto the other record - if (target instanceof AbstractRecord) { AbstractRecord t = (AbstractRecord) target; + if (target instanceof AbstractRecord t) { // Iterate over target fields, to avoid ambiguities when two source fields share the same name. // [#3634] If external targetFields are provided, use those instead of the target record's fields. diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractResult.java b/jOOQ/src/main/java/org/jooq/impl/AbstractResult.java index 7a96024987..f645e33e09 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractResult.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractResult.java @@ -431,8 +431,8 @@ abstract class AbstractResult extends AbstractFormattable impl return format.emptyString(); // [#7802] Nested records should generate nested CSV data structures - String result = value instanceof Formattable - ? ((Formattable) value).formatCSV(format) + String result = value instanceof Formattable f + ? f.formatCSV(format) : format0(value, false, false); switch (format.quote()) { @@ -490,7 +490,7 @@ abstract class AbstractResult extends AbstractFormattable impl if (format.format()) writer.append(format.newline()).append(format.indentString(3)); - if (field instanceof TableField) { TableField f = (TableField) field; + if (field instanceof TableField f) { Table table = f.getTable(); if (table != null) { @@ -620,12 +620,12 @@ abstract class AbstractResult extends AbstractFormattable impl static final void formatJSON0(Object value, Writer writer, JSONFormat format) throws java.io.IOException { // [#2741] TODO: This logic will be externalised in new SPI - if (value instanceof byte[]) { byte[] a = (byte[]) value; + if (value instanceof byte[] a) { JSONValue.writeJSONString(Base64.getEncoder().encodeToString(a), writer); } // [#6563] Arrays can be serialised natively in JSON - else if (value instanceof Object[]) { Object[] array = (Object[]) value; + else if (value instanceof Object[] array) { writer.append('['); for (int i = 0; i < array.length; i++) { @@ -639,7 +639,7 @@ abstract class AbstractResult extends AbstractFormattable impl } // [#7782] Nested records should generate nested JSON data structures - else if (value instanceof Formattable) { Formattable f = (Formattable) value; + else if (value instanceof Formattable f) { f.formatJSON(writer, format); } @@ -779,7 +779,7 @@ abstract class AbstractResult extends AbstractFormattable impl for (Field field : fields.fields.fields) { writer.append(newline).append(format.indentString(2)).append(" f = (TableField) field; + if (field instanceof TableField f) { Table table = f.getTable(); if (table != null) { @@ -870,7 +870,7 @@ abstract class AbstractResult extends AbstractFormattable impl else { writer.append(">"); - if (value instanceof Formattable) { Formattable f = (Formattable) value; + if (value instanceof Formattable f) { writer.append(newline).append(format.indentString(recordLevel + 2)); int previous = format.globalIndent(); f.formatXML(writer, format.globalIndent(format.globalIndent() + format.indent() * (recordLevel + 2))); @@ -1092,8 +1092,8 @@ abstract class AbstractResult extends AbstractFormattable impl try { for (R record : this) { if (table == null) - if (record instanceof TableRecord) - table = ((TableRecord) record).getTable(); + if (record instanceof TableRecord r) + table = r.getTable(); else table = table(name("UNKNOWN_TABLE")); @@ -1171,7 +1171,7 @@ abstract class AbstractResult extends AbstractFormattable impl for (Field field : fields.fields.fields) { Element eField = document.createElement("field"); - if (field instanceof TableField) { TableField f = (TableField) field; + if (field instanceof TableField f) { Table table = f.getTable(); if (table != null) { @@ -1300,7 +1300,7 @@ abstract class AbstractResult extends AbstractFormattable impl for (Field field : fields.fields.fields) { AttributesImpl attrs = new AttributesImpl(); - if (field instanceof TableField) { TableField f = (TableField) field; + if (field instanceof TableField f) { Table table = f.getTable(); if (table != null) { @@ -1378,32 +1378,32 @@ abstract class AbstractResult extends AbstractFormattable impl if (value == null) { formatted += visual ? "{null}" : null; } - else if (value instanceof byte[]) { byte[] a = (byte[]) value; + else if (value instanceof byte[] a) { formatted += Base64.getEncoder().encodeToString(a); } - else if (value instanceof Object[]) { Object[] a = (Object[]) value; + else if (value instanceof Object[] a) { // [#6545] Nested arrays are handled recursively formatted += Arrays.stream(a).map(f -> format0(f, false, visual)).collect(joining(", ", "[", "]")); } - else if (value instanceof EnumType) { EnumType e = (EnumType) value; + else if (value instanceof EnumType e) { formatted += e.getLiteral(); } - else if (value instanceof List) { List l = (List) value; + else if (value instanceof List l) { formatted += l.stream().map(f -> format0(f, false, visual)).collect(joining(", ", "[", "]")); } - else if (value instanceof Record) { Record r = (Record) value; + else if (value instanceof Record r) { formatted += Arrays .stream(r.intoArray()) .map(f -> format0(f, false, visual)) .collect(joining(", ", "(", ")")); } // [#6080] Support formatting of nested ROWs - else if (value instanceof Param) { Param p = (Param) value; + else if (value instanceof Param p) { formatted += format0(p.getValue(), false, visual); } // [#5238] Oracle DATE is really a TIMESTAMP(0)... - else if (value instanceof Date) { Date d = (Date) value; + else if (value instanceof Date d) { String date = value.toString(); if (Date.valueOf(date).equals(value)) diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractStore.java b/jOOQ/src/main/java/org/jooq/impl/AbstractStore.java index 3e0cdfaf19..75b923c334 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractStore.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractStore.java @@ -137,7 +137,7 @@ abstract class AbstractStore extends AbstractFormattable { return true; // Note: keep this implementation in-sync with AbstractRecord.compareTo()! - if (obj instanceof AbstractStore) { AbstractStore that = (AbstractStore) obj; + if (obj instanceof AbstractStore that) { if (size() == that.size()) { for (int i = 0; i < size(); i++) { final Object thisValue = get(i); diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractStoreQuery.java b/jOOQ/src/main/java/org/jooq/impl/AbstractStoreQuery.java index 3a8acac997..9eb7e54423 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractStoreQuery.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractStoreQuery.java @@ -128,8 +128,8 @@ implements @Override public boolean equals(Object that) { - if (that instanceof UnknownField) - return index == ((UnknownField) that).index; + if (that instanceof UnknownField f) + return index == f.index; else return false; } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java b/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java index 15fedb3a53..95e09474b6 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java @@ -831,8 +831,8 @@ abstract class AbstractTable extends AbstractNamed implements TableFieldImpl tableField = new TableFieldImpl<>(name, actualType, table, DSL.comment(comment), actualBinding); // [#1199] The public API of Table returns immutable field lists - if (table instanceof TableImpl) - ((TableImpl) table).fields0().add(tableField); + if (table instanceof TableImpl t) + t.fields0().add(tableField); return tableField; } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractWindowFunction.java b/jOOQ/src/main/java/org/jooq/impl/AbstractWindowFunction.java index 7b3ceecbad..7927d57f74 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractWindowFunction.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractWindowFunction.java @@ -320,8 +320,8 @@ implements @Override public final WindowFinalStep over(WindowSpecification specification) { - this.windowSpecification = specification instanceof WindowSpecificationImpl - ? (WindowSpecificationImpl) specification + this.windowSpecification = specification instanceof WindowSpecificationImpl w + ? w : new WindowSpecificationImpl((WindowDefinitionImpl) specification); return this; diff --git a/jOOQ/src/main/java/org/jooq/impl/Acos.java b/jOOQ/src/main/java/org/jooq/impl/Acos.java index 2ce521e1e4..dd48386dcf 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Acos.java +++ b/jOOQ/src/main/java/org/jooq/impl/Acos.java @@ -189,7 +189,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Acos) { QOM.Acos o = (QOM.Acos) that; + if (that instanceof QOM.Acos o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Acosh.java b/jOOQ/src/main/java/org/jooq/impl/Acosh.java index 094f800b12..517ebdda46 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Acosh.java +++ b/jOOQ/src/main/java/org/jooq/impl/Acosh.java @@ -218,7 +218,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Acosh) { QOM.Acosh o = (QOM.Acosh) that; + if (that instanceof QOM.Acosh o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Acoth.java b/jOOQ/src/main/java/org/jooq/impl/Acoth.java index a279596498..fa09c1dad6 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Acoth.java +++ b/jOOQ/src/main/java/org/jooq/impl/Acoth.java @@ -236,7 +236,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Acoth) { QOM.Acoth o = (QOM.Acoth) that; + if (that instanceof QOM.Acoth o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Add.java b/jOOQ/src/main/java/org/jooq/impl/Add.java index 520389219e..e2d7409fd5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Add.java +++ b/jOOQ/src/main/java/org/jooq/impl/Add.java @@ -176,7 +176,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Add) { QOM.Add o = (QOM.Add) that; + if (that instanceof QOM.Add o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Alias.java b/jOOQ/src/main/java/org/jooq/impl/Alias.java index 4574dedde6..8632fde0ef 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Alias.java +++ b/jOOQ/src/main/java/org/jooq/impl/Alias.java @@ -236,10 +236,10 @@ final class Alias extends AbstractQueryPart implements UEmp // [#3156] Do not SELECT * from derived tables to prevent ambiguously defined columns // in those derived tables Select wrappedAsSelect = - wrapped instanceof Select - ? (Select) wrapped - : wrapped instanceof DerivedTable - ? ((DerivedTable) wrapped).query() + wrapped instanceof Select s + ? s + : wrapped instanceof DerivedTable d + ? d.query() : select(asterisk()).from(((Table) wrapped).as(alias)); List> select = wrappedAsSelect.getSelect(); diff --git a/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java b/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java index 3b15472212..758f08ec77 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java @@ -469,11 +469,11 @@ implements if (fields.size() == 1) { TableElement first = fields.iterator().next(); - if (first instanceof Field) - return add((Field) first); - else if (first instanceof Constraint) - return add((Constraint) first); - else if (first instanceof Index) + if (first instanceof Field f) + return add(f); + else if (first instanceof Constraint c) + return add(c); + else if (first instanceof Index i) throw new UnsupportedOperationException("ALTER TABLE .. ADD INDEX not yet supported, see https://github.com/jOOQ/jOOQ/issues/13006"); } @@ -1301,7 +1301,7 @@ implements TableElement part = add.get(i); ctx.qualify(false, c -> c.visit(part)); - if (part instanceof Field) { Field f = (Field) part; + if (part instanceof Field f) { ctx.sql(' '); toSQLDDLTypeDeclarationForAddition(ctx, f.getDataType()); } diff --git a/jOOQ/src/main/java/org/jooq/impl/And.java b/jOOQ/src/main/java/org/jooq/impl/And.java index 66529e5b1d..62ff08d41d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/And.java +++ b/jOOQ/src/main/java/org/jooq/impl/And.java @@ -181,7 +181,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.And) { QOM.And o = (QOM.And) that; + if (that instanceof QOM.And o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/AnyValue.java b/jOOQ/src/main/java/org/jooq/impl/AnyValue.java index 392ae2e85b..99c01df738 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AnyValue.java +++ b/jOOQ/src/main/java/org/jooq/impl/AnyValue.java @@ -184,7 +184,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.AnyValue) { QOM.AnyValue o = (QOM.AnyValue) that; + if (that instanceof QOM.AnyValue o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayGet.java b/jOOQ/src/main/java/org/jooq/impl/ArrayGet.java index 619c6d367b..d8c4c7f88b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ArrayGet.java +++ b/jOOQ/src/main/java/org/jooq/impl/ArrayGet.java @@ -207,7 +207,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.ArrayGet) { QOM.ArrayGet o = (QOM.ArrayGet) that; + if (that instanceof QOM.ArrayGet o) { return StringUtils.equals($array(), o.$array()) && StringUtils.equals($index(), o.$index()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Ascii.java b/jOOQ/src/main/java/org/jooq/impl/Ascii.java index 4089043c4f..e02ca78f9e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Ascii.java +++ b/jOOQ/src/main/java/org/jooq/impl/Ascii.java @@ -175,7 +175,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Ascii) { QOM.Ascii o = (QOM.Ascii) that; + if (that instanceof QOM.Ascii o) { return StringUtils.equals($string(), o.$string()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Asin.java b/jOOQ/src/main/java/org/jooq/impl/Asin.java index 9646d595f4..50d9a6864d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Asin.java +++ b/jOOQ/src/main/java/org/jooq/impl/Asin.java @@ -185,7 +185,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Asin) { QOM.Asin o = (QOM.Asin) that; + if (that instanceof QOM.Asin o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Asinh.java b/jOOQ/src/main/java/org/jooq/impl/Asinh.java index 6268659407..b966c01324 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Asinh.java +++ b/jOOQ/src/main/java/org/jooq/impl/Asinh.java @@ -218,7 +218,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Asinh) { QOM.Asinh o = (QOM.Asinh) that; + if (that instanceof QOM.Asinh o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Atan.java b/jOOQ/src/main/java/org/jooq/impl/Atan.java index 9fa5ab37fe..a421a0e6ef 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Atan.java +++ b/jOOQ/src/main/java/org/jooq/impl/Atan.java @@ -172,7 +172,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Atan) { QOM.Atan o = (QOM.Atan) that; + if (that instanceof QOM.Atan o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Atan2.java b/jOOQ/src/main/java/org/jooq/impl/Atan2.java index 1771d65824..f83aab2585 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Atan2.java +++ b/jOOQ/src/main/java/org/jooq/impl/Atan2.java @@ -191,7 +191,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Atan2) { QOM.Atan2 o = (QOM.Atan2) that; + if (that instanceof QOM.Atan2 o) { return StringUtils.equals($x(), o.$x()) && StringUtils.equals($y(), o.$y()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Atanh.java b/jOOQ/src/main/java/org/jooq/impl/Atanh.java index fc34dda714..d6d6739438 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Atanh.java +++ b/jOOQ/src/main/java/org/jooq/impl/Atanh.java @@ -216,7 +216,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Atanh) { QOM.Atanh o = (QOM.Atanh) that; + if (that instanceof QOM.Atanh o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Avg.java b/jOOQ/src/main/java/org/jooq/impl/Avg.java index a0894b669b..c469d7655d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Avg.java +++ b/jOOQ/src/main/java/org/jooq/impl/Avg.java @@ -147,7 +147,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Avg) { QOM.Avg o = (QOM.Avg) that; + if (that instanceof QOM.Avg o) { return StringUtils.equals($field(), o.$field()) && $distinct() == o.$distinct() diff --git a/jOOQ/src/main/java/org/jooq/impl/BatchCRUD.java b/jOOQ/src/main/java/org/jooq/impl/BatchCRUD.java index 4a8aa9ea73..651fc22558 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BatchCRUD.java +++ b/jOOQ/src/main/java/org/jooq/impl/BatchCRUD.java @@ -213,8 +213,8 @@ final class BatchCRUD extends AbstractBatch { // [#3362] If new records (fetched = false) are batch-stored twice in a row, the second // batch-store needs to generate an UPDATE statement. - if (record instanceof AbstractRecord) - ((AbstractRecord) record).fetched = action != Action.DELETE; + if (record instanceof AbstractRecord r) + r.fetched = action != Action.DELETE; } } diff --git a/jOOQ/src/main/java/org/jooq/impl/BitAnd.java b/jOOQ/src/main/java/org/jooq/impl/BitAnd.java index 15e728fe8c..bc1e855b58 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitAnd.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitAnd.java @@ -194,7 +194,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitAnd) { QOM.BitAnd o = (QOM.BitAnd) that; + if (that instanceof QOM.BitAnd o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/BitAndAgg.java b/jOOQ/src/main/java/org/jooq/impl/BitAndAgg.java index 88c31e22cc..246ac3ed26 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitAndAgg.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitAndAgg.java @@ -337,7 +337,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitAndAgg) { QOM.BitAndAgg o = (QOM.BitAndAgg) that; + if (that instanceof QOM.BitAndAgg o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BitCount.java b/jOOQ/src/main/java/org/jooq/impl/BitCount.java index e434c31d82..6260b2b6e8 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitCount.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitCount.java @@ -507,7 +507,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitCount) { QOM.BitCount o = (QOM.BitCount) that; + if (that instanceof QOM.BitCount o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BitLength.java b/jOOQ/src/main/java/org/jooq/impl/BitLength.java index 95775b4c2d..fb11081ea8 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitLength.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitLength.java @@ -225,7 +225,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitLength) { QOM.BitLength o = (QOM.BitLength) that; + if (that instanceof QOM.BitLength o) { return StringUtils.equals($string(), o.$string()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BitNand.java b/jOOQ/src/main/java/org/jooq/impl/BitNand.java index 79717a0868..f86eeaeade 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitNand.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitNand.java @@ -151,7 +151,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitNand) { QOM.BitNand o = (QOM.BitNand) that; + if (that instanceof QOM.BitNand o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/BitNandAgg.java b/jOOQ/src/main/java/org/jooq/impl/BitNandAgg.java index 8d13745301..ffcc21a487 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitNandAgg.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitNandAgg.java @@ -148,7 +148,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitNandAgg) { QOM.BitNandAgg o = (QOM.BitNandAgg) that; + if (that instanceof QOM.BitNandAgg o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BitNor.java b/jOOQ/src/main/java/org/jooq/impl/BitNor.java index 0e2e4ea232..8433a9fd15 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitNor.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitNor.java @@ -151,7 +151,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitNor) { QOM.BitNor o = (QOM.BitNor) that; + if (that instanceof QOM.BitNor o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/BitNorAgg.java b/jOOQ/src/main/java/org/jooq/impl/BitNorAgg.java index cf877c648d..4172326165 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitNorAgg.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitNorAgg.java @@ -148,7 +148,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitNorAgg) { QOM.BitNorAgg o = (QOM.BitNorAgg) that; + if (that instanceof QOM.BitNorAgg o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BitNot.java b/jOOQ/src/main/java/org/jooq/impl/BitNot.java index fed04891c6..8c001a0665 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitNot.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitNot.java @@ -182,7 +182,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitNot) { QOM.BitNot o = (QOM.BitNot) that; + if (that instanceof QOM.BitNot o) { return StringUtils.equals($arg1(), o.$arg1()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BitOr.java b/jOOQ/src/main/java/org/jooq/impl/BitOr.java index 697535efb9..8d83fac2da 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitOr.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitOr.java @@ -203,7 +203,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitOr) { QOM.BitOr o = (QOM.BitOr) that; + if (that instanceof QOM.BitOr o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/BitOrAgg.java b/jOOQ/src/main/java/org/jooq/impl/BitOrAgg.java index e59a57e486..1dcfe8d4b1 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitOrAgg.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitOrAgg.java @@ -337,7 +337,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitOrAgg) { QOM.BitOrAgg o = (QOM.BitOrAgg) that; + if (that instanceof QOM.BitOrAgg o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BitXNor.java b/jOOQ/src/main/java/org/jooq/impl/BitXNor.java index 6675fe20a9..dfc8629bd4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitXNor.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitXNor.java @@ -227,7 +227,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitXNor) { QOM.BitXNor o = (QOM.BitXNor) that; + if (that instanceof QOM.BitXNor o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/BitXNorAgg.java b/jOOQ/src/main/java/org/jooq/impl/BitXNorAgg.java index 0477397ab7..ce283ce3d0 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitXNorAgg.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitXNorAgg.java @@ -148,7 +148,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitXNorAgg) { QOM.BitXNorAgg o = (QOM.BitXNorAgg) that; + if (that instanceof QOM.BitXNorAgg o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BitXor.java b/jOOQ/src/main/java/org/jooq/impl/BitXor.java index 00490166a8..b0ce86cc2e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitXor.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitXor.java @@ -206,7 +206,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitXor) { QOM.BitXor o = (QOM.BitXor) that; + if (that instanceof QOM.BitXor o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/BitXorAgg.java b/jOOQ/src/main/java/org/jooq/impl/BitXorAgg.java index 71ec7ffb34..4d99ac8329 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BitXorAgg.java +++ b/jOOQ/src/main/java/org/jooq/impl/BitXorAgg.java @@ -342,7 +342,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BitXorAgg) { QOM.BitXorAgg o = (QOM.BitXorAgg) that; + if (that instanceof QOM.BitXorAgg o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BlockImpl.java b/jOOQ/src/main/java/org/jooq/impl/BlockImpl.java index 9af1ac328e..c859c11d85 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BlockImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/BlockImpl.java @@ -410,8 +410,8 @@ final class BlockImpl extends AbstractRowCountQuery implements Block { } } else { - DefaultRenderContext r = ctx instanceof DefaultRenderContext - ? (DefaultRenderContext) ctx + DefaultRenderContext r = ctx instanceof DefaultRenderContext d + ? d : null; statementLoop: diff --git a/jOOQ/src/main/java/org/jooq/impl/BoolAnd.java b/jOOQ/src/main/java/org/jooq/impl/BoolAnd.java index a50ef0e8f0..330c9edd04 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BoolAnd.java +++ b/jOOQ/src/main/java/org/jooq/impl/BoolAnd.java @@ -175,7 +175,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BoolAnd) { QOM.BoolAnd o = (QOM.BoolAnd) that; + if (that instanceof QOM.BoolAnd o) { return StringUtils.equals($condition(), o.$condition()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/BoolOr.java b/jOOQ/src/main/java/org/jooq/impl/BoolOr.java index 0163a828dc..1dcf80bdc5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BoolOr.java +++ b/jOOQ/src/main/java/org/jooq/impl/BoolOr.java @@ -176,7 +176,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.BoolOr) { QOM.BoolOr o = (QOM.BoolOr) that; + if (that instanceof QOM.BoolOr o) { return StringUtils.equals($condition(), o.$condition()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Cache.java b/jOOQ/src/main/java/org/jooq/impl/Cache.java index fb28686011..6afa6e993e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Cache.java +++ b/jOOQ/src/main/java/org/jooq/impl/Cache.java @@ -122,5 +122,5 @@ final class Cache { /** * A 2-value key for caching. */ - private static final /* record */ class Key2 implements Serializable { private final Object key1; private final Object key2; public Key2(Object key1, Object key2) { this.key1 = key1; this.key2 = key2; } public Object key1() { return key1; } public Object key2() { return key2; } @Override public boolean equals(Object o) { if (!(o instanceof Key2)) return false; Key2 other = (Key2) o; if (!java.util.Objects.equals(this.key1, other.key1)) return false; if (!java.util.Objects.equals(this.key2, other.key2)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.key1, this.key2); } @Override public String toString() { return new StringBuilder("Key2[").append("key1=").append(this.key1).append(", key2=").append(this.key2).append("]").toString(); } } + private static record Key2(Object key1, Object key2) implements Serializable {} } \ No newline at end of file diff --git a/jOOQ/src/main/java/org/jooq/impl/Cardinality.java b/jOOQ/src/main/java/org/jooq/impl/Cardinality.java index 7d5c442721..4c361babf1 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Cardinality.java +++ b/jOOQ/src/main/java/org/jooq/impl/Cardinality.java @@ -165,7 +165,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Cardinality) { QOM.Cardinality o = (QOM.Cardinality) that; + if (that instanceof QOM.Cardinality o) { return StringUtils.equals($array(), o.$array()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Ceil.java b/jOOQ/src/main/java/org/jooq/impl/Ceil.java index 9785d06818..3619d6d8fa 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Ceil.java +++ b/jOOQ/src/main/java/org/jooq/impl/Ceil.java @@ -206,7 +206,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Ceil) { QOM.Ceil o = (QOM.Ceil) that; + if (that instanceof QOM.Ceil o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/CharLength.java b/jOOQ/src/main/java/org/jooq/impl/CharLength.java index e6ee7b176f..db4379d4fb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CharLength.java +++ b/jOOQ/src/main/java/org/jooq/impl/CharLength.java @@ -185,7 +185,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.CharLength) { QOM.CharLength o = (QOM.CharLength) that; + if (that instanceof QOM.CharLength o) { return StringUtils.equals($string(), o.$string()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Chr.java b/jOOQ/src/main/java/org/jooq/impl/Chr.java index 6a7bbc8993..7bf42e3abd 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Chr.java +++ b/jOOQ/src/main/java/org/jooq/impl/Chr.java @@ -185,7 +185,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Chr) { QOM.Chr o = (QOM.Chr) that; + if (that instanceof QOM.Chr o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/ConditionAsField.java b/jOOQ/src/main/java/org/jooq/impl/ConditionAsField.java index 5c3a63f9fa..af64099fc3 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ConditionAsField.java +++ b/jOOQ/src/main/java/org/jooq/impl/ConditionAsField.java @@ -186,7 +186,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.ConditionAsField) { QOM.ConditionAsField o = (QOM.ConditionAsField) that; + if (that instanceof QOM.ConditionAsField o) { return StringUtils.equals($condition(), o.$condition()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Contains.java b/jOOQ/src/main/java/org/jooq/impl/Contains.java index d3112517cc..5ec597f29e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Contains.java +++ b/jOOQ/src/main/java/org/jooq/impl/Contains.java @@ -164,7 +164,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Contains) { QOM.Contains o = (QOM.Contains) that; + if (that instanceof QOM.Contains o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($content(), o.$content()) diff --git a/jOOQ/src/main/java/org/jooq/impl/ContainsIgnoreCase.java b/jOOQ/src/main/java/org/jooq/impl/ContainsIgnoreCase.java index d619b6e8d4..658efef86d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ContainsIgnoreCase.java +++ b/jOOQ/src/main/java/org/jooq/impl/ContainsIgnoreCase.java @@ -147,7 +147,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.ContainsIgnoreCase) { QOM.ContainsIgnoreCase o = (QOM.ContainsIgnoreCase) that; + if (that instanceof QOM.ContainsIgnoreCase o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($content(), o.$content()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Convert.java b/jOOQ/src/main/java/org/jooq/impl/Convert.java index 484ac6bd48..4a6e7e9ed4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Convert.java +++ b/jOOQ/src/main/java/org/jooq/impl/Convert.java @@ -695,8 +695,8 @@ final class Convert { // All types can be converted into String else if (toClass == String.class) { - if (from instanceof EnumType) - return (U) ((EnumType) from).getLiteral(); + if (from instanceof EnumType e) + return (U) e.getLiteral(); return (U) from.toString(); } @@ -705,14 +705,14 @@ final class Convert { else if (toClass == byte[].class) { // [#5824] UUID's most significant bits in byte[] are first - if (from instanceof UUID) { UUID u = (UUID) from; + if (from instanceof UUID u) { ByteBuffer b = ByteBuffer.wrap(new byte[16]); b.putLong(u.getMostSignificantBits()); b.putLong(u.getLeastSignificantBits()); return (U) b.array(); } - else if (from instanceof ByteBuffer) - return (U) ((ByteBuffer) from).array(); + else if (from instanceof ByteBuffer b) + return (U) b.array(); else return (U) from.toString().getBytes(); } @@ -1090,7 +1090,7 @@ final class Convert { try { String fromString = (fromClass == String.class) ? (String) from - : from instanceof EnumType ? ((EnumType) from).getLiteral() + : from instanceof EnumType e ? e.getLiteral() : ((Enum) from).name(); if (fromString == null) @@ -1441,12 +1441,12 @@ final class Convert { private static final long millis(Temporal temporal) { // java.sql.* temporal types: - if (temporal instanceof LocalDate) - return Date.valueOf((LocalDate) temporal).getTime(); - else if (temporal instanceof LocalTime) - return Time.valueOf((LocalTime) temporal).getTime(); - else if (temporal instanceof LocalDateTime) - return Timestamp.valueOf((LocalDateTime) temporal).getTime(); + if (temporal instanceof LocalDate ld) + return Date.valueOf(ld).getTime(); + else if (temporal instanceof LocalTime lt) + return Time.valueOf(lt).getTime(); + else if (temporal instanceof LocalDateTime ldt) + return Timestamp.valueOf(ldt).getTime(); // OffsetDateTime else if (temporal.isSupported(INSTANT_SECONDS)) diff --git a/jOOQ/src/main/java/org/jooq/impl/ConvertedDataType.java b/jOOQ/src/main/java/org/jooq/impl/ConvertedDataType.java index b784e183d4..5523271f34 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ConvertedDataType.java +++ b/jOOQ/src/main/java/org/jooq/impl/ConvertedDataType.java @@ -315,7 +315,7 @@ final class ConvertedDataType extends AbstractDataTypeX { } final DataType delegate() { - return delegate instanceof ConvertedDataType ? ((ConvertedDataType) delegate).delegate() : delegate; + return delegate instanceof ConvertedDataType c ? c.delegate() : delegate; } } diff --git a/jOOQ/src/main/java/org/jooq/impl/ConvertedVal.java b/jOOQ/src/main/java/org/jooq/impl/ConvertedVal.java index dfda1c031b..1dd3b71a07 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ConvertedVal.java +++ b/jOOQ/src/main/java/org/jooq/impl/ConvertedVal.java @@ -64,7 +64,7 @@ final class ConvertedVal extends AbstractParamX implements UNotYetImplemen ConvertedVal(AbstractParamX delegate, DataType type) { super(delegate.getUnqualifiedName(), type); - this.delegate = delegate instanceof ConvertedVal ? ((ConvertedVal) delegate).delegate : delegate; + this.delegate = delegate instanceof ConvertedVal c ? c.delegate : delegate; } // ------------------------------------------------------------------------ diff --git a/jOOQ/src/main/java/org/jooq/impl/Corr.java b/jOOQ/src/main/java/org/jooq/impl/Corr.java index 09fdcf64cc..6e3e6eee34 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Corr.java +++ b/jOOQ/src/main/java/org/jooq/impl/Corr.java @@ -180,7 +180,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Corr) { QOM.Corr o = (QOM.Corr) that; + if (that instanceof QOM.Corr o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Cos.java b/jOOQ/src/main/java/org/jooq/impl/Cos.java index cfd907601f..df85849ccc 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Cos.java +++ b/jOOQ/src/main/java/org/jooq/impl/Cos.java @@ -166,7 +166,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Cos) { QOM.Cos o = (QOM.Cos) that; + if (that instanceof QOM.Cos o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Cosh.java b/jOOQ/src/main/java/org/jooq/impl/Cosh.java index 81e2f3f370..d1a7512e3f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Cosh.java +++ b/jOOQ/src/main/java/org/jooq/impl/Cosh.java @@ -216,7 +216,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Cosh) { QOM.Cosh o = (QOM.Cosh) that; + if (that instanceof QOM.Cosh o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Cot.java b/jOOQ/src/main/java/org/jooq/impl/Cot.java index ee29601cc7..222b61813c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Cot.java +++ b/jOOQ/src/main/java/org/jooq/impl/Cot.java @@ -188,7 +188,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Cot) { QOM.Cot o = (QOM.Cot) that; + if (that instanceof QOM.Cot o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Coth.java b/jOOQ/src/main/java/org/jooq/impl/Coth.java index 8d4ddc96da..a991dd13d2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Coth.java +++ b/jOOQ/src/main/java/org/jooq/impl/Coth.java @@ -239,7 +239,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Coth) { QOM.Coth o = (QOM.Coth) that; + if (that instanceof QOM.Coth o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Count.java b/jOOQ/src/main/java/org/jooq/impl/Count.java index 8a0835f475..b4501bf95a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Count.java +++ b/jOOQ/src/main/java/org/jooq/impl/Count.java @@ -145,7 +145,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Count) { QOM.Count o = (QOM.Count) that; + if (that instanceof QOM.Count o) { return StringUtils.equals($field(), o.$field()) && $distinct() == o.$distinct() diff --git a/jOOQ/src/main/java/org/jooq/impl/CovarPop.java b/jOOQ/src/main/java/org/jooq/impl/CovarPop.java index c96bb4b9f6..b720a08d20 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CovarPop.java +++ b/jOOQ/src/main/java/org/jooq/impl/CovarPop.java @@ -180,7 +180,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.CovarPop) { QOM.CovarPop o = (QOM.CovarPop) that; + if (that instanceof QOM.CovarPop o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/CovarSamp.java b/jOOQ/src/main/java/org/jooq/impl/CovarSamp.java index facc0c3fd1..749202a2de 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CovarSamp.java +++ b/jOOQ/src/main/java/org/jooq/impl/CovarSamp.java @@ -180,7 +180,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.CovarSamp) { QOM.CovarSamp o = (QOM.CovarSamp) that; + if (that instanceof QOM.CovarSamp o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/CreateTableImpl.java b/jOOQ/src/main/java/org/jooq/impl/CreateTableImpl.java index e60fc137aa..daba9ccab0 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CreateTableImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/CreateTableImpl.java @@ -613,8 +613,8 @@ implements } private final boolean matchingPrimaryKey(Constraint constraint, Field identity) { - if (constraint instanceof ConstraintImpl) - return ((ConstraintImpl) constraint).matchingPrimaryKey(identity); + if (constraint instanceof ConstraintImpl c) + return c.matchingPrimaryKey(identity); return false; } diff --git a/jOOQ/src/main/java/org/jooq/impl/CurrentCatalog.java b/jOOQ/src/main/java/org/jooq/impl/CurrentCatalog.java index 4abef9db3b..4f91618288 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CurrentCatalog.java +++ b/jOOQ/src/main/java/org/jooq/impl/CurrentCatalog.java @@ -131,7 +131,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.CurrentCatalog) { QOM.CurrentCatalog o = (QOM.CurrentCatalog) that; + if (that instanceof QOM.CurrentCatalog o) { return true; } else diff --git a/jOOQ/src/main/java/org/jooq/impl/CurrentSchema.java b/jOOQ/src/main/java/org/jooq/impl/CurrentSchema.java index d0888e28af..59d347385b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CurrentSchema.java +++ b/jOOQ/src/main/java/org/jooq/impl/CurrentSchema.java @@ -160,7 +160,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.CurrentSchema) { QOM.CurrentSchema o = (QOM.CurrentSchema) that; + if (that instanceof QOM.CurrentSchema o) { return true; } else diff --git a/jOOQ/src/main/java/org/jooq/impl/CurrentUser.java b/jOOQ/src/main/java/org/jooq/impl/CurrentUser.java index 4fb207f15f..7f052c581e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CurrentUser.java +++ b/jOOQ/src/main/java/org/jooq/impl/CurrentUser.java @@ -149,7 +149,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.CurrentUser) { QOM.CurrentUser o = (QOM.CurrentUser) that; + if (that instanceof QOM.CurrentUser o) { return true; } else diff --git a/jOOQ/src/main/java/org/jooq/impl/CustomCondition.java b/jOOQ/src/main/java/org/jooq/impl/CustomCondition.java index f9e1bdf8dd..8b3b314e46 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CustomCondition.java +++ b/jOOQ/src/main/java/org/jooq/impl/CustomCondition.java @@ -60,7 +60,7 @@ import org.jooq.impl.QOM.UOpaque; * * @author Lukas Eder */ -public /* non-sealed */ abstract class CustomCondition +public non-sealed abstract class CustomCondition extends AbstractCondition implements diff --git a/jOOQ/src/main/java/org/jooq/impl/CustomField.java b/jOOQ/src/main/java/org/jooq/impl/CustomField.java index b361146003..4f83823ab9 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CustomField.java +++ b/jOOQ/src/main/java/org/jooq/impl/CustomField.java @@ -63,7 +63,7 @@ import org.jooq.impl.QOM.UOpaque; * * @author Lukas Eder */ -public /* non-sealed */ abstract class CustomField +public non-sealed abstract class CustomField extends AbstractField implements diff --git a/jOOQ/src/main/java/org/jooq/impl/CustomQueryPart.java b/jOOQ/src/main/java/org/jooq/impl/CustomQueryPart.java index 217f081b53..2796944a90 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CustomQueryPart.java +++ b/jOOQ/src/main/java/org/jooq/impl/CustomQueryPart.java @@ -73,7 +73,7 @@ import org.jooq.impl.QOM.UOpaque; * * @author Lukas Eder */ -public /* non-sealed */ abstract class CustomQueryPart extends AbstractQueryPart implements UOpaque { +public non-sealed abstract class CustomQueryPart extends AbstractQueryPart implements UOpaque { private static final Clause[] CLAUSES = { CUSTOM }; diff --git a/jOOQ/src/main/java/org/jooq/impl/CustomTable.java b/jOOQ/src/main/java/org/jooq/impl/CustomTable.java index 53a1456534..5aff6e57e9 100644 --- a/jOOQ/src/main/java/org/jooq/impl/CustomTable.java +++ b/jOOQ/src/main/java/org/jooq/impl/CustomTable.java @@ -75,7 +75,7 @@ import org.jooq.impl.QOM.UOpaque; * * @author Lukas Eder */ -public /* non-sealed */ abstract class CustomTable> +public non-sealed abstract class CustomTable> extends TableImpl implements diff --git a/jOOQ/src/main/java/org/jooq/impl/DSL.java b/jOOQ/src/main/java/org/jooq/impl/DSL.java index 370b262ecb..9c3b378d58 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DSL.java +++ b/jOOQ/src/main/java/org/jooq/impl/DSL.java @@ -14832,12 +14832,12 @@ public class DSL { @NotNull @Support public static Field field(SelectField field) { - return field instanceof Field - ? (Field) field - : field instanceof AbstractRow - ? (Field) ((AbstractRow) field).rf() - : field instanceof AbstractTable - ? (Field) ((AbstractTable) field).tf() + return field instanceof Field f + ? f + : field instanceof AbstractRow r + ? (Field) r.rf() + : field instanceof AbstractTable t + ? (Field) t.tf() : field("{0}", field.getDataType(), field); } @@ -20231,7 +20231,7 @@ public class DSL { @NotNull @Support public static Field field(Condition condition) { - return condition instanceof NoCondition ? noField(BOOLEAN) : condition instanceof FieldCondition ? ((FieldCondition) condition).field : new ConditionAsField(condition); + return condition instanceof NoCondition ? noField(BOOLEAN) : condition instanceof FieldCondition f ? f.field : new ConditionAsField(condition); } /** @@ -20250,7 +20250,7 @@ public class DSL { @NotNull @Support public static Condition condition(Field field) { - return field instanceof Condition ? (Condition) field : field instanceof NoField ? noCondition() : field instanceof ConditionAsField ? ((ConditionAsField) field).condition : new FieldCondition(field); + return field instanceof Condition ? (Condition) field : field instanceof NoField ? noCondition() : field instanceof ConditionAsField c ? c.condition : new FieldCondition(field); } // ------------------------------------------------------------------------- @@ -31851,8 +31851,8 @@ public class DSL { static DataType getDataType0(Class type) { DataType t = DefaultDataType.getDataType(DEFAULT, type, (DataType) SQLDataType.OTHER); - if (t instanceof LegacyConvertedDataType) - return new DataTypeProxy((LegacyConvertedDataType) t); + if (t instanceof LegacyConvertedDataType l) + return new DataTypeProxy(l); else if (t != SQLDataType.OTHER) return t; else diff --git a/jOOQ/src/main/java/org/jooq/impl/DataChangeDeltaTable.java b/jOOQ/src/main/java/org/jooq/impl/DataChangeDeltaTable.java index 8b181bf68e..bfbd36fb3d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DataChangeDeltaTable.java +++ b/jOOQ/src/main/java/org/jooq/impl/DataChangeDeltaTable.java @@ -114,8 +114,8 @@ implements private static final Table table(DMLQuery query) { if (query instanceof Insert || query instanceof Update || query instanceof Delete) return (Table) abstractDMLQuery(query).table(); - else if (query instanceof MergeImpl) - return ((MergeImpl) query).table(); + else if (query instanceof MergeImpl m) + return m.table(); else throw new IllegalStateException("Unsupported query type: " + query); } diff --git a/jOOQ/src/main/java/org/jooq/impl/DateAdd.java b/jOOQ/src/main/java/org/jooq/impl/DateAdd.java index e51c5dc624..a21f24329d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DateAdd.java +++ b/jOOQ/src/main/java/org/jooq/impl/DateAdd.java @@ -485,7 +485,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.DateAdd) { QOM.DateAdd o = (QOM.DateAdd) that; + if (that instanceof QOM.DateAdd o) { return StringUtils.equals($date(), o.$date()) && StringUtils.equals($interval(), o.$interval()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java b/jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java index 216b0c4d30..c3fe390090 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java @@ -1059,8 +1059,8 @@ public class DefaultBinding implements Binding { } /* non-final */ void setNull0(BindingSetStatementContext ctx) throws SQLException { - if (ctx.statement() instanceof R2DBCPreparedStatement) - ((R2DBCPreparedStatement) ctx.statement()).setNull(ctx.index(), dataType); + if (ctx.statement() instanceof R2DBCPreparedStatement s) + s.setNull(ctx.index(), dataType); else ctx.statement().setNull(ctx.index(), sqltype(ctx.statement(), ctx.configuration())); } @@ -1395,8 +1395,8 @@ public class DefaultBinding implements Binding { private static final Object[] convertArray(Object array, Class type) throws SQLException { if (array instanceof Object[]) return Convert.convert(array, type); - else if (array instanceof Array) - return convertArray((Array) array, type); + else if (array instanceof Array a) + return convertArray(a, type); return null; } @@ -3625,7 +3625,7 @@ public class DefaultBinding implements Binding { * LOB, if the argument is a lob. */ private static final Object unlob(Object object) throws SQLException { - if (object instanceof Blob) { Blob blob = (Blob) object; + if (object instanceof Blob blob) { try { return blob.getBytes(1, asInt(blob.length())); } @@ -3633,7 +3633,7 @@ public class DefaultBinding implements Binding { JDBCUtils.safeFree(blob); } } - else if (object instanceof Clob) { Clob clob = (Clob) object; + else if (object instanceof Clob clob) { try { return clob.getSubString(1, asInt(clob.length())); } @@ -3750,8 +3750,8 @@ public class DefaultBinding implements Binding { @Override final void set0(BindingSetSQLOutputContext ctx, Record value) throws SQLException { - if (value instanceof QualifiedRecord) - ctx.output().writeObject((QualifiedRecord) value); + if (value instanceof QualifiedRecord q) + ctx.output().writeObject(q); else throw new UnsupportedOperationException("Type " + dataType + " is not supported"); } @@ -3811,7 +3811,7 @@ public class DefaultBinding implements Binding { result = DefaultResultBinding.readMultiset(ctx, row, type.getType(), s -> s != null && (s.startsWith("[") || s.startsWith("{")) ? "[" + s + "]" : null, s -> s != null && (s.startsWith("<")) ? "" + s + "" : null, - s -> s instanceof Struct ? asList((Struct) s) : null + s -> s instanceof Struct x ? asList(x) : null ); return isEmpty(result) ? null : result.get(0); @@ -3829,10 +3829,10 @@ public class DefaultBinding implements Binding { // ------------------------------------------------------------------------- static final void pgRenderRecordCast(Context ctx, Record value) { - if (value instanceof UDTRecord) - ctx.visit(((UDTRecord) value).getUDT().getQualifiedName()); - else if (value instanceof TableRecord) - ctx.visit(((TableRecord) value).getTable().getQualifiedName()); + if (value instanceof UDTRecord u) + ctx.visit(u.getUDT().getQualifiedName()); + else if (value instanceof TableRecord t) + ctx.visit(t.getTable().getQualifiedName()); } @SuppressWarnings("unchecked") diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultCloseableDSLContext.java b/jOOQ/src/main/java/org/jooq/impl/DefaultCloseableDSLContext.java index 1971b6ecc4..23fdeeda52 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultCloseableDSLContext.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultCloseableDSLContext.java @@ -76,12 +76,12 @@ public class DefaultCloseableDSLContext extends DefaultDSLContext implements Clo ConnectionProvider cp = configuration().connectionProvider(); ConnectionFactory cf = configuration().connectionFactory(); - if (cp instanceof DefaultCloseableConnectionProvider) { DefaultCloseableConnectionProvider dcp = (DefaultCloseableConnectionProvider) cp; + if (cp instanceof DefaultCloseableConnectionProvider dcp) { JDBCUtils.safeClose(dcp.connection); dcp.connection = null; } - if (cf instanceof DefaultConnectionFactory) { DefaultConnectionFactory dcf = (DefaultConnectionFactory) cf; + if (cf instanceof DefaultConnectionFactory dcf) { if (dcf.finalize) { R2DBC.block(dcf.connection.close()); dcf.connection = null; diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultConfiguration.java b/jOOQ/src/main/java/org/jooq/impl/DefaultConfiguration.java index 87a5abc01e..2dc526ce7d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultConfiguration.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultConfiguration.java @@ -1358,8 +1358,8 @@ public class DefaultConfiguration extends AbstractConfiguration { if (newTransactionProvider != null && !(this.connectionProvider instanceof ExecuteContextConnectionProvider)) { this.transactionProvider = newTransactionProvider; - if (newTransactionProvider instanceof ThreadLocalTransactionProvider) - this.connectionProvider = ((ThreadLocalTransactionProvider) newTransactionProvider).localConnectionProvider; + if (newTransactionProvider instanceof ThreadLocalTransactionProvider t) + this.connectionProvider = t.localConnectionProvider; } else this.transactionProvider = new NoTransactionProvider(); @@ -1797,8 +1797,8 @@ public class DefaultConfiguration extends AbstractConfiguration { // [#3229] [#5377] If we're currently in a transaction, return that transaction's // local DefaultConnectionProvider, not the one from this configuration TransactionProvider tp = transactionProvider(); - ConnectionProvider transactional = tp instanceof ThreadLocalTransactionProvider - ? ((ThreadLocalTransactionProvider) tp).localConnectionProvider + ConnectionProvider transactional = tp instanceof ThreadLocalTransactionProvider t + ? t.localConnectionProvider : (ConnectionProvider) data(DATA_DEFAULT_TRANSACTION_PROVIDER_CONNECTION); return transactional != null diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultDSLContext.java b/jOOQ/src/main/java/org/jooq/impl/DefaultDSLContext.java index f2cc0344d8..77b83b5a57 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultDSLContext.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultDSLContext.java @@ -566,8 +566,8 @@ public class DefaultDSLContext extends AbstractScope implements DSLContext, Seri // [#8413] Avoid rollback logic if commit was successful (exception in commitEnd()) if (!committed) { - if (cause instanceof Exception) - ctx.cause((Exception) cause); + if (cause instanceof Exception e) + ctx.cause(e); else ctx.causeThrowable(cause); @@ -584,10 +584,10 @@ public class DefaultDSLContext extends AbstractScope implements DSLContext, Seri } // [#6608] [#7167] Errors are no longer handled differently - if (cause instanceof RuntimeException) - throw (RuntimeException) cause; - else if (cause instanceof Error) - throw (Error) cause; + if (cause instanceof RuntimeException e) + throw e; + else if (cause instanceof Error e) + throw e; else throw new DataAccessException(committed ? "Exception after commit" diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultRecordMapper.java b/jOOQ/src/main/java/org/jooq/impl/DefaultRecordMapper.java index ab41c85820..f67220b384 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultRecordMapper.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultRecordMapper.java @@ -70,7 +70,7 @@ import java.lang.reflect.Modifier; import java.lang.reflect.Parameter; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Proxy; -// ... +import java.lang.reflect.RecordComponent; import java.lang.reflect.Type; import java.sql.Timestamp; import java.util.ArrayList; @@ -440,26 +440,26 @@ public class DefaultRecordMapper implements RecordMapper types = Tools.map(rc, RecordComponent::getType); + for (Constructor constructor : constructors) { + Class[] parameterTypes = constructor.getParameterTypes(); + if (types.equals(Arrays.asList(parameterTypes))) { + delegate = new ImmutablePOJOMapper( + constructor, + parameterTypes, + Tools.map(rc, RecordComponent::getName), + true + ); - - - - - - - - - - - - - - - - - + return; + } + } + } // [#7324] Map immutable Kotlin classes by parameter names if kotlin-reflect is on the classpath @@ -568,22 +568,22 @@ public class DefaultRecordMapper implements RecordMapper implements RecordMapper) type); + if (record instanceof AbstractRecord a) + return a.intoRecord((Class) type); throw new MappingException("Cannot map record " + record + " to type " + type); } @@ -764,7 +764,7 @@ public class DefaultRecordMapper implements RecordMapper implements Callable { private final Constructor constructor; public ConstructorCall(Constructor constructor) { this.constructor = constructor; } public Constructor constructor() { return constructor; } @Override public boolean equals(Object o) { if (!(o instanceof ConstructorCall)) return false; ConstructorCall other = (ConstructorCall) o; if (!java.util.Objects.equals(this.constructor, other.constructor)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.constructor); } @Override public String toString() { return new StringBuilder("ConstructorCall[").append("constructor=").append(this.constructor).append("]").toString(); } + private static final record ConstructorCall(Constructor constructor) implements Callable { @Override public E call() throws Exception { return constructor.newInstance(); @@ -1207,9 +1207,9 @@ public class DefaultRecordMapper implements RecordMapper E attach(E attachable, Record record) { // [#2869] Attach the mapped outcome if it is Attachable and if the context's // Settings.attachRecords flag is set - if (attachable instanceof Attachable) + if (attachable instanceof Attachable a) if (Tools.attachRecords(record.configuration())) - ((Attachable) attachable).attach(record.configuration()); + a.attach(record.configuration()); return attachable; } diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultRecordUnmapper.java b/jOOQ/src/main/java/org/jooq/impl/DefaultRecordUnmapper.java index 4596c9a2e5..aeea897aba 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultRecordUnmapper.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultRecordUnmapper.java @@ -138,7 +138,7 @@ public class DefaultRecordUnmapper implements RecordUnmappe @SuppressWarnings({ "unchecked" }) @Override public final R unmap(E source) { - if (source instanceof Object[]) { Object[] array = (Object[]) source; + if (source instanceof Object[] array) { int size = rowType.size(); AbstractRecord record = (AbstractRecord) newRecord(); @@ -157,7 +157,7 @@ public class DefaultRecordUnmapper implements RecordUnmappe @SuppressWarnings({ "unchecked" }) @Override public final R unmap(E source) { - if (source instanceof Iterable) { Iterable iterable = (Iterable) source; + if (source instanceof Iterable iterable) { Iterator it = iterable.iterator(); int size = rowType.size(); AbstractRecord record = (AbstractRecord) newRecord(); @@ -180,7 +180,7 @@ public class DefaultRecordUnmapper implements RecordUnmappe // [#1987] Distinguish between various types to load data from // Maps are loaded using a {field-name -> value} convention - if (source instanceof Map) { Map map = (Map) source; + if (source instanceof Map map) { Record record = newRecord(); for (int i = 0; i < fields.length; i++) { diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultTransactionContext.java b/jOOQ/src/main/java/org/jooq/impl/DefaultTransactionContext.java index 67375f8784..a03973550b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultTransactionContext.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultTransactionContext.java @@ -66,7 +66,7 @@ class DefaultTransactionContext extends AbstractScope implements TransactionCont @Override public final Exception cause() { - return cause instanceof Exception ? (Exception) cause : null; + return cause instanceof Exception e ? e : null; } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultUnwrapperProvider.java b/jOOQ/src/main/java/org/jooq/impl/DefaultUnwrapperProvider.java index ec334d46e6..4215171f3a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultUnwrapperProvider.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultUnwrapperProvider.java @@ -80,10 +80,10 @@ final class DefaultUnwrapperProvider implements UnwrapperProvider { @Override public T unwrap(Wrapper wrapper, Class iface) { - if (wrapper instanceof Connection) - return unwrap((Connection) wrapper, iface); - else if (wrapper instanceof Statement) - return unwrap((Statement) wrapper, iface); + if (wrapper instanceof Connection c) + return unwrap(c, iface); + else if (wrapper instanceof Statement s) + return unwrap(s, iface); else throw new IllegalArgumentException("Cannot unwrap: " + wrapper); } diff --git a/jOOQ/src/main/java/org/jooq/impl/Degrees.java b/jOOQ/src/main/java/org/jooq/impl/Degrees.java index def4c776bb..490c10a5b7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Degrees.java +++ b/jOOQ/src/main/java/org/jooq/impl/Degrees.java @@ -226,7 +226,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Degrees) { QOM.Degrees o = (QOM.Degrees) that; + if (that instanceof QOM.Degrees o) { return StringUtils.equals($radians(), o.$radians()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/DelayedArrayCollector.java b/jOOQ/src/main/java/org/jooq/impl/DelayedArrayCollector.java index 1abc32c20a..6eecfc5cf5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DelayedArrayCollector.java +++ b/jOOQ/src/main/java/org/jooq/impl/DelayedArrayCollector.java @@ -78,8 +78,8 @@ final class DelayedArrayCollector implements Collector F patch(Collector collector, F fields) { - if (collector instanceof DelayedArrayCollector) - ((DelayedArrayCollector) collector).fields = fields; + if (collector instanceof DelayedArrayCollector d) + d.fields = fields; return fields; } diff --git a/jOOQ/src/main/java/org/jooq/impl/Diff.java b/jOOQ/src/main/java/org/jooq/impl/Diff.java index 908351bd0e..37fb15b7c4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Diff.java +++ b/jOOQ/src/main/java/org/jooq/impl/Diff.java @@ -715,7 +715,7 @@ final class Diff { return result.iterator(); } - private static final /* record */ class DiffResult { private final List queries; private final Set> droppedFks; public DiffResult(List queries, Set> droppedFks) { this.queries = queries; this.droppedFks = droppedFks; } public List queries() { return queries; } public Set> droppedFks() { return droppedFks; } @Override public boolean equals(Object o) { if (!(o instanceof DiffResult)) return false; DiffResult other = (DiffResult) o; if (!java.util.Objects.equals(this.queries, other.queries)) return false; if (!java.util.Objects.equals(this.droppedFks, other.droppedFks)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.queries, this.droppedFks); } + private static final record DiffResult(List queries, Set> droppedFks) { DiffResult() { this(new ArrayList<>(), new HashSet<>()); } diff --git a/jOOQ/src/main/java/org/jooq/impl/Digits.java b/jOOQ/src/main/java/org/jooq/impl/Digits.java index c0a27f1c4f..eb2febb4b5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Digits.java +++ b/jOOQ/src/main/java/org/jooq/impl/Digits.java @@ -177,7 +177,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Digits) { QOM.Digits o = (QOM.Digits) that; + if (that instanceof QOM.Digits o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Div.java b/jOOQ/src/main/java/org/jooq/impl/Div.java index 21ed8d9415..8549269324 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Div.java +++ b/jOOQ/src/main/java/org/jooq/impl/Div.java @@ -169,7 +169,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Div) { QOM.Div o = (QOM.Div) that; + if (that instanceof QOM.Div o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/EndsWith.java b/jOOQ/src/main/java/org/jooq/impl/EndsWith.java index 83b855ef15..1f4e00731f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/EndsWith.java +++ b/jOOQ/src/main/java/org/jooq/impl/EndsWith.java @@ -147,7 +147,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.EndsWith) { QOM.EndsWith o = (QOM.EndsWith) that; + if (that instanceof QOM.EndsWith o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($suffix(), o.$suffix()) diff --git a/jOOQ/src/main/java/org/jooq/impl/EndsWithIgnoreCase.java b/jOOQ/src/main/java/org/jooq/impl/EndsWithIgnoreCase.java index e445de7d3c..eb7ed1f335 100644 --- a/jOOQ/src/main/java/org/jooq/impl/EndsWithIgnoreCase.java +++ b/jOOQ/src/main/java/org/jooq/impl/EndsWithIgnoreCase.java @@ -147,7 +147,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.EndsWithIgnoreCase) { QOM.EndsWithIgnoreCase o = (QOM.EndsWithIgnoreCase) that; + if (that instanceof QOM.EndsWithIgnoreCase o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($suffix(), o.$suffix()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Eq.java b/jOOQ/src/main/java/org/jooq/impl/Eq.java index a6d808f88b..4c33e5f026 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Eq.java +++ b/jOOQ/src/main/java/org/jooq/impl/Eq.java @@ -224,7 +224,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Eq) { QOM.Eq o = (QOM.Eq) that; + if (that instanceof QOM.Eq o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Euler.java b/jOOQ/src/main/java/org/jooq/impl/Euler.java index 8e95682241..2b6a9c4619 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Euler.java +++ b/jOOQ/src/main/java/org/jooq/impl/Euler.java @@ -200,7 +200,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Euler) { QOM.Euler o = (QOM.Euler) that; + if (that instanceof QOM.Euler o) { return true; } else diff --git a/jOOQ/src/main/java/org/jooq/impl/Excluded.java b/jOOQ/src/main/java/org/jooq/impl/Excluded.java index 576961d1d7..1aeb3928c1 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Excluded.java +++ b/jOOQ/src/main/java/org/jooq/impl/Excluded.java @@ -177,7 +177,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Excluded) { QOM.Excluded o = (QOM.Excluded) that; + if (that instanceof QOM.Excluded o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java b/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java index 1befb92452..b37d2722f2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java +++ b/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java @@ -186,8 +186,8 @@ final class ExecuteListeners implements ExecuteListener { @Override public final void executeStart(ExecuteContext ctx) { - if (ctx instanceof DefaultExecuteContext) - ((DefaultExecuteContext) ctx).incrementStatementExecutionCount(); + if (ctx instanceof DefaultExecuteContext d) + d.incrementStatementExecutionCount(); for (ExecuteListener listener : listeners[0]) listener.executeStart(ctx); diff --git a/jOOQ/src/main/java/org/jooq/impl/Exists.java b/jOOQ/src/main/java/org/jooq/impl/Exists.java index 708403c0ce..6a6fe72500 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Exists.java +++ b/jOOQ/src/main/java/org/jooq/impl/Exists.java @@ -178,7 +178,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Exists) { QOM.Exists o = (QOM.Exists) that; + if (that instanceof QOM.Exists o) { return StringUtils.equals($query(), o.$query()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Exp.java b/jOOQ/src/main/java/org/jooq/impl/Exp.java index d72d7a86ac..6421784db4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Exp.java +++ b/jOOQ/src/main/java/org/jooq/impl/Exp.java @@ -185,7 +185,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Exp) { QOM.Exp o = (QOM.Exp) that; + if (that instanceof QOM.Exp o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/ExplainQuery.java b/jOOQ/src/main/java/org/jooq/impl/ExplainQuery.java index 87b7155972..56c54c5fb7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ExplainQuery.java +++ b/jOOQ/src/main/java/org/jooq/impl/ExplainQuery.java @@ -158,11 +158,11 @@ final class ExplainQuery { return new ExplainImpl(rows, cost, result.format()); } - private static final /* record */ class ExplainImpl implements Explain { private final double rows; private final double cost; private final String plan; public ExplainImpl(double rows, double cost, String plan) { this.rows = rows; this.cost = cost; this.plan = plan; } public double rows() { return rows; } public double cost() { return cost; } public String plan() { return plan; } @Override public boolean equals(Object o) { if (!(o instanceof ExplainImpl)) return false; ExplainImpl other = (ExplainImpl) o; if (!java.util.Objects.equals(this.rows, other.rows)) return false; if (!java.util.Objects.equals(this.cost, other.cost)) return false; if (!java.util.Objects.equals(this.plan, other.plan)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.rows, this.cost, this.plan); } + private static final record ExplainImpl(double rows, double cost, String plan) implements Explain { @Override public String toString() { - return String.format("Explain [cost=%.2f, rows=%.2f]nn", cost, rows) + plan; + return String.format("Explain [cost=%.2f, rows=%.2f]\n\n", cost, rows) + plan; } } } diff --git a/jOOQ/src/main/java/org/jooq/impl/Expression.java b/jOOQ/src/main/java/org/jooq/impl/Expression.java index f2e0d6dd05..042c419c9a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Expression.java +++ b/jOOQ/src/main/java/org/jooq/impl/Expression.java @@ -861,7 +861,7 @@ final class Expression extends AbstractTransformable implements UOperator2 } } - static final /* record */ class Expr { private final Q lhs; private final QueryPart op; private final Q rhs; public Expr(Q lhs, QueryPart op, Q rhs) { this.lhs = lhs; this.op = op; this.rhs = rhs; } public Q lhs() { return lhs; } public QueryPart op() { return op; } public Q rhs() { return rhs; } @Override public boolean equals(Object o) { if (!(o instanceof Expr)) return false; Expr other = (Expr) o; if (!java.util.Objects.equals(this.lhs, other.lhs)) return false; if (!java.util.Objects.equals(this.op, other.op)) return false; if (!java.util.Objects.equals(this.rhs, other.rhs)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.lhs, this.op, this.rhs); } @Override public String toString() { return new StringBuilder("Expr[").append("lhs=").append(this.lhs).append(", op=").append(this.op).append(", rhs=").append(this.rhs).append("]").toString(); } } + static final record Expr(Q lhs, QueryPart op, Q rhs) {} @SuppressWarnings("unchecked") static final void acceptAssociative( diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldCondition.java b/jOOQ/src/main/java/org/jooq/impl/FieldCondition.java index 970f441fc4..e090de3deb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/FieldCondition.java +++ b/jOOQ/src/main/java/org/jooq/impl/FieldCondition.java @@ -170,7 +170,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.FieldCondition) { QOM.FieldCondition o = (QOM.FieldCondition) that; + if (that instanceof QOM.FieldCondition o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldMapForUpdate.java b/jOOQ/src/main/java/org/jooq/impl/FieldMapForUpdate.java index fe375868fd..d83ae4cd44 100644 --- a/jOOQ/src/main/java/org/jooq/impl/FieldMapForUpdate.java +++ b/jOOQ/src/main/java/org/jooq/impl/FieldMapForUpdate.java @@ -213,7 +213,7 @@ final class FieldMapForUpdate extends AbstractQueryPartMap multiSelect = value instanceof Select ? (Select) value : null; @@ -352,7 +352,7 @@ final class FieldMapForUpdate extends AbstractQueryPartMap map) { map.forEach((k, v) -> { - if (k instanceof Row) { Row r = (Row) k; + if (k instanceof Row r) { put(r, (FieldOrRowOrSelect) v); } else { diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldsImpl.java b/jOOQ/src/main/java/org/jooq/impl/FieldsImpl.java index c8c0c1f8c5..44e3852c8f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/FieldsImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/FieldsImpl.java @@ -202,14 +202,14 @@ final class FieldsImpl extends AbstractQueryPart implements Re * needed. */ static final Row fieldsRow0(FieldsTrait fields) { - return fields instanceof Select ? ((Select) fields).asTable("t").fieldsRow() : fields.fieldsRow(); + return fields instanceof Select s ? s.asTable("t").fieldsRow() : fields.fieldsRow(); } private static final ThrowingFunction, Field, RuntimeException> toField() { - return f -> f instanceof Row - ? new RowAsField<>((Row) f) - : f instanceof Table - ? new TableAsField<>((Table) f) + return f -> f instanceof Row r + ? new RowAsField<>(r) + : f instanceof Table t + ? new TableAsField<>(t) : (Field) f; } @@ -288,7 +288,7 @@ final class FieldsImpl extends AbstractQueryPart implements Re } private final String tableName(Field field) { - if (field instanceof TableField) { TableField f = (TableField) field; + if (field instanceof TableField f) { Table table = f.getTable(); if (table != null) @@ -596,8 +596,8 @@ final class FieldsImpl extends AbstractQueryPart implements Re if (this == that) return true; - if (that instanceof FieldsImpl) - return Arrays.equals(fields, ((FieldsImpl) that).fields); + if (that instanceof FieldsImpl f) + return Arrays.equals(fields, f.fields); return false; } diff --git a/jOOQ/src/main/java/org/jooq/impl/Floor.java b/jOOQ/src/main/java/org/jooq/impl/Floor.java index ca8e730e9e..982e713679 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Floor.java +++ b/jOOQ/src/main/java/org/jooq/impl/Floor.java @@ -195,7 +195,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Floor) { QOM.Floor o = (QOM.Floor) that; + if (that instanceof QOM.Floor o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Ge.java b/jOOQ/src/main/java/org/jooq/impl/Ge.java index 0bf9f52edc..ae02734c27 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Ge.java +++ b/jOOQ/src/main/java/org/jooq/impl/Ge.java @@ -153,7 +153,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Ge) { QOM.Ge o = (QOM.Ge) that; + if (that instanceof QOM.Ge o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/GroupFieldList.java b/jOOQ/src/main/java/org/jooq/impl/GroupFieldList.java index 19321086d4..7a3f867789 100644 --- a/jOOQ/src/main/java/org/jooq/impl/GroupFieldList.java +++ b/jOOQ/src/main/java/org/jooq/impl/GroupFieldList.java @@ -109,7 +109,7 @@ final class GroupFieldList extends QueryPartList { @Override protected final void acceptElement(Context ctx, GroupField part) { - if (part instanceof Table) { Table t = (Table) part; + if (part instanceof Table t) { if (NO_SUPPORT_GROUP_BY_TABLE.contains(ctx.dialect())) { Field[] f = fields(ctx, t); diff --git a/jOOQ/src/main/java/org/jooq/impl/Gt.java b/jOOQ/src/main/java/org/jooq/impl/Gt.java index 0d92e94a47..25377e4154 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Gt.java +++ b/jOOQ/src/main/java/org/jooq/impl/Gt.java @@ -153,7 +153,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Gt) { QOM.Gt o = (QOM.Gt) that; + if (that instanceof QOM.Gt o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/IAdd.java b/jOOQ/src/main/java/org/jooq/impl/IAdd.java index 24494cdd41..d37566e0cb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IAdd.java +++ b/jOOQ/src/main/java/org/jooq/impl/IAdd.java @@ -141,7 +141,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Add) { QOM.Add o = (QOM.Add) that; + if (that instanceof QOM.Add o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/IDiv.java b/jOOQ/src/main/java/org/jooq/impl/IDiv.java index ad8eb13b7a..4f2c71bf25 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IDiv.java +++ b/jOOQ/src/main/java/org/jooq/impl/IDiv.java @@ -141,7 +141,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Div) { QOM.Div o = (QOM.Div) that; + if (that instanceof QOM.Div o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/IMul.java b/jOOQ/src/main/java/org/jooq/impl/IMul.java index a5188549c7..a0407a0b48 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IMul.java +++ b/jOOQ/src/main/java/org/jooq/impl/IMul.java @@ -141,7 +141,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Mul) { QOM.Mul o = (QOM.Mul) that; + if (that instanceof QOM.Mul o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/ISub.java b/jOOQ/src/main/java/org/jooq/impl/ISub.java index 2c995b452d..dcdd613d17 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ISub.java +++ b/jOOQ/src/main/java/org/jooq/impl/ISub.java @@ -141,7 +141,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Sub) { QOM.Sub o = (QOM.Sub) that; + if (that instanceof QOM.Sub o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/In.java b/jOOQ/src/main/java/org/jooq/impl/In.java index 192c0613c0..5e8485fd40 100644 --- a/jOOQ/src/main/java/org/jooq/impl/In.java +++ b/jOOQ/src/main/java/org/jooq/impl/In.java @@ -156,7 +156,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.In) { QOM.In o = (QOM.In) that; + if (that instanceof QOM.In o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/InformationSchemaExport.java b/jOOQ/src/main/java/org/jooq/impl/InformationSchemaExport.java index 51645e0024..e9d8152628 100644 --- a/jOOQ/src/main/java/org/jooq/impl/InformationSchemaExport.java +++ b/jOOQ/src/main/java/org/jooq/impl/InformationSchemaExport.java @@ -249,16 +249,16 @@ final class InformationSchemaExport { iq.setNumericScale(q.getDataType().scale()); if (q.getStartWith() != null) - iq.setStartValue(Convert.convert(q.getStartWith() instanceof Param ? ((Param) q.getStartWith()).getValue() : q.getStartWith().toString(), BigInteger.class)); + iq.setStartValue(Convert.convert(q.getStartWith() instanceof Param p ? p.getValue() : q.getStartWith().toString(), BigInteger.class)); if (q.getIncrementBy() != null) - iq.setIncrement(Convert.convert(q.getIncrementBy() instanceof Param ? ((Param) q.getIncrementBy()).getValue() : q.getIncrementBy().toString(), BigInteger.class)); + iq.setIncrement(Convert.convert(q.getIncrementBy() instanceof Param p ? p.getValue() : q.getIncrementBy().toString(), BigInteger.class)); if (q.getMinvalue() != null) - iq.setMinimumValue(Convert.convert(q.getMinvalue() instanceof Param ? ((Param) q.getMinvalue()).getValue() : q.getMinvalue().toString(), BigInteger.class)); + iq.setMinimumValue(Convert.convert(q.getMinvalue() instanceof Param p ? p.getValue() : q.getMinvalue().toString(), BigInteger.class)); if (q.getMaxvalue() != null) - iq.setMaximumValue(Convert.convert(q.getMaxvalue() instanceof Param ? ((Param) q.getMaxvalue()).getValue() : q.getMaxvalue().toString(), BigInteger.class)); + iq.setMaximumValue(Convert.convert(q.getMaxvalue() instanceof Param p ? p.getValue() : q.getMaxvalue().toString(), BigInteger.class)); iq.setCycleOption(q.getCycle()); if (q.getCache() != null) - iq.setCache(Convert.convert(q.getCache() instanceof Param ? ((Param) q.getCache()).getValue() : q.getCache().toString(), BigInteger.class)); + iq.setCache(Convert.convert(q.getCache() instanceof Param p ? p.getValue() : q.getCache().toString(), BigInteger.class)); result.getSequences().add(iq); } diff --git a/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java b/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java index 8b5da15f81..edbfd5c289 100644 --- a/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java @@ -827,10 +827,10 @@ final class InsertImpl { - if (v instanceof Excluded) { Excluded e = (Excluded) v; + if (v instanceof Excluded e) { return keys.contains(e.$field()) ? v : qualify(table(), e.$field()); } else @@ -904,7 +904,7 @@ implements // [#5214] [#13571] PostgreSQL EXCLUDED pseudo table emulation // The InsertQueryImpl uses "t" as table name um.replaceAll((key, v) -> { - if (v instanceof Excluded) { Excluded e = (Excluded) v; + if (v instanceof Excluded e) { if (t != null) // If the field isn't part of the USING clause, just diff --git a/jOOQ/src/main/java/org/jooq/impl/Internal.java b/jOOQ/src/main/java/org/jooq/impl/Internal.java index 950346452d..addd2e3f71 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Internal.java +++ b/jOOQ/src/main/java/org/jooq/impl/Internal.java @@ -191,8 +191,8 @@ public final class Internal { public static final ForeignKey createForeignKey(Table table, Name name, TableField[] fkFields, UniqueKey uk, TableField[] ukFields, boolean enforced) { ForeignKey result = new ReferenceImpl<>(table, name, fkFields, uk, ukFields == null ? uk.getFieldsArray() : ukFields, enforced); - if (uk instanceof UniqueKeyImpl) - ((UniqueKeyImpl) uk).references.add(result); + if (uk instanceof UniqueKeyImpl u) + u.references.add(result); return result; } @@ -263,7 +263,7 @@ public final class Internal { public static final Name createPathAlias(Table child, ForeignKey path) { Name name = DSL.name(path.getName()); - if (child instanceof TableImpl) { TableImpl t = (TableImpl) child; + if (child instanceof TableImpl t) { Table ancestor = t.child; if (ancestor != null) @@ -473,9 +473,9 @@ public final class Internal { @SuppressWarnings({ "unchecked", "unused" }) public static final Class arrayType(Class type) { - - - + if (true) + return (Class) type.arrayType(); + else return (Class) Array.newInstance(type, 0).getClass(); } diff --git a/jOOQ/src/main/java/org/jooq/impl/Interpreter.java b/jOOQ/src/main/java/org/jooq/impl/Interpreter.java index 9d7436f294..1fdb71f356 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Interpreter.java +++ b/jOOQ/src/main/java/org/jooq/impl/Interpreter.java @@ -176,58 +176,58 @@ final class Interpreter { if (log.isDebugEnabled()) log.debug(query); - if (query instanceof CreateSchemaImpl) - accept0((CreateSchemaImpl) query); - else if (query instanceof AlterSchemaImpl) - accept0((AlterSchemaImpl) query); - else if (query instanceof DropSchemaImpl) - accept0((DropSchemaImpl) query); + if (query instanceof CreateSchemaImpl q) + accept0(q); + else if (query instanceof AlterSchemaImpl q) + accept0(q); + else if (query instanceof DropSchemaImpl q) + accept0(q); - else if (query instanceof CreateTableImpl) - accept0((CreateTableImpl) query); - else if (query instanceof AlterTableImpl) - accept0((AlterTableImpl) query); - else if (query instanceof DropTableImpl) - accept0((DropTableImpl) query); - else if (query instanceof TruncateImpl) - accept0((TruncateImpl) query); + else if (query instanceof CreateTableImpl q) + accept0(q); + else if (query instanceof AlterTableImpl q) + accept0(q); + else if (query instanceof DropTableImpl q) + accept0(q); + else if (query instanceof TruncateImpl q) + accept0(q); - else if (query instanceof CreateViewImpl) - accept0((CreateViewImpl) query); - else if (query instanceof AlterViewImpl) - accept0((AlterViewImpl) query); - else if (query instanceof DropViewImpl) - accept0((DropViewImpl) query); + else if (query instanceof CreateViewImpl q) + accept0(q); + else if (query instanceof AlterViewImpl q) + accept0(q); + else if (query instanceof DropViewImpl q) + accept0(q); - else if (query instanceof CreateSequenceImpl) - accept0((CreateSequenceImpl) query); - else if (query instanceof AlterSequenceImpl) - accept0((AlterSequenceImpl) query); - else if (query instanceof DropSequenceImpl) - accept0((DropSequenceImpl) query); + else if (query instanceof CreateSequenceImpl q) + accept0(q); + else if (query instanceof AlterSequenceImpl q) + accept0(q); + else if (query instanceof DropSequenceImpl q) + accept0(q); - else if (query instanceof CreateIndexImpl) - accept0((CreateIndexImpl) query); - else if (query instanceof AlterIndexImpl) - accept0((AlterIndexImpl) query); - else if (query instanceof DropIndexImpl) - accept0((DropIndexImpl) query); + else if (query instanceof CreateIndexImpl q) + accept0(q); + else if (query instanceof AlterIndexImpl q) + accept0(q); + else if (query instanceof DropIndexImpl q) + accept0(q); - else if (query instanceof CreateDomainImpl) - accept0((CreateDomainImpl) query); - else if (query instanceof AlterDomainImpl) - accept0((AlterDomainImpl) query); - else if (query instanceof DropDomainImpl) - accept0((DropDomainImpl) query); + else if (query instanceof CreateDomainImpl q) + accept0(q); + else if (query instanceof AlterDomainImpl q) + accept0(q); + else if (query instanceof DropDomainImpl q) + accept0(q); - else if (query instanceof CommentOnImpl) - accept0((CommentOnImpl) query); + else if (query instanceof CommentOnImpl q) + accept0(q); // TODO: Add support for catalogs - // else if (query instanceof SetCatalog) - // accept0((SetCatalog) query); - else if (query instanceof SetSchema) - accept0((SetSchema) query); + // else if (query instanceof SetCatalog q) + // accept0(q); + else if (query instanceof SetSchema q) + accept0(q); // The interpreter cannot handle DML statements. We're ignoring these for now. else if (query instanceof Select) @@ -241,8 +241,8 @@ final class Interpreter { else if (query instanceof Merge) ; - else if (query instanceof SetCommand) - accept0((SetCommand) query); + else if (query instanceof SetCommand q) + accept0(q); // [#12538] E.g. if comments are retained, or SET commands are ignored else if (query instanceof IgnoreQuery) @@ -456,8 +456,8 @@ final class Interpreter { MutableKey key = it2.next(); if (fields == null || anyMatch(key.fields, t1 -> fields.contains(t1))) { - if (key instanceof MutableUniqueKey) - cascade((MutableUniqueKey) key, fields, check ? RESTRICT : CASCADE); + if (key instanceof MutableUniqueKey k) + cascade(k, fields, check ? RESTRICT : CASCADE); if (!check) it2.remove(); @@ -526,10 +526,10 @@ final class Interpreter { } else { for (TableElement fc : query.$add()) - if (fc instanceof Field) - addField(existing, Integer.MAX_VALUE, (UnqualifiedName) fc.getUnqualifiedName(), ((Field) fc).getDataType()); - else if (fc instanceof ConstraintImpl) - addConstraint(query, (ConstraintImpl) fc, existing); + if (fc instanceof Field f) + addField(existing, Integer.MAX_VALUE, (UnqualifiedName) fc.getUnqualifiedName(), f.getDataType()); + else if (fc instanceof ConstraintImpl c) + addConstraint(query, c, existing); else throw unsupportedQuery(query); } @@ -716,8 +716,8 @@ final class Interpreter { public Field next() { TableElement next = it.next(); - if (next instanceof Field) - return (Field) next; + if (next instanceof Field f) + return f; else throw unsupportedQuery(query); } diff --git a/jOOQ/src/main/java/org/jooq/impl/IsDistinctFrom.java b/jOOQ/src/main/java/org/jooq/impl/IsDistinctFrom.java index e103d25640..7247175d26 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IsDistinctFrom.java +++ b/jOOQ/src/main/java/org/jooq/impl/IsDistinctFrom.java @@ -181,7 +181,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.IsDistinctFrom) { QOM.IsDistinctFrom o = (QOM.IsDistinctFrom) that; + if (that instanceof QOM.IsDistinctFrom o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/IsDocument.java b/jOOQ/src/main/java/org/jooq/impl/IsDocument.java index 8c9c0a403f..e19a9f0b3c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IsDocument.java +++ b/jOOQ/src/main/java/org/jooq/impl/IsDocument.java @@ -134,7 +134,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.IsDocument) { QOM.IsDocument o = (QOM.IsDocument) that; + if (that instanceof QOM.IsDocument o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/IsJson.java b/jOOQ/src/main/java/org/jooq/impl/IsJson.java index 9650d275ae..57109fd6dc 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IsJson.java +++ b/jOOQ/src/main/java/org/jooq/impl/IsJson.java @@ -146,7 +146,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.IsJson) { QOM.IsJson o = (QOM.IsJson) that; + if (that instanceof QOM.IsJson o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/IsNotDistinctFrom.java b/jOOQ/src/main/java/org/jooq/impl/IsNotDistinctFrom.java index 5c49f97041..f90c4196db 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IsNotDistinctFrom.java +++ b/jOOQ/src/main/java/org/jooq/impl/IsNotDistinctFrom.java @@ -175,7 +175,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.IsNotDistinctFrom) { QOM.IsNotDistinctFrom o = (QOM.IsNotDistinctFrom) that; + if (that instanceof QOM.IsNotDistinctFrom o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/IsNotDocument.java b/jOOQ/src/main/java/org/jooq/impl/IsNotDocument.java index cc291cc758..22a7d137cf 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IsNotDocument.java +++ b/jOOQ/src/main/java/org/jooq/impl/IsNotDocument.java @@ -134,7 +134,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.IsNotDocument) { QOM.IsNotDocument o = (QOM.IsNotDocument) that; + if (that instanceof QOM.IsNotDocument o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/IsNotJson.java b/jOOQ/src/main/java/org/jooq/impl/IsNotJson.java index a0565d877b..e4f22ce487 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IsNotJson.java +++ b/jOOQ/src/main/java/org/jooq/impl/IsNotJson.java @@ -146,7 +146,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.IsNotJson) { QOM.IsNotJson o = (QOM.IsNotJson) that; + if (that instanceof QOM.IsNotJson o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/IsNotNull.java b/jOOQ/src/main/java/org/jooq/impl/IsNotNull.java index c5a760c329..4e99934b0d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IsNotNull.java +++ b/jOOQ/src/main/java/org/jooq/impl/IsNotNull.java @@ -148,7 +148,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.IsNotNull) { QOM.IsNotNull o = (QOM.IsNotNull) that; + if (that instanceof QOM.IsNotNull o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/IsNull.java b/jOOQ/src/main/java/org/jooq/impl/IsNull.java index b5fa879efa..b6dcc775f3 100644 --- a/jOOQ/src/main/java/org/jooq/impl/IsNull.java +++ b/jOOQ/src/main/java/org/jooq/impl/IsNull.java @@ -148,7 +148,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.IsNull) { QOM.IsNull o = (QOM.IsNull) that; + if (that instanceof QOM.IsNull o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/JSONArray.java b/jOOQ/src/main/java/org/jooq/impl/JSONArray.java index a17a4fbbeb..9d26264e84 100644 --- a/jOOQ/src/main/java/org/jooq/impl/JSONArray.java +++ b/jOOQ/src/main/java/org/jooq/impl/JSONArray.java @@ -323,7 +323,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.JSONArray) { QOM.JSONArray o = (QOM.JSONArray) that; + if (that instanceof QOM.JSONArray o) { return StringUtils.equals($type(), o.$type()) && StringUtils.equals($fields(), o.$fields()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/JSONEntryImpl.java b/jOOQ/src/main/java/org/jooq/impl/JSONEntryImpl.java index 9e67929196..2c217428ce 100644 --- a/jOOQ/src/main/java/org/jooq/impl/JSONEntryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/JSONEntryImpl.java @@ -310,15 +310,15 @@ final class JSONEntryImpl extends AbstractQueryPart implements JSONEntry, } static final boolean isType(DataType t, Class type) { - if (t instanceof ConvertedDataType) - t = ((ConvertedDataType) t).delegate(); + if (t instanceof ConvertedDataType c) + t = c.delegate(); return t.getType() == type; } static final boolean isJSON(Context ctx, DataType type) { - DataType t = type instanceof ConvertedDataType - ? ((ConvertedDataType) type).delegate() + DataType t = type instanceof ConvertedDataType c + ? c.delegate() : type; return t.isJSON() @@ -333,7 +333,7 @@ final class JSONEntryImpl extends AbstractQueryPart implements JSONEntry, } static final Field booleanValAsVarchar(Field field) { - return field instanceof Val ? ((Val) field).convertTo0(VARCHAR) : field; + return field instanceof Val v ? v.convertTo0(VARCHAR) : field; } static final Field jsonMerge(Scope scope, String empty, Field... fields) { diff --git a/jOOQ/src/main/java/org/jooq/impl/JSONObject.java b/jOOQ/src/main/java/org/jooq/impl/JSONObject.java index 5b1e6a60cb..8b07ca58e3 100644 --- a/jOOQ/src/main/java/org/jooq/impl/JSONObject.java +++ b/jOOQ/src/main/java/org/jooq/impl/JSONObject.java @@ -334,7 +334,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.JSONObject) { QOM.JSONObject o = (QOM.JSONObject) that; + if (that instanceof QOM.JSONObject o) { return StringUtils.equals($type(), o.$type()) && StringUtils.equals($entries(), o.$entries()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/LTrim.java b/jOOQ/src/main/java/org/jooq/impl/LTrim.java index c24e5d4284..dadae2f533 100644 --- a/jOOQ/src/main/java/org/jooq/impl/LTrim.java +++ b/jOOQ/src/main/java/org/jooq/impl/LTrim.java @@ -214,7 +214,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Ltrim) { QOM.Ltrim o = (QOM.Ltrim) that; + if (that instanceof QOM.Ltrim o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($characters(), o.$characters()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Le.java b/jOOQ/src/main/java/org/jooq/impl/Le.java index a230e3b862..91689298d2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Le.java +++ b/jOOQ/src/main/java/org/jooq/impl/Le.java @@ -153,7 +153,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Le) { QOM.Le o = (QOM.Le) that; + if (that instanceof QOM.Le o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Left.java b/jOOQ/src/main/java/org/jooq/impl/Left.java index e7b4baf348..2bf16219b9 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Left.java +++ b/jOOQ/src/main/java/org/jooq/impl/Left.java @@ -196,7 +196,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Left) { QOM.Left o = (QOM.Left) that; + if (that instanceof QOM.Left o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($length(), o.$length()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Like.java b/jOOQ/src/main/java/org/jooq/impl/Like.java index 281c56bc26..deca1d382b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Like.java +++ b/jOOQ/src/main/java/org/jooq/impl/Like.java @@ -269,7 +269,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Like) { QOM.Like o = (QOM.Like) that; + if (that instanceof QOM.Like o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($pattern(), o.$pattern()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/LikeIgnoreCase.java b/jOOQ/src/main/java/org/jooq/impl/LikeIgnoreCase.java index 9783ac0cc3..1a5d6a288f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/LikeIgnoreCase.java +++ b/jOOQ/src/main/java/org/jooq/impl/LikeIgnoreCase.java @@ -182,7 +182,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.LikeIgnoreCase) { QOM.LikeIgnoreCase o = (QOM.LikeIgnoreCase) that; + if (that instanceof QOM.LikeIgnoreCase o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($pattern(), o.$pattern()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/Limit.java b/jOOQ/src/main/java/org/jooq/impl/Limit.java index 5d74dbea9d..15f78f5062 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Limit.java +++ b/jOOQ/src/main/java/org/jooq/impl/Limit.java @@ -469,8 +469,8 @@ final class Limit extends AbstractQueryPart implements UTransient { final Long getLimit() { Field l = limit != null ? limit : limitOrMax; - if (l instanceof Param) - return Convert.convert(((Param) l).getValue(), long.class); + if (l instanceof Param p) + return Convert.convert(p.getValue(), long.class); else return Convert.convert(MAX.getValue(), long.class); } diff --git a/jOOQ/src/main/java/org/jooq/impl/Ln.java b/jOOQ/src/main/java/org/jooq/impl/Ln.java index 8a4ea390fa..2f543b1abd 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Ln.java +++ b/jOOQ/src/main/java/org/jooq/impl/Ln.java @@ -207,7 +207,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Ln) { QOM.Ln o = (QOM.Ln) that; + if (that instanceof QOM.Ln o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Log.java b/jOOQ/src/main/java/org/jooq/impl/Log.java index 1685aea4cf..f43a7b390f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Log.java +++ b/jOOQ/src/main/java/org/jooq/impl/Log.java @@ -215,7 +215,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Log) { QOM.Log o = (QOM.Log) that; + if (that instanceof QOM.Log o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($base(), o.$base()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Log10.java b/jOOQ/src/main/java/org/jooq/impl/Log10.java index 982a141224..0face1c749 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Log10.java +++ b/jOOQ/src/main/java/org/jooq/impl/Log10.java @@ -215,7 +215,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Log10) { QOM.Log10 o = (QOM.Log10) that; + if (that instanceof QOM.Log10 o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Lower.java b/jOOQ/src/main/java/org/jooq/impl/Lower.java index 7db8b54305..0dd08b5bfb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Lower.java +++ b/jOOQ/src/main/java/org/jooq/impl/Lower.java @@ -171,7 +171,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Lower) { QOM.Lower o = (QOM.Lower) that; + if (that instanceof QOM.Lower o) { return StringUtils.equals($string(), o.$string()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Lpad.java b/jOOQ/src/main/java/org/jooq/impl/Lpad.java index 7c42211c5e..986d238613 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Lpad.java +++ b/jOOQ/src/main/java/org/jooq/impl/Lpad.java @@ -235,7 +235,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Lpad) { QOM.Lpad o = (QOM.Lpad) that; + if (that instanceof QOM.Lpad o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($length(), o.$length()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/Lt.java b/jOOQ/src/main/java/org/jooq/impl/Lt.java index 1989a3012a..e65693887e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Lt.java +++ b/jOOQ/src/main/java/org/jooq/impl/Lt.java @@ -153,7 +153,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Lt) { QOM.Lt o = (QOM.Lt) that; + if (that instanceof QOM.Lt o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/MD5.java b/jOOQ/src/main/java/org/jooq/impl/MD5.java index d021730d2e..5c874bd796 100644 --- a/jOOQ/src/main/java/org/jooq/impl/MD5.java +++ b/jOOQ/src/main/java/org/jooq/impl/MD5.java @@ -190,7 +190,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Md5) { QOM.Md5 o = (QOM.Md5) that; + if (that instanceof QOM.Md5 o) { return StringUtils.equals($string(), o.$string()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Max.java b/jOOQ/src/main/java/org/jooq/impl/Max.java index 6fbc6ee688..a9b99283ba 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Max.java +++ b/jOOQ/src/main/java/org/jooq/impl/Max.java @@ -146,7 +146,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Max) { QOM.Max o = (QOM.Max) that; + if (that instanceof QOM.Max o) { return StringUtils.equals($field(), o.$field()) && $distinct() == o.$distinct() diff --git a/jOOQ/src/main/java/org/jooq/impl/Median.java b/jOOQ/src/main/java/org/jooq/impl/Median.java index 147dc515e0..62f3af7cca 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Median.java +++ b/jOOQ/src/main/java/org/jooq/impl/Median.java @@ -149,7 +149,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Median) { QOM.Median o = (QOM.Median) that; + if (that instanceof QOM.Median o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java b/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java index c17f7ac78d..8f038c6aab 100644 --- a/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java @@ -1629,8 +1629,8 @@ implements for (Entry e : m.updateMap.entrySet()) { FieldOrRowOrSelect exp = update.updateMap.get(e.getKey()); - if (exp instanceof CaseConditionStepImpl) - ((CaseConditionStepImpl) exp).when(negate.and(condition), e.getValue()); + if (exp instanceof CaseConditionStepImpl c) + c.when(negate.and(condition), e.getValue()); // [#10523] [#13325] TODO: ClassCastException when we're using Row here, once supported else diff --git a/jOOQ/src/main/java/org/jooq/impl/MetaImpl.java b/jOOQ/src/main/java/org/jooq/impl/MetaImpl.java index 929b7df82a..2dda1a12dd 100644 --- a/jOOQ/src/main/java/org/jooq/impl/MetaImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/MetaImpl.java @@ -488,17 +488,17 @@ final class MetaImpl extends AbstractMeta { ukCache = new LinkedHashMap<>(); dsl().resultQuery( - ("" + - "select m.tbl_name, m.sql\n" + - "from sqlite_master as m\n" + - "where m.type = 'table'\n" + - "and exists (\n" + - " select 1\n" + - " from pragma_index_list(m.name) as il\n" + - " where il.origin = 'u'\n" + - ")\n" + - "order by m.tbl_name\n" + - "") + """ + select m.tbl_name, m.sql + from sqlite_master as m + where m.type = 'table' + and exists ( + select 1 + from pragma_index_list(m.name) as il + where il.origin = 'u' + ) + order by m.tbl_name + """ ) .fetchMap(field("tbl_name", VARCHAR), field("sql", VARCHAR)) .forEach((table, sql) -> { diff --git a/jOOQ/src/main/java/org/jooq/impl/Min.java b/jOOQ/src/main/java/org/jooq/impl/Min.java index 1e7f61d6a7..fb36fc60c2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Min.java +++ b/jOOQ/src/main/java/org/jooq/impl/Min.java @@ -146,7 +146,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Min) { QOM.Min o = (QOM.Min) that; + if (that instanceof QOM.Min o) { return StringUtils.equals($field(), o.$field()) && $distinct() == o.$distinct() diff --git a/jOOQ/src/main/java/org/jooq/impl/Mod.java b/jOOQ/src/main/java/org/jooq/impl/Mod.java index a6c8ac5720..6ce20456a6 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Mod.java +++ b/jOOQ/src/main/java/org/jooq/impl/Mod.java @@ -189,7 +189,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Mod) { QOM.Mod o = (QOM.Mod) that; + if (that instanceof QOM.Mod o) { return StringUtils.equals($dividend(), o.$dividend()) && StringUtils.equals($divisor(), o.$divisor()) diff --git a/jOOQ/src/main/java/org/jooq/impl/ModeDeferred.java b/jOOQ/src/main/java/org/jooq/impl/ModeDeferred.java index bcb26453a9..3de3b4bc58 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ModeDeferred.java +++ b/jOOQ/src/main/java/org/jooq/impl/ModeDeferred.java @@ -53,10 +53,10 @@ final class ModeDeferred implements OrderedAggregateFunctionOfDeferredType { @SuppressWarnings("unchecked") @Override public final AggregateFilterStep withinGroupOrderBy(OrderField field) { - DataType type = field instanceof SortFieldImpl - ? ((SortFieldImpl) field).getField().getDataType() - : field instanceof AbstractField - ? ((AbstractField) field).getDataType() + DataType type = field instanceof SortFieldImpl s + ? s.getField().getDataType() + : field instanceof AbstractField f + ? f.getDataType() : (DataType) SQLDataType.NUMERIC; return new DefaultAggregateFunction<>(N_MODE, type).withinGroupOrderBy(field); diff --git a/jOOQ/src/main/java/org/jooq/impl/Mul.java b/jOOQ/src/main/java/org/jooq/impl/Mul.java index 42011dcaa2..6dfef58540 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Mul.java +++ b/jOOQ/src/main/java/org/jooq/impl/Mul.java @@ -176,7 +176,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Mul) { QOM.Mul o = (QOM.Mul) that; + if (that instanceof QOM.Mul o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Multiset.java b/jOOQ/src/main/java/org/jooq/impl/Multiset.java index 199289b169..9ccb75168e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Multiset.java +++ b/jOOQ/src/main/java/org/jooq/impl/Multiset.java @@ -124,7 +124,7 @@ final class Multiset extends AbstractField> implemen final Select select; Multiset(TableLike table) { - this(table, table instanceof Select ? (Select) table : selectFrom(table)); + this(table, table instanceof Select s ? s : selectFrom(table)); } @SuppressWarnings("unchecked") diff --git a/jOOQ/src/main/java/org/jooq/impl/MultisetDataType.java b/jOOQ/src/main/java/org/jooq/impl/MultisetDataType.java index 54137d3fc0..4f267e16e1 100644 --- a/jOOQ/src/main/java/org/jooq/impl/MultisetDataType.java +++ b/jOOQ/src/main/java/org/jooq/impl/MultisetDataType.java @@ -156,7 +156,7 @@ final class MultisetDataType extends DefaultDataType return (Result) object; // [#3884] TODO: Move this logic into JSONReader to make it more generally useful - else if (object instanceof List) { List l = (List) object; + else if (object instanceof List l) { ResultImpl result = new ResultImpl<>(CONFIG, row); for (Object record : l) diff --git a/jOOQ/src/main/java/org/jooq/impl/Ne.java b/jOOQ/src/main/java/org/jooq/impl/Ne.java index 0a3e4184ff..308ba0c68c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Ne.java +++ b/jOOQ/src/main/java/org/jooq/impl/Ne.java @@ -153,7 +153,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Ne) { QOM.Ne o = (QOM.Ne) that; + if (that instanceof QOM.Ne o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Not.java b/jOOQ/src/main/java/org/jooq/impl/Not.java index 1c324e23d7..82bc5f63dd 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Not.java +++ b/jOOQ/src/main/java/org/jooq/impl/Not.java @@ -154,7 +154,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Not) { QOM.Not o = (QOM.Not) that; + if (that instanceof QOM.Not o) { return StringUtils.equals($condition(), o.$condition()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/NotField.java b/jOOQ/src/main/java/org/jooq/impl/NotField.java index 671c25c938..4f409fc162 100644 --- a/jOOQ/src/main/java/org/jooq/impl/NotField.java +++ b/jOOQ/src/main/java/org/jooq/impl/NotField.java @@ -157,7 +157,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.NotField) { QOM.NotField o = (QOM.NotField) that; + if (that instanceof QOM.NotField o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/NotIn.java b/jOOQ/src/main/java/org/jooq/impl/NotIn.java index 8ea6a99b94..93064abe6c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/NotIn.java +++ b/jOOQ/src/main/java/org/jooq/impl/NotIn.java @@ -156,7 +156,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.NotIn) { QOM.NotIn o = (QOM.NotIn) that; + if (that instanceof QOM.NotIn o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/NotLike.java b/jOOQ/src/main/java/org/jooq/impl/NotLike.java index 0661cc8365..f95e3fe6e0 100644 --- a/jOOQ/src/main/java/org/jooq/impl/NotLike.java +++ b/jOOQ/src/main/java/org/jooq/impl/NotLike.java @@ -183,7 +183,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.NotLike) { QOM.NotLike o = (QOM.NotLike) that; + if (that instanceof QOM.NotLike o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($pattern(), o.$pattern()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/NotLikeIgnoreCase.java b/jOOQ/src/main/java/org/jooq/impl/NotLikeIgnoreCase.java index 9b8c851d69..6633e8267b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/NotLikeIgnoreCase.java +++ b/jOOQ/src/main/java/org/jooq/impl/NotLikeIgnoreCase.java @@ -182,7 +182,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.NotLikeIgnoreCase) { QOM.NotLikeIgnoreCase o = (QOM.NotLikeIgnoreCase) that; + if (that instanceof QOM.NotLikeIgnoreCase o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($pattern(), o.$pattern()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/NotSimilarTo.java b/jOOQ/src/main/java/org/jooq/impl/NotSimilarTo.java index a52cadeda2..b8aadb3963 100644 --- a/jOOQ/src/main/java/org/jooq/impl/NotSimilarTo.java +++ b/jOOQ/src/main/java/org/jooq/impl/NotSimilarTo.java @@ -182,7 +182,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.NotSimilarTo) { QOM.NotSimilarTo o = (QOM.NotSimilarTo) that; + if (that instanceof QOM.NotSimilarTo o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($pattern(), o.$pattern()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/Nullif.java b/jOOQ/src/main/java/org/jooq/impl/Nullif.java index ce62572169..717813b797 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Nullif.java +++ b/jOOQ/src/main/java/org/jooq/impl/Nullif.java @@ -197,7 +197,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Nullif) { QOM.Nullif o = (QOM.Nullif) that; + if (that instanceof QOM.Nullif o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($other(), o.$other()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Nvl.java b/jOOQ/src/main/java/org/jooq/impl/Nvl.java index de469140d7..5e4128200c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Nvl.java +++ b/jOOQ/src/main/java/org/jooq/impl/Nvl.java @@ -269,7 +269,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Nvl) { QOM.Nvl o = (QOM.Nvl) that; + if (that instanceof QOM.Nvl o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($defaultValue(), o.$defaultValue()) diff --git a/jOOQ/src/main/java/org/jooq/impl/OctetLength.java b/jOOQ/src/main/java/org/jooq/impl/OctetLength.java index f0839daf0f..c5d81ca59e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/OctetLength.java +++ b/jOOQ/src/main/java/org/jooq/impl/OctetLength.java @@ -187,7 +187,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.OctetLength) { QOM.OctetLength o = (QOM.OctetLength) that; + if (that instanceof QOM.OctetLength o) { return StringUtils.equals($string(), o.$string()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Or.java b/jOOQ/src/main/java/org/jooq/impl/Or.java index 4b8e60238c..d76f0e876c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Or.java +++ b/jOOQ/src/main/java/org/jooq/impl/Or.java @@ -181,7 +181,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Or) { QOM.Or o = (QOM.Or) that; + if (that instanceof QOM.Or o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Overlay.java b/jOOQ/src/main/java/org/jooq/impl/Overlay.java index aa1cc54e2a..e744c255ac 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Overlay.java +++ b/jOOQ/src/main/java/org/jooq/impl/Overlay.java @@ -262,7 +262,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Overlay) { QOM.Overlay o = (QOM.Overlay) that; + if (that instanceof QOM.Overlay o) { return StringUtils.equals($in(), o.$in()) && StringUtils.equals($placing(), o.$placing()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/ParamCollector.java b/jOOQ/src/main/java/org/jooq/impl/ParamCollector.java index bbab617290..29fdd8b1f7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ParamCollector.java +++ b/jOOQ/src/main/java/org/jooq/impl/ParamCollector.java @@ -75,7 +75,7 @@ final class ParamCollector extends AbstractBindContext { @Override protected final void bindInternal(QueryPartInternal internal) { - if (internal instanceof Param) { Param param = (Param) internal; + if (internal instanceof Param param) { // [#3131] Inlined parameters should not be returned in some contexts if (includeInlinedParams || !param.isInline()) { diff --git a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java index 1f6e88df6f..40539fb46c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java @@ -4615,7 +4615,7 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { return storageStep; } - private static final /* record */ class ParseInlineConstraints { private final DataType type; private final Comment fieldComment; private final boolean primary; private final boolean identity; private final boolean readonly; public ParseInlineConstraints(DataType type, Comment fieldComment, boolean primary, boolean identity, boolean readonly) { this.type = type; this.fieldComment = fieldComment; this.primary = primary; this.identity = identity; this.readonly = readonly; } public DataType type() { return type; } public Comment fieldComment() { return fieldComment; } public boolean primary() { return primary; } public boolean identity() { return identity; } public boolean readonly() { return readonly; } @Override public boolean equals(Object o) { if (!(o instanceof ParseInlineConstraints)) return false; ParseInlineConstraints other = (ParseInlineConstraints) o; if (!java.util.Objects.equals(this.type, other.type)) return false; if (!java.util.Objects.equals(this.fieldComment, other.fieldComment)) return false; if (!java.util.Objects.equals(this.primary, other.primary)) return false; if (!java.util.Objects.equals(this.identity, other.identity)) return false; if (!java.util.Objects.equals(this.readonly, other.readonly)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.type, this.fieldComment, this.primary, this.identity, this.readonly); } @Override public String toString() { return new StringBuilder("ParseInlineConstraints[").append("type=").append(this.type).append(", fieldComment=").append(this.fieldComment).append(", primary=").append(this.primary).append(", identity=").append(this.identity).append(", readonly=").append(this.readonly).append("]").toString(); } } + private static final record ParseInlineConstraints(DataType type, Comment fieldComment, boolean primary, boolean identity, boolean readonly) {} private final ParseInlineConstraints parseInlineConstraints( Name fieldName, @@ -5354,8 +5354,8 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { } if (list.size() == 1) - if (list.get(0) instanceof Constraint) - return s1.add((Constraint) list.get(0)); + if (list.get(0) instanceof Constraint c) + return s1.add(c); else return parseAlterTableAddFieldFirstBeforeLast(s1.add((Field) list.get(0))); else @@ -6479,7 +6479,7 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { : ((Field) left).isDocument(); not = parseKeywordIf("DISTINCT FROM") == not; - if (left instanceof Field) { Field f = (Field) left; + if (left instanceof Field f) { Field right = toField(parseConcat()); return not ? f.isNotDistinctFrom(right) : f.isDistinctFrom(right); } @@ -6725,8 +6725,8 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { private final Table t(TableLike table, boolean dummyAlias) { return - table instanceof Table - ? (Table) table + table instanceof Table t + ? t : dummyAlias ? table.asTable("x") : table.asTable(); @@ -6748,12 +6748,12 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { Query query = parseQuery(false, false); parse(')'); - if (query instanceof Merge) - result = oldTable((Merge) query); - else if (query instanceof Update) - result = oldTable((Update) query); - else if (query instanceof Delete) - result = oldTable((Delete) query); + if (query instanceof Merge q) + result = oldTable(q); + else if (query instanceof Update q) + result = oldTable(q); + else if (query instanceof Delete q) + result = oldTable(q); else throw expected("UPDATE", "DELETE", "MERGE"); } @@ -6762,12 +6762,12 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { Query query = parseQuery(false, false); parse(')'); - if (query instanceof Merge) - result = newTable((Merge) query); - else if (query instanceof Insert) - result = newTable((Insert) query); - else if (query instanceof Update) - result = newTable((Update) query); + if (query instanceof Merge q) + result = newTable(q); + else if (query instanceof Insert q) + result = newTable(q); + else if (query instanceof Update q) + result = newTable(q); else throw expected("INSERT", "UPDATE", "MERGE"); } @@ -6776,12 +6776,12 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { Query query = parseQuery(false, false); parse(')'); - if (query instanceof Merge) - result = finalTable((Merge) query); - else if (query instanceof Insert) - result = finalTable((Insert) query); - else if (query instanceof Update) - result = finalTable((Update) query); + if (query instanceof Merge q) + result = finalTable(q); + else if (query instanceof Insert q) + result = finalTable(q); + else if (query instanceof Update q) + result = finalTable(q); else throw expected("INSERT", "UPDATE", "MERGE"); } @@ -7506,9 +7506,9 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { private final Condition toCondition(QueryPart part) { if (part == null) return null; - else if (part instanceof Condition) - return (Condition) part; - else if (part instanceof Field) { Field f = (Field) part; + else if (part instanceof Condition c) + return c; + else if (part instanceof Field f) { DataType dataType = f.getDataType(); Class type = dataType.getType(); @@ -7532,10 +7532,10 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { private final FieldOrRow toFieldOrRow(QueryPart part) { if (part == null) return null; - else if (part instanceof Field) - return (Field) part; - else if (part instanceof Row) - return (Row) part; + else if (part instanceof Field f) + return f; + else if (part instanceof Row r) + return r; else throw expected("Field or row"); } @@ -7543,8 +7543,8 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { private final Field toField(QueryPart part) { if (part == null) return null; - else if (part instanceof Field) - return (Field) part; + else if (part instanceof Field f) + return f; else throw expected("Field"); } @@ -8907,7 +8907,7 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { r = parseFieldOrRow(); List> list = null; - if (r instanceof Field) { Field f = (Field) r; + if (r instanceof Field f) { while (parseIf(',')) { if (list == null) { list = new ArrayList<>(); @@ -11057,10 +11057,10 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { if (!basic && parseKeywordIf("OVER")) { Object nameOrSpecification = parseWindowNameOrSpecification(filter != null); - if (nameOrSpecification instanceof Name) - result = over.over((Name) nameOrSpecification); - else if (nameOrSpecification instanceof WindowSpecification) - result = over.over((WindowSpecification) nameOrSpecification); + if (nameOrSpecification instanceof Name n) + result = over.over(n); + else if (nameOrSpecification instanceof WindowSpecification w) + result = over.over(w); else result = over.over(); } @@ -11273,10 +11273,10 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { parseKeyword("OVER"); Object nameOrSpecification = parseWindowNameOrSpecification(true); - return nameOrSpecification instanceof Name - ? s3.over((Name) nameOrSpecification) - : nameOrSpecification instanceof WindowSpecification - ? s3.over((WindowSpecification) nameOrSpecification) + return nameOrSpecification instanceof Name n + ? s3.over(n) + : nameOrSpecification instanceof WindowSpecification w + ? s3.over(w) : s3.over(); } @@ -12501,8 +12501,8 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { // [#11074] Bindings can be Param or even Field types Object binding = nextBinding(); - if (binding instanceof Field) - return (Field) binding; + if (binding instanceof Field f) + return f; Param param = DSL.param(paramName, binding); @@ -14344,9 +14344,9 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { // [#11054] Use a VisitListener to find actual Params in the expression tree, // which may have more refined DataTypes attached to them, from context dsl.configuration().deriveAppending(onVisitStart(ctx -> { - if (ctx.queryPart() instanceof Param) - if (!params.containsKey(((Param) ctx.queryPart()).getParamName())) - params.put(((Param) ctx.queryPart()).getParamName(), (Param) ctx.queryPart()); + if (ctx.queryPart() instanceof Param p) + if (!params.containsKey(p.getParamName())) + params.put(p.getParamName(), p); })).dsl().render(result); for (String name : bindParams.keySet()) @@ -14504,7 +14504,7 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { for (Value> t : tables) { Value> f; - if (t.value() instanceof JoinTable) { JoinTable j = (JoinTable) t.value(); + if (t.value() instanceof JoinTable j) { found = resolveInTableScope( asList( new Value<>(t.scopeLevel(), j.lhs), diff --git a/jOOQ/src/main/java/org/jooq/impl/Pi.java b/jOOQ/src/main/java/org/jooq/impl/Pi.java index 73aaeafa4c..3c39a52e0e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Pi.java +++ b/jOOQ/src/main/java/org/jooq/impl/Pi.java @@ -163,7 +163,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Pi) { QOM.Pi o = (QOM.Pi) that; + if (that instanceof QOM.Pi o) { return true; } else diff --git a/jOOQ/src/main/java/org/jooq/impl/Position.java b/jOOQ/src/main/java/org/jooq/impl/Position.java index b2755e2d79..58a8cca85c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Position.java +++ b/jOOQ/src/main/java/org/jooq/impl/Position.java @@ -278,7 +278,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Position) { QOM.Position o = (QOM.Position) that; + if (that instanceof QOM.Position o) { return StringUtils.equals($in(), o.$in()) && StringUtils.equals($search(), o.$search()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/Power.java b/jOOQ/src/main/java/org/jooq/impl/Power.java index 8e2fbfac63..ab215b05f7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Power.java +++ b/jOOQ/src/main/java/org/jooq/impl/Power.java @@ -179,7 +179,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Power) { QOM.Power o = (QOM.Power) that; + if (that instanceof QOM.Power o) { return StringUtils.equals($base(), o.$base()) && StringUtils.equals($exponent(), o.$exponent()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Product.java b/jOOQ/src/main/java/org/jooq/impl/Product.java index bd4f72d9f8..01bed820e6 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Product.java +++ b/jOOQ/src/main/java/org/jooq/impl/Product.java @@ -228,7 +228,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Product) { QOM.Product o = (QOM.Product) that; + if (that instanceof QOM.Product o) { return StringUtils.equals($field(), o.$field()) && $distinct() == o.$distinct() diff --git a/jOOQ/src/main/java/org/jooq/impl/QOM.java b/jOOQ/src/main/java/org/jooq/impl/QOM.java index f928db432a..487edda9b8 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QOM.java +++ b/jOOQ/src/main/java/org/jooq/impl/QOM.java @@ -219,24 +219,24 @@ public final class QOM { /** * An unmodifiable {@link Collection} of {@link QueryPart} elements. */ - public /* sealed */ interface UnmodifiableCollection + public sealed interface UnmodifiableCollection extends org.jooq.QueryPart, java.util.Collection - /* permits + permits UnmodifiableList, - QueryPartCollectionView */ + QueryPartCollectionView {} /** * An unmodifiable {@link List} of {@link QueryPart} elements. */ - public /* sealed */ interface UnmodifiableList + public sealed interface UnmodifiableList extends UnmodifiableCollection, java.util.List - /* permits - QueryPartListView */ + permits + QueryPartListView {} public /*sealed*/ interface With @@ -541,7 +541,7 @@ public final class QOM { // Can't seal these types yet because of https://bugs.eclipse.org/bugs/show_bug.cgi?id=577872 - public /* non-sealed */ interface EmptyGroupingSet + public non-sealed interface EmptyGroupingSet extends GroupField, UEmpty @@ -549,7 +549,7 @@ public final class QOM { org.jooq.impl.EmptyGroupingSet*/ {} - public /* non-sealed */ interface Rollup + public non-sealed interface Rollup extends GroupField, UOperator1, GroupField> @@ -557,7 +557,7 @@ public final class QOM { Rollup*/ {} - public /* non-sealed */ interface Cube + public non-sealed interface Cube extends GroupField, UOperator1, GroupField> @@ -565,7 +565,7 @@ public final class QOM { Cube*/ {} - public /* non-sealed */ interface GroupingSets + public non-sealed interface GroupingSets extends GroupField, UOperator1>, GroupField> @@ -6337,17 +6337,17 @@ public final class QOM { * used to render SQL, but unlike {@link UTransient} parts, can also appear * in user expression trees. */ - /* sealed */ interface UOpaque + sealed interface UOpaque extends UEmpty - /* permits + permits CustomField, CustomTable, CustomCondition, - CustomQueryPart */ + CustomQueryPart {} /** diff --git a/jOOQ/src/main/java/org/jooq/impl/QualifiedName.java b/jOOQ/src/main/java/org/jooq/impl/QualifiedName.java index ca0a544fd0..618b81ee25 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QualifiedName.java +++ b/jOOQ/src/main/java/org/jooq/impl/QualifiedName.java @@ -80,17 +80,17 @@ final class QualifiedName extends AbstractName { } private static final UnqualifiedName[] last(Name[] qualifiedName) { - if (qualifiedName instanceof UnqualifiedName[]) - return (UnqualifiedName[]) qualifiedName; + if (qualifiedName instanceof UnqualifiedName[] u) + return u; UnqualifiedName[] result = new UnqualifiedName[qualifiedName.length]; for (int i = 0; i < qualifiedName.length; i++) - if (qualifiedName[i] instanceof QualifiedName) { QualifiedName q = (QualifiedName) qualifiedName[i]; + if (qualifiedName[i] instanceof QualifiedName q) { result[i] = q.qualifiedName[q.qualifiedName.length - 1]; } - else if (qualifiedName[i] instanceof UnqualifiedName) - result[i] = (UnqualifiedName) qualifiedName[i]; + else if (qualifiedName[i] instanceof UnqualifiedName u) + result[i] = u; else result[i] = new UnqualifiedName(qualifiedName[i].last()); diff --git a/jOOQ/src/main/java/org/jooq/impl/QualifiedRowid.java b/jOOQ/src/main/java/org/jooq/impl/QualifiedRowid.java index 8ad9457880..421c25a949 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QualifiedRowid.java +++ b/jOOQ/src/main/java/org/jooq/impl/QualifiedRowid.java @@ -152,7 +152,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.QualifiedRowid) { QOM.QualifiedRowid o = (QOM.QualifiedRowid) that; + if (that instanceof QOM.QualifiedRowid o) { return StringUtils.equals($table(), o.$table()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/QueriesImpl.java b/jOOQ/src/main/java/org/jooq/impl/QueriesImpl.java index 76ac6dad4e..f57884aa54 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QueriesImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/QueriesImpl.java @@ -126,8 +126,8 @@ final class QueriesImpl extends AbstractAttachableQueryPart implements Queries { DSLContext ctx = c.dsl(); for (Query query : this) - if (query instanceof ResultQuery) - results.resultsOrRows.addAll(ctx.fetchMany((ResultQuery) query).resultsOrRows()); + if (query instanceof ResultQuery q) + results.resultsOrRows.addAll(ctx.fetchMany(q).resultsOrRows()); else results.resultsOrRows.add(new ResultOrRowsImpl(ctx.execute(query))); diff --git a/jOOQ/src/main/java/org/jooq/impl/QueryPartCollectionView.java b/jOOQ/src/main/java/org/jooq/impl/QueryPartCollectionView.java index 599022d7cb..6128b94283 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QueryPartCollectionView.java +++ b/jOOQ/src/main/java/org/jooq/impl/QueryPartCollectionView.java @@ -71,18 +71,18 @@ import org.jooq.impl.QOM.UnmodifiableCollection; * * @author Lukas Eder */ -/* sealed */ class QueryPartCollectionView +sealed class QueryPartCollectionView extends AbstractQueryPart implements UnmodifiableCollection, SimpleQueryPart, SeparatedQueryPart -/* permits +permits - QueryPartListView */ + QueryPartListView { final Collection wrapped; @@ -97,7 +97,7 @@ implements QueryPartCollectionView(Collection wrapped) { this.wrapped = wrapped != null ? wrapped : Collections.emptyList(); - if (wrapped instanceof QueryPartCollectionView) { QueryPartCollectionView v = (QueryPartCollectionView) wrapped; + if (wrapped instanceof QueryPartCollectionView v) { this.qualify = v.qualify; this.separator = v.separator; this.mapper = v.mapper; @@ -246,8 +246,8 @@ implements // declarations. Hence, it is currently safe to assume that // if (part instanceof Condition), then it must have been passed // as a subtype of Field and must be wrapped - if (part instanceof Condition) - ctx.visit((QueryPart) DSL.field((Condition) part)); + if (part instanceof Condition c) + ctx.visit((QueryPart) DSL.field(c)); else ctx.visit(part); } @@ -388,8 +388,8 @@ implements // Maintain List::equals and Set::equals contracts else if (that instanceof List && !(this instanceof List)) return false; - else if (that instanceof QueryPartCollectionView) - return wrapped.equals(((QueryPartCollectionView) that).wrapped); + else if (that instanceof QueryPartCollectionView q) + return wrapped.equals(q.wrapped); else return super.equals(that); } diff --git a/jOOQ/src/main/java/org/jooq/impl/QueryPartList.java b/jOOQ/src/main/java/org/jooq/impl/QueryPartList.java index 6059bd3204..8078938a66 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QueryPartList.java +++ b/jOOQ/src/main/java/org/jooq/impl/QueryPartList.java @@ -49,10 +49,10 @@ import org.jooq.QueryPart; /** * @author Lukas Eder */ -/* sealed */ class QueryPartList +sealed class QueryPartList extends QueryPartListView -/* permits +permits CommonTableExpressionList, GroupFieldList, SelectFieldList, @@ -60,7 +60,7 @@ extends TableList, TopLevelCte, WindowList, - QualifiedSelectFieldList */ + QualifiedSelectFieldList { QueryPartList() { diff --git a/jOOQ/src/main/java/org/jooq/impl/QueryPartListView.java b/jOOQ/src/main/java/org/jooq/impl/QueryPartListView.java index 39d2960b38..4e597f7e8b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QueryPartListView.java +++ b/jOOQ/src/main/java/org/jooq/impl/QueryPartListView.java @@ -55,13 +55,13 @@ import org.jooq.impl.QOM.UnmodifiableList; * * @author Lukas Eder */ -/* sealed */ class QueryPartListView +sealed class QueryPartListView extends QueryPartCollectionView implements UnmodifiableList -/* permits - QueryPartList */ +permits + QueryPartList { @SafeVarargs diff --git a/jOOQ/src/main/java/org/jooq/impl/R2DBC.java b/jOOQ/src/main/java/org/jooq/impl/R2DBC.java index ff93b015f3..d2f1f0cd28 100644 --- a/jOOQ/src/main/java/org/jooq/impl/R2DBC.java +++ b/jOOQ/src/main/java/org/jooq/impl/R2DBC.java @@ -752,8 +752,8 @@ final class R2DBC { try { Object result = queue.take(); - if (result instanceof Throwable) - throw new DataAccessException("Exception when blocking on publisher", (Throwable) result); + if (result instanceof Throwable t) + throw new DataAccessException("Exception when blocking on publisher", t); else if (result == complete) return null; else @@ -1172,7 +1172,7 @@ final class R2DBC { return new MockArray<>(c.dialect(), (Object[]) nullable(columnIndex, Object.class), Object[].class); } - private static final /* record */ class DefaultRow implements Row { private final Configuration c; private final Row r; public DefaultRow(Configuration c, Row r) { this.c = c; this.r = r; } public Configuration c() { return c; } public Row r() { return r; } @Override public boolean equals(Object o) { if (!(o instanceof DefaultRow)) return false; DefaultRow other = (DefaultRow) o; if (!java.util.Objects.equals(this.c, other.c)) return false; if (!java.util.Objects.equals(this.r, other.r)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.c, this.r); } @Override public String toString() { return new StringBuilder("DefaultRow[").append("c=").append(this.c).append(", r=").append(this.r).append("]").toString(); } + private static final record DefaultRow(Configuration c, Row r) implements Row { // --------------------------------------------------------------------- // 0.9.0.M1 API @@ -1230,7 +1230,7 @@ final class R2DBC { } } - static final /* record */ class R2DBCResultSetMetaData implements ResultSetMetaData { private final Configuration c; private final RowMetadata m; public R2DBCResultSetMetaData(Configuration c, RowMetadata m) { this.c = c; this.m = m; } public Configuration c() { return c; } public RowMetadata m() { return m; } @Override public boolean equals(Object o) { if (!(o instanceof R2DBCResultSetMetaData)) return false; R2DBCResultSetMetaData other = (R2DBCResultSetMetaData) o; if (!java.util.Objects.equals(this.c, other.c)) return false; if (!java.util.Objects.equals(this.m, other.m)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.c, this.m); } @Override public String toString() { return new StringBuilder("R2DBCResultSetMetaData[").append("c=").append(this.c).append(", m=").append(this.m).append("]").toString(); } + static final record R2DBCResultSetMetaData(Configuration c, RowMetadata m) implements ResultSetMetaData { private final ColumnMetadata meta(int column) { return m.getColumnMetadata(column - 1); diff --git a/jOOQ/src/main/java/org/jooq/impl/RTrim.java b/jOOQ/src/main/java/org/jooq/impl/RTrim.java index 2c6b3ed3bf..bd899f043d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RTrim.java +++ b/jOOQ/src/main/java/org/jooq/impl/RTrim.java @@ -214,7 +214,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Rtrim) { QOM.Rtrim o = (QOM.Rtrim) that; + if (that instanceof QOM.Rtrim o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($characters(), o.$characters()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Radians.java b/jOOQ/src/main/java/org/jooq/impl/Radians.java index 98618c1b9b..2d42890483 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Radians.java +++ b/jOOQ/src/main/java/org/jooq/impl/Radians.java @@ -211,7 +211,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Radians) { QOM.Radians o = (QOM.Radians) that; + if (that instanceof QOM.Radians o) { return StringUtils.equals($degrees(), o.$degrees()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Rand.java b/jOOQ/src/main/java/org/jooq/impl/Rand.java index 2fae6d169f..26a2ac69f9 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Rand.java +++ b/jOOQ/src/main/java/org/jooq/impl/Rand.java @@ -176,7 +176,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Rand) { QOM.Rand o = (QOM.Rand) that; + if (that instanceof QOM.Rand o) { return true; } else diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrAvgX.java b/jOOQ/src/main/java/org/jooq/impl/RegrAvgX.java index 35b98255df..f8730cd7c4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrAvgX.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrAvgX.java @@ -190,7 +190,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrAvgX) { QOM.RegrAvgX o = (QOM.RegrAvgX) that; + if (that instanceof QOM.RegrAvgX o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrAvgY.java b/jOOQ/src/main/java/org/jooq/impl/RegrAvgY.java index ae51e7af22..879d446480 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrAvgY.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrAvgY.java @@ -190,7 +190,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrAvgY) { QOM.RegrAvgY o = (QOM.RegrAvgY) that; + if (that instanceof QOM.RegrAvgY o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrCount.java b/jOOQ/src/main/java/org/jooq/impl/RegrCount.java index 9ffb2790f8..91e90e10a3 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrCount.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrCount.java @@ -176,7 +176,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrCount) { QOM.RegrCount o = (QOM.RegrCount) that; + if (that instanceof QOM.RegrCount o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrIntercept.java b/jOOQ/src/main/java/org/jooq/impl/RegrIntercept.java index 27aa5040e6..1392f63c09 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrIntercept.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrIntercept.java @@ -180,7 +180,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrIntercept) { QOM.RegrIntercept o = (QOM.RegrIntercept) that; + if (that instanceof QOM.RegrIntercept o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrR2.java b/jOOQ/src/main/java/org/jooq/impl/RegrR2.java index fdac55da50..06504121d9 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrR2.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrR2.java @@ -184,7 +184,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrR2) { QOM.RegrR2 o = (QOM.RegrR2) that; + if (that instanceof QOM.RegrR2 o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrSlope.java b/jOOQ/src/main/java/org/jooq/impl/RegrSlope.java index 5aec43a179..0b05234cd4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrSlope.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrSlope.java @@ -180,7 +180,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrSlope) { QOM.RegrSlope o = (QOM.RegrSlope) that; + if (that instanceof QOM.RegrSlope o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrSxx.java b/jOOQ/src/main/java/org/jooq/impl/RegrSxx.java index 933dbcf36f..536f1b0986 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrSxx.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrSxx.java @@ -190,7 +190,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrSxx) { QOM.RegrSxx o = (QOM.RegrSxx) that; + if (that instanceof QOM.RegrSxx o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrSxy.java b/jOOQ/src/main/java/org/jooq/impl/RegrSxy.java index 857e3963c8..c5286c7700 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrSxy.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrSxy.java @@ -194,7 +194,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrSxy) { QOM.RegrSxy o = (QOM.RegrSxy) that; + if (that instanceof QOM.RegrSxy o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RegrSyy.java b/jOOQ/src/main/java/org/jooq/impl/RegrSyy.java index 74611e3f99..e4e7dda5b8 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RegrSyy.java +++ b/jOOQ/src/main/java/org/jooq/impl/RegrSyy.java @@ -190,7 +190,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.RegrSyy) { QOM.RegrSyy o = (QOM.RegrSyy) that; + if (that instanceof QOM.RegrSyy o) { return StringUtils.equals($y(), o.$y()) && StringUtils.equals($x(), o.$x()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Repeat.java b/jOOQ/src/main/java/org/jooq/impl/Repeat.java index 02ff63bb32..61ecc4cc95 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Repeat.java +++ b/jOOQ/src/main/java/org/jooq/impl/Repeat.java @@ -231,7 +231,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Repeat) { QOM.Repeat o = (QOM.Repeat) that; + if (that instanceof QOM.Repeat o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($count(), o.$count()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Replace.java b/jOOQ/src/main/java/org/jooq/impl/Replace.java index e58b0b9351..f8db9098f3 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Replace.java +++ b/jOOQ/src/main/java/org/jooq/impl/Replace.java @@ -257,7 +257,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Replace) { QOM.Replace o = (QOM.Replace) that; + if (that instanceof QOM.Replace o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($search(), o.$search()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/ResultImpl.java b/jOOQ/src/main/java/org/jooq/impl/ResultImpl.java index 3d9be4bdd4..52488f612a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ResultImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ResultImpl.java @@ -1139,8 +1139,8 @@ final class ResultImpl extends AbstractResult implements Re if (this == obj) return true; - if (obj instanceof ResultImpl) - return records.equals(((ResultImpl) obj).records); + if (obj instanceof ResultImpl r) + return records.equals(r.records); return false; } diff --git a/jOOQ/src/main/java/org/jooq/impl/ResultQueryTrait.java b/jOOQ/src/main/java/org/jooq/impl/ResultQueryTrait.java index a83d1454ff..2e9a4b9341 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ResultQueryTrait.java +++ b/jOOQ/src/main/java/org/jooq/impl/ResultQueryTrait.java @@ -1280,10 +1280,10 @@ extends Class recordType; // TODO [#3185] Pull up getRecordType() - if (this instanceof AbstractResultQuery) - recordType = ((AbstractResultQuery) this).getRecordType(); - else if (this instanceof SelectImpl) - recordType = ((SelectImpl) this).getRecordType(); + if (this instanceof AbstractResultQuery a) + recordType = a.getRecordType(); + else if (this instanceof SelectImpl s) + recordType = s.getRecordType(); else throw new DataAccessException("Attempt to call fetchArray() on " + getClass()); @@ -1466,7 +1466,7 @@ extends } default boolean hasLimit1() { - if (this instanceof Select) { Select q = (Select) this; + if (this instanceof Select q) { SelectQueryImpl s = Tools.selectQueryImpl(q); if (s != null) { diff --git a/jOOQ/src/main/java/org/jooq/impl/ResultsImpl.java b/jOOQ/src/main/java/org/jooq/impl/ResultsImpl.java index 21f33933c8..8f0dc4473b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ResultsImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ResultsImpl.java @@ -126,8 +126,8 @@ final class ResultsImpl extends AbstractList> implements Results if (this == obj) return true; - if (obj instanceof ResultsImpl) - return resultsOrRows.equals(((ResultsImpl) obj).resultsOrRows); + if (obj instanceof ResultsImpl r) + return resultsOrRows.equals(r.resultsOrRows); return false; } @@ -185,7 +185,7 @@ final class ResultsImpl extends AbstractList> implements Results return translated; } - static final /* record */ class ResultOrRowsImpl implements ResultOrRows { private final Result result; private final int rows; private final DataAccessException exception; public ResultOrRowsImpl(Result result, int rows, DataAccessException exception) { this.result = result; this.rows = rows; this.exception = exception; } public Result result() { return result; } public int rows() { return rows; } public DataAccessException exception() { return exception; } @Override public boolean equals(Object o) { if (!(o instanceof ResultOrRowsImpl)) return false; ResultOrRowsImpl other = (ResultOrRowsImpl) o; if (!java.util.Objects.equals(this.result, other.result)) return false; if (!java.util.Objects.equals(this.rows, other.rows)) return false; if (!java.util.Objects.equals(this.exception, other.exception)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.result, this.rows, this.exception); } + static final record ResultOrRowsImpl(Result result, int rows, DataAccessException exception) implements ResultOrRows { ResultOrRowsImpl(Result result) { this(result, result != null ? result.size() : 0, null); } diff --git a/jOOQ/src/main/java/org/jooq/impl/Reverse.java b/jOOQ/src/main/java/org/jooq/impl/Reverse.java index 35c3482ac3..5484fb6b94 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Reverse.java +++ b/jOOQ/src/main/java/org/jooq/impl/Reverse.java @@ -171,7 +171,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Reverse) { QOM.Reverse o = (QOM.Reverse) that; + if (that instanceof QOM.Reverse o) { return StringUtils.equals($string(), o.$string()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Right.java b/jOOQ/src/main/java/org/jooq/impl/Right.java index e8632b7470..948e1873d6 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Right.java +++ b/jOOQ/src/main/java/org/jooq/impl/Right.java @@ -201,7 +201,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Right) { QOM.Right o = (QOM.Right) that; + if (that instanceof QOM.Right o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($length(), o.$length()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Round.java b/jOOQ/src/main/java/org/jooq/impl/Round.java index 1c51b1cfd5..3eb8af2b25 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Round.java +++ b/jOOQ/src/main/java/org/jooq/impl/Round.java @@ -120,7 +120,7 @@ implements return; } - else if (decimals instanceof Param) { Param p = (Param) decimals; + else if (decimals instanceof Param p) { Integer decimalsValue = p.getValue(); Field factor = DSL.val(java.math.BigDecimal.ONE.movePointRight(decimalsValue)); Field mul = imul(value, factor); @@ -253,7 +253,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Round) { QOM.Round o = (QOM.Round) that; + if (that instanceof QOM.Round o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($decimals(), o.$decimals()) diff --git a/jOOQ/src/main/java/org/jooq/impl/RowIdImpl.java b/jOOQ/src/main/java/org/jooq/impl/RowIdImpl.java index f6c8e07f23..323d873cfa 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowIdImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowIdImpl.java @@ -42,7 +42,7 @@ import org.jooq.RowId; /** * @author Lukas Eder */ -final /* record */ class RowIdImpl implements RowId { private final Object value; public RowIdImpl(Object value) { this.value = value; } public Object value() { return value; } @Override public boolean equals(Object o) { if (!(o instanceof RowIdImpl)) return false; RowIdImpl other = (RowIdImpl) o; if (!java.util.Objects.equals(this.value, other.value)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.value); } +final record RowIdImpl (Object value) implements RowId { @Override public String toString() { diff --git a/jOOQ/src/main/java/org/jooq/impl/RowSubqueryCondition.java b/jOOQ/src/main/java/org/jooq/impl/RowSubqueryCondition.java index 8bfefb7d7c..585da1ea1c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowSubqueryCondition.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowSubqueryCondition.java @@ -184,7 +184,7 @@ final class RowSubqueryCondition extends AbstractCondition implements UNotYetImp } private static final SelectOrderByStep emulatedSubselect(Context ctx, Row row, Select s, Comparator c) { - RenderContext render = ctx instanceof RenderContext ? (RenderContext) ctx : null; + RenderContext render = ctx instanceof RenderContext r ? r : null; Row l = embeddedFieldsRow(row); Name table = name(render == null ? "t" : render.nextAlias()); Name[] names = fieldNames(l.size()); diff --git a/jOOQ/src/main/java/org/jooq/impl/Rpad.java b/jOOQ/src/main/java/org/jooq/impl/Rpad.java index 12b2415445..950f992865 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Rpad.java +++ b/jOOQ/src/main/java/org/jooq/impl/Rpad.java @@ -235,7 +235,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Rpad) { QOM.Rpad o = (QOM.Rpad) that; + if (that instanceof QOM.Rpad o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($length(), o.$length()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLQuery.java b/jOOQ/src/main/java/org/jooq/impl/SQLQuery.java index dd60987f3a..a607b0253a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SQLQuery.java +++ b/jOOQ/src/main/java/org/jooq/impl/SQLQuery.java @@ -80,8 +80,8 @@ final class SQLQuery extends AbstractRowCountQuery implements UEmptyQuery { @Override public final Clause[] clauses(Context ctx) { - if (delegate instanceof QueryPartInternal) - return ((QueryPartInternal) delegate).clauses(ctx); + if (delegate instanceof QueryPartInternal q) + return q.clauses(ctx); return null; } diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLResultQuery.java b/jOOQ/src/main/java/org/jooq/impl/SQLResultQuery.java index 30792ad1fb..85966f7eb7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SQLResultQuery.java +++ b/jOOQ/src/main/java/org/jooq/impl/SQLResultQuery.java @@ -91,8 +91,8 @@ final class SQLResultQuery extends AbstractResultQuery implements UEmpty @Override public final Clause[] clauses(Context ctx) { - if (delegate instanceof QueryPartInternal) - return ((QueryPartInternal) delegate).clauses(ctx); + if (delegate instanceof QueryPartInternal q) + return q.clauses(ctx); return null; } diff --git a/jOOQ/src/main/java/org/jooq/impl/SchemaImpl.java b/jOOQ/src/main/java/org/jooq/impl/SchemaImpl.java index 50bb76f755..2fce0ebf75 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SchemaImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SchemaImpl.java @@ -376,7 +376,7 @@ public class SchemaImpl extends AbstractNamed implements Schema { // [#2144] SchemaImpl equality can be decided without executing the // rather expensive implementation of AbstractQueryPart.equals() - if (that instanceof SchemaImpl) { SchemaImpl other = (SchemaImpl) that; + if (that instanceof SchemaImpl other) { return // [#7172] [#10274] Cannot use getQualifiedName() yet here diff --git a/jOOQ/src/main/java/org/jooq/impl/ScopeStack.java b/jOOQ/src/main/java/org/jooq/impl/ScopeStack.java index d24e33589e..acc55ddcb8 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ScopeStack.java +++ b/jOOQ/src/main/java/org/jooq/impl/ScopeStack.java @@ -114,7 +114,7 @@ final class ScopeStack implements Iterable { return () -> new ScopeStackIterator<>(list -> list.get(list.size() - 1), filter); } - static final /* record */ class Value { private final int scopeLevel; private final V value; public Value(int scopeLevel, V value) { this.scopeLevel = scopeLevel; this.value = value; } public int scopeLevel() { return scopeLevel; } public V value() { return value; } @Override public boolean equals(Object o) { if (!(o instanceof Value)) return false; Value other = (Value) o; if (!java.util.Objects.equals(this.scopeLevel, other.scopeLevel)) return false; if (!java.util.Objects.equals(this.value, other.value)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.scopeLevel, this.value); } @Override public String toString() { return new StringBuilder("Value[").append("scopeLevel=").append(this.scopeLevel).append(", value=").append(this.value).append("]").toString(); } + static final record Value(int scopeLevel, V value) { static Value of(int scopeLevel, V value) { return value == null ? null : new Value<>(scopeLevel, value); } diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectFieldList.java b/jOOQ/src/main/java/org/jooq/impl/SelectFieldList.java index 3f94da9d7a..72b29685bc 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectFieldList.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectFieldList.java @@ -79,10 +79,10 @@ final class SelectFieldList extends QueryPartLi // [#4727] Various SelectFieldList references containing Table cannot // resolve the instance in time for the rendering, e.g. RETURNING - if (part instanceof AbstractTable) - ctx.visit(((AbstractTable) part).tf()); - else if (part instanceof AbstractRow) - ctx.visit(((AbstractRow) part).rf()); + if (part instanceof AbstractTable t) + ctx.visit(t.tf()); + else if (part instanceof AbstractRow r) + ctx.visit(r.rf()); else super.acceptElement(ctx, part); } diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java index d8c9fa6643..b0464b41cb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java @@ -1584,9 +1584,9 @@ implements private final List> seekValues(Object[] values) { - if (getQuery() instanceof SelectQueryImpl) + if (getQuery() instanceof SelectQueryImpl s) return Tools.fields(values, map( - ((SelectQueryImpl) getQuery()).getOrderBy().fields(), + s.getOrderBy().fields(), (Field f) -> f.getDataType(), DataType[]::new )); diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java index b36c46841a..91ca2cb202 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java @@ -1265,8 +1265,8 @@ final class SelectQueryImpl extends AbstractResultQuery imp List> partitionBy = new ArrayList<>(distinctOn.size()); for (SelectFieldOrAsterisk s : distinctOn) - if (s instanceof Field) - partitionBy.add((Field) s); + if (s instanceof Field f) + partitionBy.add(f); Field rn = rowNumber().over(partitionBy(partitionBy).orderBy(orderBy)).as("rn"); @@ -2561,7 +2561,7 @@ final class SelectQueryImpl extends AbstractResultQuery imp } private final void transformInlineDerivedTable0(Table table, TableList result, ConditionProviderImpl where) { - if (table instanceof InlineDerivedTable) { InlineDerivedTable t = (InlineDerivedTable) table; + if (table instanceof InlineDerivedTable t) { result.add(t.table); where.addConditions(t.condition); } @@ -2572,14 +2572,14 @@ final class SelectQueryImpl extends AbstractResultQuery imp } private final Table transformInlineDerivedTables0(Table table, ConditionProviderImpl where, boolean keepDerivedTable) { - if (table instanceof InlineDerivedTable) { InlineDerivedTable t = (InlineDerivedTable) table; + if (table instanceof InlineDerivedTable t) { if (keepDerivedTable) return t.query().asTable(t.table); where.addConditions(t.condition); return t.table; } - else if (table instanceof JoinTable) { JoinTable j = (JoinTable) table; + else if (table instanceof JoinTable j) { Table lhs; Table rhs; @@ -3698,9 +3698,9 @@ final class SelectQueryImpl extends AbstractResultQuery imp SelectFieldList list = getSelectResolveImplicitAsterisks(); for (SelectFieldOrAsterisk s : list) - if (s instanceof Field) - result.add(getResolveProjection(ctx, (Field) s)); - else if (s instanceof QualifiedAsteriskImpl) { QualifiedAsteriskImpl q = (QualifiedAsteriskImpl) s; + if (s instanceof Field f) + result.add(getResolveProjection(ctx, f)); + else if (s instanceof QualifiedAsteriskImpl q) { if (q.fields.isEmpty()) if (resolveSupported) result.addAll(Arrays.asList(q.qualifier().fields())); @@ -3711,7 +3711,7 @@ final class SelectQueryImpl extends AbstractResultQuery imp else result.add(s); } - else if (s instanceof AsteriskImpl) { AsteriskImpl a = (AsteriskImpl) s; + else if (s instanceof AsteriskImpl a) { if (a.fields.isEmpty()) if (resolveSupported || resolveUnqualifiedCombined && list.size() > 1) result.addAll(resolveAsterisk(new QueryPartList<>())); @@ -3722,10 +3722,10 @@ final class SelectQueryImpl extends AbstractResultQuery imp else result.add(s); } - else if (s instanceof Row) - result.add(getResolveProjection(ctx, new RowAsField((Row) s))); - else if (s instanceof Table) - result.add(getResolveProjection(ctx, new TableAsField<>((Table) s))); + else if (s instanceof Row r) + result.add(getResolveProjection(ctx, new RowAsField(r))); + else if (s instanceof Table t) + result.add(getResolveProjection(ctx, new TableAsField<>(t))); else throw new AssertionError("Type not supported: " + s); @@ -3809,7 +3809,7 @@ final class SelectQueryImpl extends AbstractResultQuery imp return result; } - private static final /* record */ class SelectFieldIndexes { private final boolean mapped; private final int[] mapping; private final int[] projectionSizes; public SelectFieldIndexes(boolean mapped, int[] mapping, int[] projectionSizes) { this.mapped = mapped; this.mapping = mapping; this.projectionSizes = projectionSizes; } public boolean mapped() { return mapped; } public int[] mapping() { return mapping; } public int[] projectionSizes() { return projectionSizes; } @Override public boolean equals(Object o) { if (!(o instanceof SelectFieldIndexes)) return false; SelectFieldIndexes other = (SelectFieldIndexes) o; if (!java.util.Objects.equals(this.mapped, other.mapped)) return false; if (!java.util.Objects.equals(this.mapping, other.mapping)) return false; if (!java.util.Objects.equals(this.projectionSizes, other.projectionSizes)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.mapped, this.mapping, this.projectionSizes); } @Override public String toString() { return new StringBuilder("SelectFieldIndexes[").append("mapped=").append(this.mapped).append(", mapping=").append(this.mapping).append(", projectionSizes=").append(this.projectionSizes).append("]").toString(); } } + private static record SelectFieldIndexes(boolean mapped, int[] mapping, int[] projectionSizes) {} /** * [#11904] Get a mapping { projected field index -> generated field index } @@ -4360,8 +4360,8 @@ final class SelectQueryImpl extends AbstractResultQuery imp case FULL_OUTER_JOIN: { TableOptionalOnStep o = getFrom().get(index).join(table, type); - if (conditions instanceof Condition) - joined = o.on((Condition) conditions); + if (conditions instanceof Condition c) + joined = o.on(c); else joined = o.on((Condition[]) conditions); @@ -4376,8 +4376,8 @@ final class SelectQueryImpl extends AbstractResultQuery imp - if (conditions instanceof Condition) - joined = o.on((Condition) conditions); + if (conditions instanceof Condition c) + joined = o.on(c); else joined = o.on((Condition[]) conditions); diff --git a/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java b/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java index 31be1ace3b..ec71c82fd2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java @@ -317,8 +317,8 @@ implements @Override public boolean equals(Object that) { - if (that instanceof SequenceFunction) - return method == ((SequenceFunction) that).method && sequence.equals(((SequenceFunction) that).sequence); + if (that instanceof SequenceFunction s) + return method == s.method && sequence.equals(s.sequence); else return super.equals(that); } @@ -375,8 +375,8 @@ implements @Override public boolean equals(Object that) { - if (that instanceof SequenceImpl) - return getQualifiedName().equals(((SequenceImpl) that).getQualifiedName()); + if (that instanceof SequenceImpl s) + return getQualifiedName().equals(s.getQualifiedName()); else return super.equals(that); } diff --git a/jOOQ/src/main/java/org/jooq/impl/Shl.java b/jOOQ/src/main/java/org/jooq/impl/Shl.java index d54a1621e0..3d78e9e61d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Shl.java +++ b/jOOQ/src/main/java/org/jooq/impl/Shl.java @@ -214,7 +214,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Shl) { QOM.Shl o = (QOM.Shl) that; + if (that instanceof QOM.Shl o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($count(), o.$count()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Shr.java b/jOOQ/src/main/java/org/jooq/impl/Shr.java index b1f398147e..886a43dd9f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Shr.java +++ b/jOOQ/src/main/java/org/jooq/impl/Shr.java @@ -214,7 +214,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Shr) { QOM.Shr o = (QOM.Shr) that; + if (that instanceof QOM.Shr o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($count(), o.$count()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Sign.java b/jOOQ/src/main/java/org/jooq/impl/Sign.java index 2162b38feb..c0f9365977 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Sign.java +++ b/jOOQ/src/main/java/org/jooq/impl/Sign.java @@ -188,7 +188,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Sign) { QOM.Sign o = (QOM.Sign) that; + if (that instanceof QOM.Sign o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/SimilarTo.java b/jOOQ/src/main/java/org/jooq/impl/SimilarTo.java index 9904228557..06bfcb132a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SimilarTo.java +++ b/jOOQ/src/main/java/org/jooq/impl/SimilarTo.java @@ -182,7 +182,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.SimilarTo) { QOM.SimilarTo o = (QOM.SimilarTo) that; + if (that instanceof QOM.SimilarTo o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($pattern(), o.$pattern()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/Sin.java b/jOOQ/src/main/java/org/jooq/impl/Sin.java index fbd7887209..0fb29d41ed 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Sin.java +++ b/jOOQ/src/main/java/org/jooq/impl/Sin.java @@ -166,7 +166,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Sin) { QOM.Sin o = (QOM.Sin) that; + if (that instanceof QOM.Sin o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Sinh.java b/jOOQ/src/main/java/org/jooq/impl/Sinh.java index 7bc1a3ca13..7f2c15e269 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Sinh.java +++ b/jOOQ/src/main/java/org/jooq/impl/Sinh.java @@ -213,7 +213,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Sinh) { QOM.Sinh o = (QOM.Sinh) that; + if (that instanceof QOM.Sinh o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Space.java b/jOOQ/src/main/java/org/jooq/impl/Space.java index 71ec0d4b4b..c87097db47 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Space.java +++ b/jOOQ/src/main/java/org/jooq/impl/Space.java @@ -212,7 +212,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Space) { QOM.Space o = (QOM.Space) that; + if (that instanceof QOM.Space o) { return StringUtils.equals($count(), o.$count()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/SplitPart.java b/jOOQ/src/main/java/org/jooq/impl/SplitPart.java index e2ba267f0a..b66776f037 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SplitPart.java +++ b/jOOQ/src/main/java/org/jooq/impl/SplitPart.java @@ -298,7 +298,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.SplitPart) { QOM.SplitPart o = (QOM.SplitPart) that; + if (that instanceof QOM.SplitPart o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($delimiter(), o.$delimiter()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/Sqrt.java b/jOOQ/src/main/java/org/jooq/impl/Sqrt.java index 7484173600..2547f7a69e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Sqrt.java +++ b/jOOQ/src/main/java/org/jooq/impl/Sqrt.java @@ -192,7 +192,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Sqrt) { QOM.Sqrt o = (QOM.Sqrt) that; + if (that instanceof QOM.Sqrt o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Square.java b/jOOQ/src/main/java/org/jooq/impl/Square.java index ff0273ddd2..922211aff6 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Square.java +++ b/jOOQ/src/main/java/org/jooq/impl/Square.java @@ -238,7 +238,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Square) { QOM.Square o = (QOM.Square) that; + if (that instanceof QOM.Square o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/StartsWith.java b/jOOQ/src/main/java/org/jooq/impl/StartsWith.java index 48273e2edb..e742940a8c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/StartsWith.java +++ b/jOOQ/src/main/java/org/jooq/impl/StartsWith.java @@ -147,7 +147,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.StartsWith) { QOM.StartsWith o = (QOM.StartsWith) that; + if (that instanceof QOM.StartsWith o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($prefix(), o.$prefix()) diff --git a/jOOQ/src/main/java/org/jooq/impl/StartsWithIgnoreCase.java b/jOOQ/src/main/java/org/jooq/impl/StartsWithIgnoreCase.java index ad9264bc43..74d64a0db1 100644 --- a/jOOQ/src/main/java/org/jooq/impl/StartsWithIgnoreCase.java +++ b/jOOQ/src/main/java/org/jooq/impl/StartsWithIgnoreCase.java @@ -147,7 +147,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.StartsWithIgnoreCase) { QOM.StartsWithIgnoreCase o = (QOM.StartsWithIgnoreCase) that; + if (that instanceof QOM.StartsWithIgnoreCase o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($prefix(), o.$prefix()) diff --git a/jOOQ/src/main/java/org/jooq/impl/StddevPop.java b/jOOQ/src/main/java/org/jooq/impl/StddevPop.java index 7c75e47f85..783f7a38d7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/StddevPop.java +++ b/jOOQ/src/main/java/org/jooq/impl/StddevPop.java @@ -163,7 +163,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.StddevPop) { QOM.StddevPop o = (QOM.StddevPop) that; + if (that instanceof QOM.StddevPop o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/StddevSamp.java b/jOOQ/src/main/java/org/jooq/impl/StddevSamp.java index b0d06b2030..1eaf236237 100644 --- a/jOOQ/src/main/java/org/jooq/impl/StddevSamp.java +++ b/jOOQ/src/main/java/org/jooq/impl/StddevSamp.java @@ -163,7 +163,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.StddevSamp) { QOM.StddevSamp o = (QOM.StddevSamp) that; + if (that instanceof QOM.StddevSamp o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Sub.java b/jOOQ/src/main/java/org/jooq/impl/Sub.java index d82a4a8bd4..a24b624e48 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Sub.java +++ b/jOOQ/src/main/java/org/jooq/impl/Sub.java @@ -169,7 +169,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Sub) { QOM.Sub o = (QOM.Sub) that; + if (that instanceof QOM.Sub o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Substring.java b/jOOQ/src/main/java/org/jooq/impl/Substring.java index c8329fb99c..6e8f2c9cf1 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Substring.java +++ b/jOOQ/src/main/java/org/jooq/impl/Substring.java @@ -262,7 +262,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Substring) { QOM.Substring o = (QOM.Substring) that; + if (that instanceof QOM.Substring o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($startingPosition(), o.$startingPosition()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/SubstringIndex.java b/jOOQ/src/main/java/org/jooq/impl/SubstringIndex.java index 2466726069..af4845a13d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SubstringIndex.java +++ b/jOOQ/src/main/java/org/jooq/impl/SubstringIndex.java @@ -223,7 +223,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.SubstringIndex) { QOM.SubstringIndex o = (QOM.SubstringIndex) that; + if (that instanceof QOM.SubstringIndex o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($delimiter(), o.$delimiter()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/Sum.java b/jOOQ/src/main/java/org/jooq/impl/Sum.java index 92d5634e13..7662a6d178 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Sum.java +++ b/jOOQ/src/main/java/org/jooq/impl/Sum.java @@ -147,7 +147,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Sum) { QOM.Sum o = (QOM.Sum) that; + if (that instanceof QOM.Sum o) { return StringUtils.equals($field(), o.$field()) && $distinct() == o.$distinct() diff --git a/jOOQ/src/main/java/org/jooq/impl/TableEq.java b/jOOQ/src/main/java/org/jooq/impl/TableEq.java index 064f54ff84..d84886f907 100644 --- a/jOOQ/src/main/java/org/jooq/impl/TableEq.java +++ b/jOOQ/src/main/java/org/jooq/impl/TableEq.java @@ -154,7 +154,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.TableEq) { QOM.TableEq o = (QOM.TableEq) that; + if (that instanceof QOM.TableEq o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/TableImpl.java b/jOOQ/src/main/java/org/jooq/impl/TableImpl.java index 2d74578401..eb2cce5d70 100644 --- a/jOOQ/src/main/java/org/jooq/impl/TableImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/TableImpl.java @@ -248,7 +248,7 @@ implements this.child = child; this.childPath = path == null ? null : Tools.aliasedKey((ForeignKey) path, child, this); } - else if (aliased instanceof TableImpl) { TableImpl t = (TableImpl) aliased; + else if (aliased instanceof TableImpl t) { this.child = t.child; this.childPath = t.childPath; } @@ -825,7 +825,7 @@ implements // [#2144] TableImpl equality can be decided without executing the // rather expensive implementation of AbstractQueryPart.equals() - if (that instanceof TableImpl) { TableImpl other = (TableImpl) that; + if (that instanceof TableImpl other) { return // [#7172] [#10274] Cannot use getQualifiedName() yet here diff --git a/jOOQ/src/main/java/org/jooq/impl/TableNe.java b/jOOQ/src/main/java/org/jooq/impl/TableNe.java index 6623308a90..96c8c4a303 100644 --- a/jOOQ/src/main/java/org/jooq/impl/TableNe.java +++ b/jOOQ/src/main/java/org/jooq/impl/TableNe.java @@ -154,7 +154,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.TableNe) { QOM.TableNe o = (QOM.TableNe) that; + if (that instanceof QOM.TableNe o) { return StringUtils.equals($arg1(), o.$arg1()) && StringUtils.equals($arg2(), o.$arg2()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Tan.java b/jOOQ/src/main/java/org/jooq/impl/Tan.java index a74874cb5f..415e2ac995 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Tan.java +++ b/jOOQ/src/main/java/org/jooq/impl/Tan.java @@ -166,7 +166,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Tan) { QOM.Tan o = (QOM.Tan) that; + if (that instanceof QOM.Tan o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Tanh.java b/jOOQ/src/main/java/org/jooq/impl/Tanh.java index dcf0a2f8f3..6de062085f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Tanh.java +++ b/jOOQ/src/main/java/org/jooq/impl/Tanh.java @@ -213,7 +213,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Tanh) { QOM.Tanh o = (QOM.Tanh) that; + if (that instanceof QOM.Tanh o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Tau.java b/jOOQ/src/main/java/org/jooq/impl/Tau.java index 228881e144..7bcf83c867 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Tau.java +++ b/jOOQ/src/main/java/org/jooq/impl/Tau.java @@ -114,7 +114,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Tau) { QOM.Tau o = (QOM.Tau) that; + if (that instanceof QOM.Tau o) { return true; } else diff --git a/jOOQ/src/main/java/org/jooq/impl/ToChar.java b/jOOQ/src/main/java/org/jooq/impl/ToChar.java index a5359ce786..41ecc78af8 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ToChar.java +++ b/jOOQ/src/main/java/org/jooq/impl/ToChar.java @@ -208,7 +208,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.ToChar) { QOM.ToChar o = (QOM.ToChar) that; + if (that instanceof QOM.ToChar o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($formatMask(), o.$formatMask()) diff --git a/jOOQ/src/main/java/org/jooq/impl/ToDate.java b/jOOQ/src/main/java/org/jooq/impl/ToDate.java index 3a9a7455ef..6e5bef675f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ToDate.java +++ b/jOOQ/src/main/java/org/jooq/impl/ToDate.java @@ -193,7 +193,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.ToDate) { QOM.ToDate o = (QOM.ToDate) that; + if (that instanceof QOM.ToDate o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($formatMask(), o.$formatMask()) diff --git a/jOOQ/src/main/java/org/jooq/impl/ToHex.java b/jOOQ/src/main/java/org/jooq/impl/ToHex.java index 66b30f37f5..4eabe7d528 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ToHex.java +++ b/jOOQ/src/main/java/org/jooq/impl/ToHex.java @@ -204,7 +204,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.ToHex) { QOM.ToHex o = (QOM.ToHex) that; + if (that instanceof QOM.ToHex o) { return StringUtils.equals($value(), o.$value()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/ToTimestamp.java b/jOOQ/src/main/java/org/jooq/impl/ToTimestamp.java index 6f607928b0..24c05feaa2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ToTimestamp.java +++ b/jOOQ/src/main/java/org/jooq/impl/ToTimestamp.java @@ -193,7 +193,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.ToTimestamp) { QOM.ToTimestamp o = (QOM.ToTimestamp) that; + if (that instanceof QOM.ToTimestamp o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($formatMask(), o.$formatMask()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Tools.java b/jOOQ/src/main/java/org/jooq/impl/Tools.java index 87a3407ed9..78857d8182 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Tools.java +++ b/jOOQ/src/main/java/org/jooq/impl/Tools.java @@ -421,7 +421,7 @@ final class Tools { /** * A common super types for {@link BooleanDataKey}, {@link SimpleDataKey} and {@link ExtendedDataKey} */ - /* sealed */ interface DataKey { + sealed interface DataKey { /** * Whether this data key resets itself to {@link #resetValue()} when @@ -1556,17 +1556,17 @@ final class Tools { } static final SortField sortField(OrderField field) { - if (field instanceof SortField) - return (SortField) field; - else if (field instanceof Field) - return ((Field) field).sortDefault(); + if (field instanceof SortField s) + return s; + else if (field instanceof Field f) + return f.sortDefault(); else throw new IllegalArgumentException("Field not supported : " + field); } static final SortField[] sortFields(OrderField[] fields) { - if (fields instanceof SortField[]) - return (SortField[]) fields; + if (fields instanceof SortField[] s) + return s; else return map(fields, o -> sortField(o), SortField[]::new); } @@ -1699,7 +1699,7 @@ final class Tools { } static final List names(Collection names) { - return map(names, n -> n instanceof Name ? (Name) n : DSL.name(String.valueOf(n))); + return map(names, n -> n instanceof Name name ? name : DSL.name(String.valueOf(n))); } static final String sanitiseName(Configuration configuration, String name) { @@ -1945,8 +1945,8 @@ final class Tools { return DSL.field((Select>) value); // [#13251] Rows can be mixed with values in ROW constructors - else if (value instanceof AbstractRow) - return (Field) ((AbstractRow) value).rf(); + else if (value instanceof AbstractRow r) + return (Field) r.rf(); // [#4771] Any other QueryPart type is not supported here else if (value instanceof QueryPart) @@ -2070,7 +2070,7 @@ final class Tools { } private static final List newListWithCapacity(Iterable it) { - return it instanceof Collection ? new ArrayList<>(((Collection) it).size()) : new ArrayList<>(); + return it instanceof Collection c ? new ArrayList<>(c.size()) : new ArrayList<>(); } static final R apply(@Nullable T t, ThrowingFunction f) throws X { @@ -2497,8 +2497,8 @@ final class Tools { static final T last(Collection collection) { if (collection.isEmpty()) return null; - else if (collection instanceof List) - return ((List) collection).get(collection.size() - 1); + else if (collection instanceof List l) + return l.get(collection.size() - 1); T last = null; for (Iterator it = collection.iterator(); it.hasNext(); last = it.next()); @@ -2656,7 +2656,7 @@ final class Tools { private static final RuntimeException exception(Cursor cursor, RuntimeException e) { // [#8877] Make sure these exceptions pass through ExecuteListeners as well - if (cursor instanceof CursorImpl) { CursorImpl c = (CursorImpl) cursor; + if (cursor instanceof CursorImpl c) { c.ctx.exception(e); c.listener.exception(c.ctx); return c.ctx.exception(); @@ -2769,8 +2769,8 @@ final class Tools { */ @SuppressWarnings("null") static final void renderAndBind(Context ctx, String sql, List substitutes) { - RenderContext render = ctx instanceof RenderContext ? (RenderContext) ctx : null; - BindContext bind = ctx instanceof BindContext ? (BindContext) ctx : null; + RenderContext render = ctx instanceof RenderContext r ? r : null; + BindContext bind = ctx instanceof BindContext b ? b : null; int substituteIndex = 0; char[] sqlChars = sql.toCharArray(); @@ -3177,7 +3177,7 @@ final class Tools { for (Object substitute : substitutes) { // [#1432] Distinguish between QueryParts and other objects - if (substitute instanceof QueryPart) { QueryPart q = (QueryPart) substitute; + if (substitute instanceof QueryPart q) { result.add(q); } else { @@ -3265,12 +3265,12 @@ final class Tools { * Translate a {@link R2dbcException} to a {@link DataAccessException} */ static final RuntimeException translate(String sql, Throwable t) { - if (t instanceof R2dbcException) - return translate(sql, (R2dbcException) t); - else if (t instanceof SQLException) - return translate(sql, (SQLException) t); - else if (t instanceof RuntimeException) - return translate(sql, (RuntimeException) t); + if (t instanceof R2dbcException e) + return translate(sql, e); + else if (t instanceof SQLException e) + return translate(sql, e); + else if (t instanceof RuntimeException e) + return translate(sql, e); else if (t != null) return new DataAccessException("SQL [" + sql + "]; Unspecified Throwable", t); else @@ -3660,10 +3660,10 @@ final class Tools { } static final Val extractVal(Field field) { - return field instanceof Val - ? (Val) field - : field instanceof ConvertedVal - ? (Val) ((ConvertedVal) field).delegate + return field instanceof Val v + ? v + : field instanceof ConvertedVal v + ? (Val) v.delegate : null; } @@ -3712,23 +3712,23 @@ final class Tools { @SuppressWarnings({ "unchecked", "rawtypes" }) static final SelectQueryImpl selectQueryImpl(QueryPart part) { - if (part instanceof SelectQueryImpl) - return (SelectQueryImpl) part; - else if (part instanceof SelectImpl) - return (SelectQueryImpl) ((SelectImpl) part).getDelegate(); - else if (part instanceof ScalarSubquery) - return selectQueryImpl(((ScalarSubquery) part).query); - else if (part instanceof QuantifiedSelectImpl) - return selectQueryImpl(((QuantifiedSelectImpl) part).query); + if (part instanceof SelectQueryImpl s) + return s; + else if (part instanceof SelectImpl s) + return (SelectQueryImpl) s.getDelegate(); + else if (part instanceof ScalarSubquery s) + return selectQueryImpl(s.query); + else if (part instanceof QuantifiedSelectImpl s) + return selectQueryImpl(s.query); else return null; } static final AbstractResultQuery abstractResultQuery(Query query) { - if (query instanceof AbstractResultQuery) - return (AbstractResultQuery) query; - else if (query instanceof AbstractDelegatingQuery) - return abstractResultQuery(((AbstractDelegatingQuery) query).getDelegate()); + if (query instanceof AbstractResultQuery q) + return q; + else if (query instanceof AbstractDelegatingQuery q) + return abstractResultQuery(q.getDelegate()); else return null; } @@ -3736,8 +3736,8 @@ final class Tools { static final InsertQueryImpl insertQueryImpl(Query query) { AbstractDMLQuery result = abstractDMLQuery(query); - if (result instanceof InsertQueryImpl) - return (InsertQueryImpl) result; + if (result instanceof InsertQueryImpl q) + return q; else return null; } @@ -3745,8 +3745,8 @@ final class Tools { static final UpdateQueryImpl updateQueryImpl(Query query) { AbstractDMLQuery result = abstractDMLQuery(query); - if (result instanceof UpdateQueryImpl) - return (UpdateQueryImpl) result; + if (result instanceof UpdateQueryImpl q) + return q; else return null; } @@ -3754,19 +3754,19 @@ final class Tools { static final DeleteQueryImpl deleteQueryImpl(Query query) { AbstractDMLQuery result = abstractDMLQuery(query); - if (result instanceof DeleteQueryImpl) - return (DeleteQueryImpl) result; + if (result instanceof DeleteQueryImpl q) + return q; else return null; } static final AbstractDMLQuery abstractDMLQuery(Query query) { - if (query instanceof AbstractDMLQuery) - return (AbstractDMLQuery) query; - else if (query instanceof AbstractDelegatingDMLQuery) - return abstractDMLQuery(((AbstractDelegatingDMLQuery) query).getDelegate()); - else if (query instanceof DMLQueryAsResultQuery) - return ((DMLQueryAsResultQuery) query).getDelegate(); + if (query instanceof AbstractDMLQuery q) + return q; + else if (query instanceof AbstractDelegatingDMLQuery q) + return abstractDMLQuery(q.getDelegate()); + else if (query instanceof DMLQueryAsResultQuery q) + return q.getDelegate(); else return null; } @@ -4267,7 +4267,7 @@ final class Tools { @Override public boolean equals(Object obj) { - if (obj instanceof SourceMethod) { SourceMethod s = (SourceMethod) obj; + if (obj instanceof SourceMethod s) { Method other = s.method; if (method.getName().equals(other.getName())) { @@ -5541,8 +5541,8 @@ final class Tools { - DataType elementType = type instanceof ArrayDataType - ? ((ArrayDataType) type).elementType + DataType elementType = type instanceof ArrayDataType t + ? t.elementType : type; // In some databases, identity is a type, not a flag. @@ -5858,8 +5858,8 @@ final class Tools { } static final SelectFieldOrAsterisk qualify(Table table, SelectFieldOrAsterisk field) { - if (field instanceof Field) - return qualify(table, (Field) field); + if (field instanceof Field f) + return qualify(table, f); else if (field instanceof Asterisk) return table.asterisk(); else if (field instanceof QualifiedAsterisk) @@ -5884,8 +5884,8 @@ final class Tools { } static final Field field(OrderField orderField) { - if (orderField instanceof Field) - return (Field) orderField; + if (orderField instanceof Field f) + return f; else return ((SortFieldImpl) orderField).getField(); } @@ -5904,8 +5904,8 @@ final class Tools { } static final Field aliased(Field field) { - if (field instanceof FieldAlias) - return ((FieldAlias) field).getAliasedField(); + if (field instanceof FieldAlias f) + return f.getAliasedField(); else return null; } @@ -5921,23 +5921,23 @@ final class Tools { } static final Field uncoerce(Field field) { - return field instanceof Coerce ? ((Coerce) field).field : field; + return field instanceof Coerce f ? f.field : field; } static final Table aliased(Table table) { - if (table instanceof TableImpl) - return ((TableImpl) table).getAliasedTable(); - else if (table instanceof TableAlias) - return ((TableAlias) table).getAliasedTable(); + if (table instanceof TableImpl t) + return t.getAliasedTable(); + else if (table instanceof TableAlias t) + return t.getAliasedTable(); else return null; } static final Alias> alias(Table table) { - if (table instanceof TableImpl) - return ((TableImpl) table).alias; - else if (table instanceof TableAlias) - return ((TableAlias) table).alias; + if (table instanceof TableImpl t) + return t.alias; + else if (table instanceof TableAlias t) + return t.alias; else return null; } @@ -6004,15 +6004,15 @@ final class Tools { * Look up a field in a table, or create a new qualified field from the table. */ static final Field tableField(Table table, Object field) { - if (field instanceof Field) - return (Field) field; - else if (field instanceof Name) { Name n = (Name) field; + if (field instanceof Field f) + return f; + else if (field instanceof Name n) { if (table.fieldsRow().size() == 0) return DSL.field(table.getQualifiedName().append(n.unqualifiedName())) ; else return table.field(n); } - else if (field instanceof String) { String s = (String) field; + else if (field instanceof String s) { if (table.fieldsRow().size() == 0) return DSL.field(table.getQualifiedName().append(s)); else @@ -6104,8 +6104,8 @@ final class Tools { static final boolean isEmpty(Iterable it) { if (it == null) return true; - else if (it instanceof Collection) - return isEmpty((Collection) it); + else if (it instanceof Collection c) + return isEmpty(c); Iterator i = it.iterator(); return !i.hasNext(); @@ -6125,8 +6125,8 @@ final class Tools { @SuppressWarnings("unchecked") static final Class embeddedRecordType(Field field) { - return field instanceof EmbeddableTableField - ? (Class) ((EmbeddableTableField) field).recordType + return field instanceof EmbeddableTableField e + ? (Class) e.recordType : field instanceof Val && ((Val) field).value instanceof EmbeddableRecord ? ((AbstractRecord) ((Val) field).value).getClass() : field.getDataType().isEmbeddable() @@ -6136,12 +6136,12 @@ final class Tools { @SuppressWarnings("unchecked") static final Field[] embeddedFields(Field field) { - return field instanceof EmbeddableTableField - ? ((EmbeddableTableField) field).fields + return field instanceof EmbeddableTableField e + ? e.fields : field instanceof Val && ((Val) field).value instanceof EmbeddableRecord ? ((EmbeddableRecord) ((Val) field).value).valuesRow().fields() - : field instanceof ScalarSubquery - ? embeddedFields((ScalarSubquery) field) + : field instanceof ScalarSubquery s + ? embeddedFields(s) : field.getDataType().isEmbeddable() ? newInstance(((Field>) field).getType()).valuesRow().fields() : null; @@ -6190,8 +6190,8 @@ final class Tools { } static final List collect(Iterable iterable) { - if (iterable instanceof List) - return (List) iterable; + if (iterable instanceof List l) + return l; List result = new ArrayList<>(); for (E e : iterable) @@ -6259,8 +6259,8 @@ final class Tools { } static final Iterable> flattenFieldOrRow(FieldOrRow fr) { - if (fr instanceof Field) - return flatten((Field) fr); + if (fr instanceof Field f) + return flatten(f); else return asList(((Row) fr).fields()); } @@ -6324,7 +6324,7 @@ final class Tools { // TODO [#10525] Should embedded records be emulated as RowField? if (flattenRowFields) { - if (e instanceof AbstractRowAsField) { AbstractRowAsField r = (AbstractRowAsField) e; + if (e instanceof AbstractRowAsField r) { List> result = new ArrayList<>(); for (Field field : flattenCollection(asList(r.fields0().fields()), removeDuplicates, flattenRowFields)) @@ -6353,7 +6353,7 @@ final class Tools { return () -> new FlatteningIterator<>(iterable.iterator(), (e, duplicates) -> { // [#9879] [#13325] TODO: Support also UPDATE .. SET ROW = ... - if (e.getKey() instanceof EmbeddableTableField) { EmbeddableTableField key = (EmbeddableTableField) e.getKey(); + if (e.getKey() instanceof EmbeddableTableField key) { List> result = new ArrayList<>(); Field[] keys = embeddedFields(key); Field[] values = embeddedFields((Field) e.getValue()); @@ -6762,8 +6762,8 @@ final class Tools { static final Field nullSafe(Field field, DataType type) { return field == null ? (Field) DSL.val((T) null, type) - : field instanceof Condition - ? (Field) DSL.field((Condition) field) + : field instanceof Condition c + ? (Field) DSL.field(c) : convertVal(field, type); } @@ -6916,7 +6916,7 @@ final class Tools { if (abort != null && abort.test(result)) return result; - if (t instanceof JoinTable) { JoinTable j = (JoinTable) t; + if (t instanceof JoinTable j) { if (recurseLhs == null || recurseLhs.test(j)) { result = traverseJoins(j.lhs, result, abort, recurseLhs, recurseRhs, joinTypeFunction, tableFunction); diff --git a/jOOQ/src/main/java/org/jooq/impl/Translate.java b/jOOQ/src/main/java/org/jooq/impl/Translate.java index 0e364d1f1b..ff172372d7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Translate.java +++ b/jOOQ/src/main/java/org/jooq/impl/Translate.java @@ -219,7 +219,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Translate) { QOM.Translate o = (QOM.Translate) that; + if (that instanceof QOM.Translate o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($from(), o.$from()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/TranslatingMetaProvider.java b/jOOQ/src/main/java/org/jooq/impl/TranslatingMetaProvider.java index ff7372ac77..92789db348 100644 --- a/jOOQ/src/main/java/org/jooq/impl/TranslatingMetaProvider.java +++ b/jOOQ/src/main/java/org/jooq/impl/TranslatingMetaProvider.java @@ -119,7 +119,7 @@ final class TranslatingMetaProvider implements MetaProvider { final Locale locale = SettingsTools.interpreterLocale(ctx.settings()); if (nameCase != null && nameCase != RenderNameCase.AS_IS) { ctx.configuration().set(onVisitStart(c -> { - if (c.queryPart() instanceof Name) { Name n = (Name) c.queryPart(); + if (c.queryPart() instanceof Name n) { Name[] parts = n.parts(); boolean changed = false; @@ -217,16 +217,16 @@ final class TranslatingMetaProvider implements MetaProvider { // [#9138] Make users aware of the new parse ignore comment syntax log.error("DDL interpretation", - ("" + - "Your SQL string could not be parsed or interpreted. This may have a variety of reasons, including:\n" + - "- The jOOQ parser doesn't understand your SQL\n" + - "- The jOOQ DDL interpretation logic (translating to H2) cannot simulate your SQL\n" + - "\n" + - "If you think this is a bug or a feature worth requesting, please report it here: https://github.com/jOOQ/jOOQ/issues/new/choose\n" + - "\n" + - "As a workaround, you can use the Settings.parseIgnoreComments syntax documented here:\n" + - "https://www.jooq.org/doc/latest/manual/sql-building/dsl-context/custom-settings/settings-parser/\n" + - "") + """ + Your SQL string could not be parsed or interpreted. This may have a variety of reasons, including: + - The jOOQ parser doesn't understand your SQL + - The jOOQ DDL interpretation logic (translating to H2) cannot simulate your SQL + + If you think this is a bug or a feature worth requesting, please report it here: https://github.com/jOOQ/jOOQ/issues/new/choose + + As a workaround, you can use the Settings.parseIgnoreComments syntax documented here: + https://www.jooq.org/doc/latest/manual/sql-building/dsl-context/custom-settings/settings-parser/ + """ ); throw e; diff --git a/jOOQ/src/main/java/org/jooq/impl/Trim.java b/jOOQ/src/main/java/org/jooq/impl/Trim.java index 138ae1e8f6..c5b3ed7ff9 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Trim.java +++ b/jOOQ/src/main/java/org/jooq/impl/Trim.java @@ -220,7 +220,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Trim) { QOM.Trim o = (QOM.Trim) that; + if (that instanceof QOM.Trim o) { return StringUtils.equals($string(), o.$string()) && StringUtils.equals($characters(), o.$characters()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Trunc.java b/jOOQ/src/main/java/org/jooq/impl/Trunc.java index c2e2a79651..7a95b3be4d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Trunc.java +++ b/jOOQ/src/main/java/org/jooq/impl/Trunc.java @@ -237,7 +237,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Trunc) { QOM.Trunc o = (QOM.Trunc) that; + if (that instanceof QOM.Trunc o) { return StringUtils.equals($value(), o.$value()) && StringUtils.equals($decimals(), o.$decimals()) diff --git a/jOOQ/src/main/java/org/jooq/impl/UDTFieldImpl.java b/jOOQ/src/main/java/org/jooq/impl/UDTFieldImpl.java index c03bee904f..0b9d45dcc9 100644 --- a/jOOQ/src/main/java/org/jooq/impl/UDTFieldImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/UDTFieldImpl.java @@ -63,8 +63,8 @@ final class UDTFieldImpl, T> extends AbstractField imp this.udt = udt; // [#1199] The public API of UDT returns immutable field lists - if (udt instanceof UDTImpl) - ((UDTImpl) udt).fields0().add(this); + if (udt instanceof UDTImpl u) + u.fields0().add(this); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/Unique.java b/jOOQ/src/main/java/org/jooq/impl/Unique.java index d6df5c59ab..5d88c8c365 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Unique.java +++ b/jOOQ/src/main/java/org/jooq/impl/Unique.java @@ -179,7 +179,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Unique) { QOM.Unique o = (QOM.Unique) that; + if (that instanceof QOM.Unique o) { return StringUtils.equals($query(), o.$query()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Upper.java b/jOOQ/src/main/java/org/jooq/impl/Upper.java index e2e17f5ac2..a1151496d7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Upper.java +++ b/jOOQ/src/main/java/org/jooq/impl/Upper.java @@ -171,7 +171,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Upper) { QOM.Upper o = (QOM.Upper) that; + if (that instanceof QOM.Upper o) { return StringUtils.equals($string(), o.$string()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Uuid.java b/jOOQ/src/main/java/org/jooq/impl/Uuid.java index 99b7b52517..0d9c9f9995 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Uuid.java +++ b/jOOQ/src/main/java/org/jooq/impl/Uuid.java @@ -274,7 +274,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.Uuid) { QOM.Uuid o = (QOM.Uuid) that; + if (that instanceof QOM.Uuid o) { return true; } else diff --git a/jOOQ/src/main/java/org/jooq/impl/Val.java b/jOOQ/src/main/java/org/jooq/impl/Val.java index 417e0f4518..fc8683d746 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Val.java +++ b/jOOQ/src/main/java/org/jooq/impl/Val.java @@ -119,7 +119,7 @@ final class Val extends AbstractParam implements UEmpty { // [#10438] A user defined data type could was not provided explicitly, // when wrapping a bind value in DSL::val or DSL::inline - if (getDataType() instanceof DataTypeProxy) { DataTypeProxy p = (DataTypeProxy) getDataType(); + if (getDataType() instanceof DataTypeProxy p) { // [#9492] Maintain legacy static type registry behaviour for now if (p.type() instanceof LegacyConvertedDataType && type == SQLDataType.OTHER) { @@ -168,7 +168,7 @@ final class Val extends AbstractParam implements UEmpty { else acceptDefaultEmbeddable(ctx); } - else if (ctx instanceof RenderContext) { RenderContext r = (RenderContext) ctx; + else if (ctx instanceof RenderContext r) { ParamType paramType = ctx.paramType(); if (isInline(ctx)) diff --git a/jOOQ/src/main/java/org/jooq/impl/VarPop.java b/jOOQ/src/main/java/org/jooq/impl/VarPop.java index 716c7fed91..c52ad24868 100644 --- a/jOOQ/src/main/java/org/jooq/impl/VarPop.java +++ b/jOOQ/src/main/java/org/jooq/impl/VarPop.java @@ -174,7 +174,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.VarPop) { QOM.VarPop o = (QOM.VarPop) that; + if (that instanceof QOM.VarPop o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/VarSamp.java b/jOOQ/src/main/java/org/jooq/impl/VarSamp.java index 3bca1108ff..9f13cb983e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/VarSamp.java +++ b/jOOQ/src/main/java/org/jooq/impl/VarSamp.java @@ -162,7 +162,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.VarSamp) { QOM.VarSamp o = (QOM.VarSamp) that; + if (that instanceof QOM.VarSamp o) { return StringUtils.equals($field(), o.$field()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/VersionImpl.java b/jOOQ/src/main/java/org/jooq/impl/VersionImpl.java index fcdbae2881..f132b4aa6d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/VersionImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/VersionImpl.java @@ -258,7 +258,7 @@ final class VersionImpl extends AbstractNode implements Version { return "-- Version: " + id() + "\n" + meta(); } - private static final /* record */ class Parent { private final VersionImpl version; private final Queries queries; public Parent(VersionImpl version, Queries queries) { this.version = version; this.queries = queries; } public VersionImpl version() { return version; } public Queries queries() { return queries; } @Override public boolean equals(Object o) { if (!(o instanceof Parent)) return false; Parent other = (Parent) o; if (!java.util.Objects.equals(this.version, other.version)) return false; if (!java.util.Objects.equals(this.queries, other.queries)) return false; return true; } @Override public int hashCode() { return java.util.Objects.hash(this.version, this.queries); } + private static final record Parent(VersionImpl version, Queries queries) { @Override public String toString() { return version.toString(); diff --git a/jOOQ/src/main/java/org/jooq/impl/WidthBucket.java b/jOOQ/src/main/java/org/jooq/impl/WidthBucket.java index 4040a2ef24..13f0e71105 100644 --- a/jOOQ/src/main/java/org/jooq/impl/WidthBucket.java +++ b/jOOQ/src/main/java/org/jooq/impl/WidthBucket.java @@ -227,7 +227,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.WidthBucket) { QOM.WidthBucket o = (QOM.WidthBucket) that; + if (that instanceof QOM.WidthBucket o) { return StringUtils.equals($field(), o.$field()) && StringUtils.equals($low(), o.$low()) && diff --git a/jOOQ/src/main/java/org/jooq/impl/XMLComment.java b/jOOQ/src/main/java/org/jooq/impl/XMLComment.java index b394aadd71..7674d5b9dd 100644 --- a/jOOQ/src/main/java/org/jooq/impl/XMLComment.java +++ b/jOOQ/src/main/java/org/jooq/impl/XMLComment.java @@ -168,7 +168,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.XMLComment) { QOM.XMLComment o = (QOM.XMLComment) that; + if (that instanceof QOM.XMLComment o) { return StringUtils.equals($comment(), o.$comment()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/XMLForest.java b/jOOQ/src/main/java/org/jooq/impl/XMLForest.java index fb9201ffe5..8aad021129 100644 --- a/jOOQ/src/main/java/org/jooq/impl/XMLForest.java +++ b/jOOQ/src/main/java/org/jooq/impl/XMLForest.java @@ -163,7 +163,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.XMLForest) { QOM.XMLForest o = (QOM.XMLForest) that; + if (that instanceof QOM.XMLForest o) { return StringUtils.equals($fields(), o.$fields()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/XMLHandler.java b/jOOQ/src/main/java/org/jooq/impl/XMLHandler.java index 66fe68acf3..729243f9ed 100644 --- a/jOOQ/src/main/java/org/jooq/impl/XMLHandler.java +++ b/jOOQ/src/main/java/org/jooq/impl/XMLHandler.java @@ -110,7 +110,7 @@ final class XMLHandler extends DefaultHandler { // [#12134] Patch base64 encoded binary values for (int i = 0; i < fields.size(); i++) { if (fields.get(i).getDataType().isBinary()) { - if (values.get(i) instanceof String) { String s = (String) values.get(i); + if (values.get(i) instanceof String s) { diff --git a/jOOQ/src/main/java/org/jooq/impl/Xmlconcat.java b/jOOQ/src/main/java/org/jooq/impl/Xmlconcat.java index 8803642272..c1da56164a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Xmlconcat.java +++ b/jOOQ/src/main/java/org/jooq/impl/Xmlconcat.java @@ -171,7 +171,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.XMLConcat) { QOM.XMLConcat o = (QOM.XMLConcat) that; + if (that instanceof QOM.XMLConcat o) { return StringUtils.equals($args(), o.$args()) ; diff --git a/jOOQ/src/main/java/org/jooq/impl/Xmlpi.java b/jOOQ/src/main/java/org/jooq/impl/Xmlpi.java index 0ffa96919d..a508b00a8a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Xmlpi.java +++ b/jOOQ/src/main/java/org/jooq/impl/Xmlpi.java @@ -195,7 +195,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.XMLPi) { QOM.XMLPi o = (QOM.XMLPi) that; + if (that instanceof QOM.XMLPi o) { return StringUtils.equals($target(), o.$target()) && StringUtils.equals($content(), o.$content()) diff --git a/jOOQ/src/main/java/org/jooq/impl/Xmlserialize.java b/jOOQ/src/main/java/org/jooq/impl/Xmlserialize.java index 86debaeeac..f1c8bfdf62 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Xmlserialize.java +++ b/jOOQ/src/main/java/org/jooq/impl/Xmlserialize.java @@ -206,7 +206,7 @@ implements @Override public boolean equals(Object that) { - if (that instanceof QOM.XMLSerialize) { QOM.XMLSerialize o = (QOM.XMLSerialize) that; + if (that instanceof QOM.XMLSerialize o) { return $content() == o.$content() && StringUtils.equals($value(), o.$value()) && diff --git a/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java b/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java index 1c4dd866a0..9833aff6aa 100644 --- a/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java +++ b/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java @@ -292,7 +292,7 @@ public class LoggerListener implements ExecuteListener { if (context.renderContext() != null) { QueryPart part = context.queryPart(); - if (part instanceof Param) { Param param = (Param) part; + if (part instanceof Param param) { Object value = param.getValue(); if (value instanceof String && ((String) value).length() > maxLength) { diff --git a/jOOQ/src/main/java/org/jooq/tools/jdbc/MockConnectionProvider.java b/jOOQ/src/main/java/org/jooq/tools/jdbc/MockConnectionProvider.java index 60dbaef6eb..191a79baf8 100644 --- a/jOOQ/src/main/java/org/jooq/tools/jdbc/MockConnectionProvider.java +++ b/jOOQ/src/main/java/org/jooq/tools/jdbc/MockConnectionProvider.java @@ -77,8 +77,8 @@ public class MockConnectionProvider implements ConnectionProvider { @Override public final void release(Connection connection) { - if (connection instanceof MockConnectionWrapper) - delegate.release(((MockConnectionWrapper) connection).connection); + if (connection instanceof MockConnectionWrapper w) + delegate.release(w.connection); else throw new IllegalArgumentException("Argument connection must be a MockConnectionWrapper"); } diff --git a/jOOQ/src/main/java/org/jooq/tools/jdbc/MockResultSetMetaData.java b/jOOQ/src/main/java/org/jooq/tools/jdbc/MockResultSetMetaData.java index 5b410a0dc3..bdd4e26507 100644 --- a/jOOQ/src/main/java/org/jooq/tools/jdbc/MockResultSetMetaData.java +++ b/jOOQ/src/main/java/org/jooq/tools/jdbc/MockResultSetMetaData.java @@ -162,7 +162,7 @@ public class MockResultSetMetaData implements ResultSetMetaData, Serializable { rs.checkNotClosed(); Field field = rs.result.field(column - 1); - if (field instanceof TableField) { TableField f = (TableField) field; + if (field instanceof TableField f) { Table table = f.getTable(); if (table != null) { @@ -208,7 +208,7 @@ public class MockResultSetMetaData implements ResultSetMetaData, Serializable { rs.checkNotClosed(); Field field = rs.result.field(column - 1); - if (field instanceof TableField) { TableField f = (TableField) field; + if (field instanceof TableField f) { Table table = f.getTable(); if (table != null) diff --git a/jOOQ/src/main/java/org/jooq/util/jaxb/tools/XMLBuilder.java b/jOOQ/src/main/java/org/jooq/util/jaxb/tools/XMLBuilder.java index 53d2923048..1df6ce3835 100644 --- a/jOOQ/src/main/java/org/jooq/util/jaxb/tools/XMLBuilder.java +++ b/jOOQ/src/main/java/org/jooq/util/jaxb/tools/XMLBuilder.java @@ -94,8 +94,8 @@ public final class XMLBuilder { if (list != null) { openTag(wrappingElementName).newLine().indent(); for (Object o : list) { - if (o instanceof XMLAppendable) - append(elementName, (XMLAppendable) o); + if (o instanceof XMLAppendable x) + append(elementName, x); else append(elementName, o); } diff --git a/jOOQ/src/main/java/org/jooq/util/postgres/PostgresUtils.java b/jOOQ/src/main/java/org/jooq/util/postgres/PostgresUtils.java index 359d93d3d0..5d8255af90 100644 --- a/jOOQ/src/main/java/org/jooq/util/postgres/PostgresUtils.java +++ b/jOOQ/src/main/java/org/jooq/util/postgres/PostgresUtils.java @@ -244,8 +244,8 @@ public class PostgresUtils { public static DayToSecond toDayToSecond(Object pgInterval) { if (pgInterval == null) return null; - else if (pgInterval instanceof PGInterval) - return toDayToSecond((PGInterval) pgInterval); + else if (pgInterval instanceof PGInterval i) + return toDayToSecond(i); else return toDayToSecond(new PGInterval(pgInterval.toString())); } @@ -280,8 +280,8 @@ public class PostgresUtils { public static YearToMonth toYearToMonth(Object pgInterval) { if (pgInterval == null) return null; - else if (pgInterval instanceof PGInterval) - return toYearToMonth((PGInterval) pgInterval); + else if (pgInterval instanceof PGInterval i) + return toYearToMonth(i); else return toYearToMonth(new PGInterval(pgInterval.toString())); } diff --git a/pom.xml b/pom.xml index 8499840277..3472aea617 100644 --- a/pom.xml +++ b/pom.xml @@ -578,12 +578,12 @@ 256m UTF-8 - 11 + 17 - 11 - 11 + 17 + 17 true lines,vars,source