This is an automated email from the ASF dual-hosted git repository.
mariofusco pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-drools.git
The following commit(s) were added to refs/heads/main by this push:
new 0c0b3e5d6e bump java to 17 + use new java feature in drools-base
(#5638)
0c0b3e5d6e is described below
commit 0c0b3e5d6e1a02ed46f1c31de359ac876997834b
Author: Mario Fusco <[email protected]>
AuthorDate: Wed Dec 20 17:53:54 2023 +0100
bump java to 17 + use new java feature in drools-base (#5638)
* bump java to 17 + use new java feature in drools-base
* wip
---
build-parent/pom.xml | 2 +-
.../extractors/BaseObjectClassFieldReader.java | 136 ++++++++-------------
.../base/common/DroolsObjectInputStream.java | 10 +-
.../drools/base/common/RuleBasePartitionId.java | 2 +-
.../definitions/impl/KnowledgePackageImpl.java | 4 +-
.../base/definitions/rule/impl/RuleImpl.java | 11 +-
.../base/facttemplates/FactTemplateObjectType.java | 4 +-
.../org/drools/base/rule/LogicTransformer.java | 31 ++---
.../main/java/org/drools/base/rule/Pattern.java | 6 +-
.../java/org/drools/base/rule/QueryArgument.java | 4 +-
.../org/drools/base/rule/SingleAccumulate.java | 6 +-
.../rule/accessor/DeclarationScopeResolver.java | 14 +--
.../drools/base/rule/accessor/GlobalExtractor.java | 8 +-
.../base/rule/accessor/PatternExtractor.java | 4 +-
.../base/rule/constraint/QueryNameConstraint.java | 2 +-
.../base/rule/constraint/XpathConstraint.java | 16 +--
.../org/drools/base/util/TimeIntervalParser.java | 24 ++--
.../base/util/index/ConstraintTypeOperator.java | 2 +-
.../efesto-compilation-manager-core/pom.xml | 12 --
19 files changed, 124 insertions(+), 174 deletions(-)
diff --git a/build-parent/pom.xml b/build-parent/pom.xml
index 49ac000876..1a9c8d4d3f 100644
--- a/build-parent/pom.xml
+++ b/build-parent/pom.xml
@@ -35,7 +35,7 @@
<properties>
- <maven.compiler.release>11</maven.compiler.release>
+ <maven.compiler.release>17</maven.compiler.release>
<maven.compiler.source>${maven.compiler.release}</maven.compiler.source>
<maven.compiler.target>${maven.compiler.release}</maven.compiler.target>
diff --git
a/drools-base/src/main/java/org/drools/base/base/extractors/BaseObjectClassFieldReader.java
b/drools-base/src/main/java/org/drools/base/base/extractors/BaseObjectClassFieldReader.java
index a57546787d..a23083ef84 100755
---
a/drools-base/src/main/java/org/drools/base/base/extractors/BaseObjectClassFieldReader.java
+++
b/drools-base/src/main/java/org/drools/base/base/extractors/BaseObjectClassFieldReader.java
@@ -41,134 +41,109 @@ public abstract class BaseObjectClassFieldReader extends
BaseClassFieldReader {
valueType );
}
- public abstract Object getValue(ValueResolver valueResolver,
- Object object);
+ public abstract Object getValue(ValueResolver valueResolver, Object
object);
- public boolean getBooleanValue(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
+ public boolean getBooleanValue(ValueResolver valueResolver, Object object)
{
+ final Object value = getValue( valueResolver, object );
- if ( value instanceof Boolean ) {
- return ((Boolean) value).booleanValue();
+ if ( value instanceof Boolean b ) {
+ return b.booleanValue();
}
throw new RuntimeException( "Conversion to boolean not supported from
" + getExtractToClass().getName() );
}
- public byte getByteValue(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
+ public byte getByteValue(ValueResolver valueResolver, Object object) {
+ final Object value = getValue( valueResolver, object );
- if ( value instanceof Character ) {
- return (byte) ((Character) value).charValue();
+ if ( value instanceof Character c ) {
+ return (byte) c.charValue();
}
throw new RuntimeException( "Conversion to byte not supported from " +
getExtractToClass().getName());
}
- public char getCharValue(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
+ public char getCharValue(ValueResolver valueResolver, Object object) {
+ final Object value = getValue( valueResolver, object );
- if ( value instanceof Character ) {
- return ((Character) value).charValue();
+ if ( value instanceof Character c ) {
+ return c.charValue();
}
throw new RuntimeException( "Conversion to char not supported from " +
getExtractToClass().getName() );
}
- public double getDoubleValue(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
+ public double getDoubleValue(ValueResolver valueResolver, Object object) {
+ final Object value = getValue( valueResolver, object );
- if( value instanceof Character ) {
- return ((Character) value).charValue();
- } else if ( value instanceof Number ) {
- return ((Number) value).doubleValue();
+ if( value instanceof Character c ) {
+ return c.charValue();
+ } else if ( value instanceof Number n ) {
+ return n.doubleValue();
}
throw new RuntimeException( "Conversion to double not supported from "
+ getExtractToClass().getName() );
}
- public float getFloatValue(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
+ public float getFloatValue(ValueResolver valueResolver, Object object) {
+ final Object value = getValue( valueResolver, object );
- if( value instanceof Character ) {
- return ((Character) value).charValue();
- } else if ( value instanceof Number ) {
- return ((Number) value).floatValue();
+ if( value instanceof Character c ) {
+ return c.charValue();
+ } else if ( value instanceof Number n ) {
+ return n.floatValue();
}
throw new RuntimeException( "Conversion to float not supported from "
+ getExtractToClass().getName() );
}
- public int getIntValue(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
+ public int getIntValue(ValueResolver valueResolver, Object object) {
+ final Object value = getValue( valueResolver, object );
- if( value instanceof Character ) {
- return ((Character) value).charValue();
- } else if ( value instanceof Number ) {
- return ((Number) value).intValue();
+ if( value instanceof Character c ) {
+ return c.charValue();
+ } else if ( value instanceof Number n ) {
+ return n.intValue();
}
throw new RuntimeException( "Conversion to int not supported from " +
getExtractToClass().getName() );
}
- public long getLongValue(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
-
- if( value instanceof Character ) {
- return ((Character) value).charValue();
- } else if ( value instanceof Number ) {
- return ((Number) value).longValue();
- } else if ( value instanceof Date ) {
- return ((Date) value).getTime();
+ public long getLongValue(ValueResolver valueResolver, Object object) {
+ final Object value = getValue( valueResolver, object );
+
+ if( value instanceof Character c ) {
+ return c.charValue();
+ } else if ( value instanceof Number n ) {
+ return n.longValue();
+ } else if ( value instanceof Date d ) {
+ return d.getTime();
}
throw new RuntimeException( "Conversion to long not supported from " +
getExtractToClass().getName() );
}
- public short getShortValue(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
+ public boolean isNullValue(ValueResolver valueResolver, Object object) {
+ return object == null || getValue( valueResolver, object ) == null;
+ }
+
+ public short getShortValue(ValueResolver valueResolver, Object object) {
+ final Object value = getValue( valueResolver, object );
- if( value instanceof Character ) {
- return (short) ((Character) value).charValue();
- } else if ( value instanceof Number ) {
- return ((Number) value).shortValue();
+ if( value instanceof Character c ) {
+ return (short) c.charValue();
+ } else if ( value instanceof Number n ) {
+ return n.shortValue();
}
throw new RuntimeException( "Conversion to short not supported from "
+ getExtractToClass().getName() );
}
- public boolean isNullValue(ValueResolver valueResolver,
- final Object object) {
- if ( object == null ) {
- return true;
- } else {
- return getValue( valueResolver,
- object ) == null;
- }
- }
-
public Method getNativeReadMethod() {
try {
- return this.getClass().getMethod(getNativeReadMethodName(),
- ValueResolver.class,
Object.class);
+ return this.getClass().getMethod(getNativeReadMethodName(),
ValueResolver.class, Object.class);
} catch ( final Exception e ) {
- throw new RuntimeException( "This is a bug. Please report to
development team: " + e.getMessage(),
- e );
+ throw new RuntimeException( "This is a bug. Please report to
development team: " + e.getMessage(), e );
}
}
@@ -180,11 +155,8 @@ public abstract class BaseObjectClassFieldReader extends
BaseClassFieldReader {
return "get" + type.getName().substring(0, 1).toUpperCase() +
type.getName().substring(1) + "Value";
}
- public int getHashCode(ValueResolver valueResolver,
- final Object object) {
- final Object value = getValue( valueResolver,
- object );
+ public int getHashCode(ValueResolver valueResolver, Object object) {
+ final Object value = getValue( valueResolver, object );
return (value != null) ? value.hashCode() : 0;
}
-
}
diff --git
a/drools-base/src/main/java/org/drools/base/common/DroolsObjectInputStream.java
b/drools-base/src/main/java/org/drools/base/common/DroolsObjectInputStream.java
index dbadff5b4f..2763557b95 100644
---
a/drools-base/src/main/java/org/drools/base/common/DroolsObjectInputStream.java
+++
b/drools-base/src/main/java/org/drools/base/common/DroolsObjectInputStream.java
@@ -44,9 +44,9 @@ public class DroolsObjectInputStream extends ObjectInputStream
private Package pkg;
private ReadAccessorSupplier store;
- private Map<AccessorKey, List<Consumer<ReadAccessor>>> extractorBinders =
new HashMap<>();
+ private final Map<AccessorKey, List<Consumer<ReadAccessor>>>
extractorBinders = new HashMap<>();
- private Map<String, Object> customExtensions = new HashMap<>();
+ private final Map<String, Object> customExtensions = new HashMap<>();
private final Map<String, Object> clonedByIdentity;
@@ -131,12 +131,12 @@ public class DroolsObjectInputStream extends
ObjectInputStream
public void readExtractor( Consumer<ReadAccessor> binder ) throws
ClassNotFoundException, IOException {
Object accessor = readObject();
- if (accessor instanceof AccessorKey ) {
- ReadAccessor reader = store != null ?
store.getReader((AccessorKey) accessor) : null;
+ if (accessor instanceof AccessorKey key) {
+ ReadAccessor reader = store != null ? store.getReader(key) : null;
if (reader == null) {
// when an accessor is used in a query it may have been
defined in a different package and that package
// couldn't have been deserialized yet, so delay this binding
at the end of the deserialization process
- extractorBinders.computeIfAbsent( (AccessorKey) accessor, k ->
new ArrayList<>() ).add( binder );
+ extractorBinders.computeIfAbsent( key, k -> new ArrayList<>()
).add( binder );
} else {
binder.accept( reader );
}
diff --git
a/drools-base/src/main/java/org/drools/base/common/RuleBasePartitionId.java
b/drools-base/src/main/java/org/drools/base/common/RuleBasePartitionId.java
index 92c1c51c0c..a467881910 100644
--- a/drools-base/src/main/java/org/drools/base/common/RuleBasePartitionId.java
+++ b/drools-base/src/main/java/org/drools/base/common/RuleBasePartitionId.java
@@ -49,7 +49,7 @@ public final class RuleBasePartitionId {
@Override
public boolean equals(Object obj) {
- return this == obj || (obj instanceof RuleBasePartitionId && id ==
((RuleBasePartitionId)obj).id);
+ return this == obj || (obj instanceof RuleBasePartitionId o && id ==
o.id);
}
@Override
diff --git
a/drools-base/src/main/java/org/drools/base/definitions/impl/KnowledgePackageImpl.java
b/drools-base/src/main/java/org/drools/base/definitions/impl/KnowledgePackageImpl.java
index e8b9004e0b..f2dc9e3b3f 100644
---
a/drools-base/src/main/java/org/drools/base/definitions/impl/KnowledgePackageImpl.java
+++
b/drools-base/src/main/java/org/drools/base/definitions/impl/KnowledgePackageImpl.java
@@ -809,8 +809,8 @@ public class KnowledgePackageImpl
// if the classloader isn't changed there's no need for a clone
return this;
}
- if (originalClassLoader instanceof ProjectClassLoader) {
- ((ProjectClassLoader)
classLoader).initFrom((ProjectClassLoader) originalClassLoader);
+ if (originalClassLoader instanceof ProjectClassLoader ocl) {
+ ocl.initFrom((ProjectClassLoader) originalClassLoader);
}
}
diff --git
a/drools-base/src/main/java/org/drools/base/definitions/rule/impl/RuleImpl.java
b/drools-base/src/main/java/org/drools/base/definitions/rule/impl/RuleImpl.java
index 4cef19022b..1a2add11c0 100644
---
a/drools-base/src/main/java/org/drools/base/definitions/rule/impl/RuleImpl.java
+++
b/drools-base/src/main/java/org/drools/base/definitions/rule/impl/RuleImpl.java
@@ -596,17 +596,16 @@ public class RuleImpl implements Externalizable,
}
public void wire(Object object) {
- if ( object instanceof Consequence ) {
- Consequence c = (Consequence) object;
+ if ( object instanceof Consequence c ) {
if ( DEFAULT_CONSEQUENCE_NAME.equals( c.getName() ) ) {
setConsequence( c );
} else {
addNamedConsequence(c.getName(), c);
}
- } else if ( object instanceof Salience ) {
- setSalience( (Salience) object );
- } else if ( object instanceof Enabled ) {
- setEnabled( (Enabled) object );
+ } else if ( object instanceof Salience s ) {
+ setSalience( s );
+ } else if ( object instanceof Enabled e ) {
+ setEnabled( e );
}
}
diff --git
a/drools-base/src/main/java/org/drools/base/facttemplates/FactTemplateObjectType.java
b/drools-base/src/main/java/org/drools/base/facttemplates/FactTemplateObjectType.java
index 1ba8674854..cd782deed0 100644
---
a/drools-base/src/main/java/org/drools/base/facttemplates/FactTemplateObjectType.java
+++
b/drools-base/src/main/java/org/drools/base/facttemplates/FactTemplateObjectType.java
@@ -87,8 +87,8 @@ public class FactTemplateObjectType
* object type, else <code>false</code>.
*/
public boolean matches(final Object object) {
- if ( object instanceof Fact ) {
- return this.factTemplate.equals( ((Fact) object).getFactTemplate()
);
+ if ( object instanceof Fact f ) {
+ return this.factTemplate.equals( f.getFactTemplate() );
} else {
return false;
}
diff --git
a/drools-base/src/main/java/org/drools/base/rule/LogicTransformer.java
b/drools-base/src/main/java/org/drools/base/rule/LogicTransformer.java
index 86607a8ca3..245ba32009 100644
--- a/drools-base/src/main/java/org/drools/base/rule/LogicTransformer.java
+++ b/drools-base/src/main/java/org/drools/base/rule/LogicTransformer.java
@@ -160,8 +160,7 @@ public class LogicTransformer {
private void processElement(final DeclarationScopeResolver resolver,
final Deque<RuleConditionElement> contextList,
final RuleConditionElement element) {
- if ( element instanceof Pattern ) {
- Pattern pattern = (Pattern) element;
+ if ( element instanceof Pattern pattern ) {
for ( RuleConditionElement ruleConditionElement :
pattern.getNestedElements() ) {
processElement( resolver,
contextList,
@@ -174,18 +173,17 @@ public class LogicTransformer {
replaceDeclarations( resolver, pattern, constraint );
}
- } else if ( element instanceof EvalCondition ) {
- processEvalCondition(resolver, (EvalCondition) element);
+ } else if ( element instanceof EvalCondition eval ) {
+ processEvalCondition(resolver, eval);
- } else if ( element instanceof Accumulate ) {
+ } else if ( element instanceof Accumulate accumulate ) {
for ( RuleConditionElement rce : element.getNestedElements() ) {
processElement( resolver, contextList, rce );
}
- Accumulate accumulate = (Accumulate)element;
replaceDeclarations( resolver, accumulate );
- } else if ( element instanceof From ) {
- DataProvider provider = ((From) element).getDataProvider();
+ } else if ( element instanceof From from ) {
+ DataProvider provider = from.getDataProvider();
Declaration[] decl = provider.getRequiredDeclarations();
for (Declaration aDecl : decl) {
Declaration resolved =
resolver.getDeclaration(aDecl.getIdentifier());
@@ -202,8 +200,7 @@ public class LogicTransformer {
}
}
- } else if ( element instanceof QueryElement ) {
- QueryElement qe = ( QueryElement ) element;
+ } else if ( element instanceof QueryElement qe ) {
Pattern pattern = qe.getResultPattern();
for ( Entry<String, Declaration> entry :
pattern.getInnerDeclarations().entrySet() ) {
@@ -239,8 +236,8 @@ public class LogicTransformer {
}
qe.setVariableIndexes( toIntArray( varIndexes ) );
- } else if ( element instanceof ConditionalBranch ) {
- processBranch( resolver, (ConditionalBranch) element );
+ } else if ( element instanceof ConditionalBranch cb ) {
+ processBranch( resolver, cb );
} else {
contextList.push( element );
@@ -359,9 +356,7 @@ public class LogicTransformer {
ce.pack();
for (Object child : ce.getChildren().toArray()) {
- if (child instanceof GroupElement) {
- final GroupElement group = (GroupElement) child;
-
+ if (child instanceof GroupElement group) {
processTree(group, result);
if ((group.isOr() || group.isAnd()) && group.getType() ==
ce.getType()) {
group.pack(ce);
@@ -433,9 +428,9 @@ public class LogicTransformer {
int permutations = 1;
int index = 0;
for (final RuleConditionElement child : parent.getChildren()) {
- if ((child instanceof GroupElement) && ((GroupElement)
child).isOr()) {
- permutations *= ((GroupElement)
child).getChildren().size();
- orsList.add((GroupElement)child);
+ if ( child instanceof GroupElement ge && ge.isOr()) {
+ permutations *= ge.getChildren().size();
+ orsList.add(ge);
} else {
others[index] = child;
}
diff --git a/drools-base/src/main/java/org/drools/base/rule/Pattern.java
b/drools-base/src/main/java/org/drools/base/rule/Pattern.java
index 4425cc29ba..98aef78ff6 100644
--- a/drools-base/src/main/java/org/drools/base/rule/Pattern.java
+++ b/drools-base/src/main/java/org/drools/base/rule/Pattern.java
@@ -127,8 +127,8 @@ public class Pattern implements RuleConditionElement,
AcceptsClassObjectType, Ex
tupleIndex = in.readInt();
objectIndex = in.readInt();
listenedProperties = (Collection<String>) in.readObject();
- if ( source instanceof From ) {
- ((From)source).setResultPattern( this );
+ if ( source instanceof From from ) {
+ from.setResultPattern( this );
}
annotations = (Map<String,AnnotationDefinition>) in.readObject();
passive = in.readBoolean();
@@ -558,7 +558,7 @@ public class Pattern implements RuleConditionElement,
AcceptsClassObjectType, Ex
}
private Class<?> getPatternType() {
- return objectType instanceof ClassObjectType ?
((ClassObjectType)objectType).getClassType() : null;
+ return objectType instanceof ClassObjectType cot ? cot.getClassType()
: null;
}
private static boolean isIterable(Class<?> clazz) {
diff --git a/drools-base/src/main/java/org/drools/base/rule/QueryArgument.java
b/drools-base/src/main/java/org/drools/base/rule/QueryArgument.java
index 0b7007ba12..74722c2148 100644
--- a/drools-base/src/main/java/org/drools/base/rule/QueryArgument.java
+++ b/drools-base/src/main/java/org/drools/base/rule/QueryArgument.java
@@ -36,8 +36,8 @@ public interface QueryArgument extends Externalizable {
static Object evaluateDeclaration( ValueResolver valueResolver, BaseTuple
tuple, Declaration declaration ) {
Object tupleObject = tuple.get( declaration ).getObject();
- if (tupleObject instanceof DroolsQuery &&
declaration.getExtractor().getIndex() >= 0 &&
- ( (DroolsQuery) tupleObject
).getVariables()[declaration.getExtractor().getIndex()] != null ) {
+ if (tupleObject instanceof DroolsQuery query &&
declaration.getExtractor().getIndex() >= 0 &&
+ query.getVariables()[declaration.getExtractor().getIndex()] !=
null ) {
return Variable.v;
}
return declaration.getValue( valueResolver, tupleObject );
diff --git
a/drools-base/src/main/java/org/drools/base/rule/SingleAccumulate.java
b/drools-base/src/main/java/org/drools/base/rule/SingleAccumulate.java
index 26c67aee8c..68fe4f1c69 100644
--- a/drools-base/src/main/java/org/drools/base/rule/SingleAccumulate.java
+++ b/drools-base/src/main/java/org/drools/base/rule/SingleAccumulate.java
@@ -140,10 +140,8 @@ public class SingleAccumulate extends Accumulate {
}
public SingleAccumulate clone() {
- RuleConditionElement clonedSource = source instanceof GroupElement ?
((GroupElement) source).cloneOnlyGroup() : source.clone();
- SingleAccumulate clone = new SingleAccumulate( clonedSource,
-
this.requiredDeclarations,
- this.accumulator );
+ RuleConditionElement clonedSource = source instanceof GroupElement ge
? ge.cloneOnlyGroup() : source.clone();
+ SingleAccumulate clone = new SingleAccumulate( clonedSource,
this.requiredDeclarations, this.accumulator );
registerClone(clone);
return clone;
}
diff --git
a/drools-base/src/main/java/org/drools/base/rule/accessor/DeclarationScopeResolver.java
b/drools-base/src/main/java/org/drools/base/rule/accessor/DeclarationScopeResolver.java
index 65a573a6f4..7bd22b64cb 100644
---
a/drools-base/src/main/java/org/drools/base/rule/accessor/DeclarationScopeResolver.java
+++
b/drools-base/src/main/java/org/drools/base/rule/accessor/DeclarationScopeResolver.java
@@ -205,7 +205,7 @@ public class DeclarationScopeResolver {
if ( declaration != null ) {
// if it is an OR and it is duplicated, we can stop looking
for duplication now
// as it is a separate logical branch
- boolean inOr = ((rce instanceof GroupElement) &&
((GroupElement) rce).isOr());
+ boolean inOr = (rce instanceof GroupElement ge && ge.isOr());
if ( ! inOr || type == null ) {
return ! inOr;
}
@@ -216,8 +216,7 @@ public class DeclarationScopeResolver {
if ( rule != null && rule.getParent() != null ) {
// recursive algorithm for each parent
// -> lhs.getInnerDeclarations()
- Declaration parentDeclaration = getExtendedDeclaration(
rule.getParent(),
- name );
+ Declaration parentDeclaration = getExtendedDeclaration(
rule.getParent(), name );
return null != parentDeclaration;
}
return false;
@@ -235,14 +234,14 @@ public class DeclarationScopeResolver {
Map<String, Declaration> declarations = new HashMap<>();
for (RuleConditionElement aBuildList : this.buildList) {
// if we are inside of an OR we don't want each previous stack
entry added because we can't see those variables
- if (aBuildList instanceof GroupElement &&
((GroupElement)aBuildList).getType() == GroupElement.Type.OR) {
+ if (aBuildList instanceof GroupElement ge && ge.getType() ==
GroupElement.Type.OR) {
continue;
}
// this may be optimized in the future to only re-add elements at
// scope breaks, like "NOT" and "EXISTS"
- Map<String,Declaration> innerDeclarations = aBuildList instanceof
GroupElement ?
-
((GroupElement)aBuildList).getInnerDeclarations(consequenceName) :
+ Map<String,Declaration> innerDeclarations = aBuildList instanceof
GroupElement ge ?
+ ge.getInnerDeclarations(consequenceName) :
aBuildList.getInnerDeclarations();
declarations.putAll(innerDeclarations);
}
@@ -279,8 +278,7 @@ public class DeclarationScopeResolver {
private Pattern findPatternInNestedElements(final int id,
final RuleConditionElement
rce) {
for ( RuleConditionElement element : rce.getNestedElements() ) {
- if ( element instanceof Pattern ) {
- Pattern p = (Pattern) element;
+ if ( element instanceof Pattern p ) {
if (p.getPatternId() == id ) {
return p;
}
diff --git
a/drools-base/src/main/java/org/drools/base/rule/accessor/GlobalExtractor.java
b/drools-base/src/main/java/org/drools/base/rule/accessor/GlobalExtractor.java
index 58005d255b..fb4808e5fd 100755
---
a/drools-base/src/main/java/org/drools/base/rule/accessor/GlobalExtractor.java
+++
b/drools-base/src/main/java/org/drools/base/rule/accessor/GlobalExtractor.java
@@ -88,8 +88,8 @@ public class GlobalExtractor extends
BaseObjectClassFieldReader
public Class< ? > getExtractToClass() {
// @todo : this is a bit nasty, but does the trick
- if ( this.objectType instanceof ClassObjectType ) {
- return ((ClassObjectType) this.objectType).getClassType();
+ if ( this.objectType instanceof ClassObjectType cot ) {
+ return cot.getClassType();
} else {
return Fact.class;
}
@@ -98,8 +98,8 @@ public class GlobalExtractor extends
BaseObjectClassFieldReader
public String getExtractToClassName() {
Class< ? > clazz;
// @todo : this is a bit nasty, but does the trick
- if ( this.objectType instanceof ClassObjectType ) {
- clazz = ((ClassObjectType) this.objectType).getClassType();
+ if ( this.objectType instanceof ClassObjectType cot ) {
+ clazz = cot.getClassType();
} else {
clazz = Fact.class;
}
diff --git
a/drools-base/src/main/java/org/drools/base/rule/accessor/PatternExtractor.java
b/drools-base/src/main/java/org/drools/base/rule/accessor/PatternExtractor.java
index e6f07b3a61..5981010738 100644
---
a/drools-base/src/main/java/org/drools/base/rule/accessor/PatternExtractor.java
+++
b/drools-base/src/main/java/org/drools/base/rule/accessor/PatternExtractor.java
@@ -46,8 +46,8 @@ public class PatternExtractor extends
BaseObjectClassFieldReader
public PatternExtractor(final ObjectType objectType) {
this.objectType = objectType;
- if (objectType instanceof ClassObjectType) {
- setClassObjectType((ClassObjectType) objectType);
+ if (objectType instanceof ClassObjectType cot) {
+ setClassObjectType(cot);
}
}
diff --git
a/drools-base/src/main/java/org/drools/base/rule/constraint/QueryNameConstraint.java
b/drools-base/src/main/java/org/drools/base/rule/constraint/QueryNameConstraint.java
index 401d152164..8880f8e818 100644
---
a/drools-base/src/main/java/org/drools/base/rule/constraint/QueryNameConstraint.java
+++
b/drools-base/src/main/java/org/drools/base/rule/constraint/QueryNameConstraint.java
@@ -143,7 +143,7 @@ public class QueryNameConstraint implements
@Override
public boolean equals(Object obj) {
- return obj instanceof QueryNameConstraint &&
queryName.equals(((QueryNameConstraint)obj).queryName);
+ return obj instanceof QueryNameConstraint qnc &&
queryName.equals(qnc.queryName);
}
@Override
diff --git
a/drools-base/src/main/java/org/drools/base/rule/constraint/XpathConstraint.java
b/drools-base/src/main/java/org/drools/base/rule/constraint/XpathConstraint.java
index 519baa71d7..0fd570f73d 100644
---
a/drools-base/src/main/java/org/drools/base/rule/constraint/XpathConstraint.java
+++
b/drools-base/src/main/java/org/drools/base/rule/constraint/XpathConstraint.java
@@ -195,13 +195,13 @@ public class XpathConstraint extends
MutableTypeConstraint<ContextEntry> {
private List<Object> evaluateObject(ValueResolver valueResolver,
BaseTuple leftBaseTuple, XpathChunk chunk, List<Object> list, Object object) {
Object result = chunk.evaluate(object);
- if (!chunk.lazy && result instanceof ReactiveObject) {
- ((ReactiveObject) result).addTuple(leftBaseTuple);
+ if (!chunk.lazy && result instanceof ReactiveObject ro) {
+ ro.addTuple(leftBaseTuple);
}
- if (chunk.iterate && result instanceof Iterable) {
- for (Object value : (Iterable<?>) result) {
- if (!chunk.lazy && value instanceof ReactiveObject) {
- ((ReactiveObject) value).addTuple(leftBaseTuple);
+ if (chunk.iterate && result instanceof Iterable i) {
+ for (Object value : i) {
+ if (!chunk.lazy && value instanceof ReactiveObject ro) {
+ ro.addTuple(leftBaseTuple);
}
if (value != null) {
list.add(value);
@@ -380,8 +380,8 @@ public class XpathConstraint extends
MutableTypeConstraint<ContextEntry> {
private Class<?> getParametricType(Method accessor) {
Type returnedType = accessor.getGenericReturnType();
- if (returnedType instanceof ParameterizedType) {
- Type[] parametricType = ((ParameterizedType)
returnedType).getActualTypeArguments();
+ if (returnedType instanceof ParameterizedType pt) {
+ Type[] parametricType = pt.getActualTypeArguments();
if (parametricType.length > 0) {
return parametricType[0] instanceof Class ?
(Class<?>) parametricType[0] :
diff --git
a/drools-base/src/main/java/org/drools/base/util/TimeIntervalParser.java
b/drools-base/src/main/java/org/drools/base/util/TimeIntervalParser.java
index 8d89d95af1..a10add5988 100644
--- a/drools-base/src/main/java/org/drools/base/util/TimeIntervalParser.java
+++ b/drools-base/src/main/java/org/drools/base/util/TimeIntervalParser.java
@@ -54,24 +54,24 @@ public class TimeIntervalParser {
}
public static long getTimestampFromDate( Object obj ) {
- if (obj instanceof Long ) {
- return ( Long ) obj;
+ if (obj instanceof Long l ) {
+ return l;
}
- if (obj instanceof Date) {
- return ( (Date) obj ).getTime();
+ if (obj instanceof Date d) {
+ return d.getTime();
}
try {
- if (obj instanceof LocalDate) {
- return ((LocalDate)
obj).atStartOfDay().atZone(java.time.ZoneId.systemDefault()).toInstant().toEpochMilli();
+ if (obj instanceof LocalDate ld) {
+ return
ld.atStartOfDay().atZone(java.time.ZoneId.systemDefault()).toInstant().toEpochMilli();
}
- if (obj instanceof LocalDateTime) {
- return ((LocalDateTime)
obj).atZone(java.time.ZoneId.systemDefault()).toInstant().toEpochMilli();
+ if (obj instanceof LocalDateTime ldt) {
+ return
ldt.atZone(java.time.ZoneId.systemDefault()).toInstant().toEpochMilli();
}
- if (obj instanceof ZonedDateTime) {
- return ((ZonedDateTime) obj).toInstant().toEpochMilli();
+ if (obj instanceof ZonedDateTime zdt) {
+ return zdt.toInstant().toEpochMilli();
}
- if (obj instanceof Instant) {
- return ((Instant) obj).toEpochMilli();
+ if (obj instanceof Instant i) {
+ return i.toEpochMilli();
}
} catch (ArithmeticException ae) {
throw new RuntimeException("Cannot convert " +
obj.getClass().getSimpleName() + " '" + obj + "' into a long value");
diff --git
a/drools-base/src/main/java/org/drools/base/util/index/ConstraintTypeOperator.java
b/drools-base/src/main/java/org/drools/base/util/index/ConstraintTypeOperator.java
index 51e88d6c8b..66322da4d3 100644
---
a/drools-base/src/main/java/org/drools/base/util/index/ConstraintTypeOperator.java
+++
b/drools-base/src/main/java/org/drools/base/util/index/ConstraintTypeOperator.java
@@ -142,6 +142,6 @@ public enum ConstraintTypeOperator {
}
public static ConstraintTypeOperator getType(Constraint constraint) {
- return constraint instanceof IndexableConstraint ?
((IndexableConstraint) constraint).getConstraintType() : UNKNOWN;
+ return constraint instanceof IndexableConstraint ic ?
ic.getConstraintType() : UNKNOWN;
}
}
diff --git
a/efesto/efesto-core/efesto-compilation-manager/efesto-compilation-manager-core/pom.xml
b/efesto/efesto-core/efesto-compilation-manager/efesto-compilation-manager-core/pom.xml
index c7924cb8eb..fc8e91fd7c 100644
---
a/efesto/efesto-core/efesto-compilation-manager/efesto-compilation-manager-core/pom.xml
+++
b/efesto/efesto-core/efesto-compilation-manager/efesto-compilation-manager-core/pom.xml
@@ -23,18 +23,6 @@
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>11</source>
- <target>11</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
<parent>
<groupId>org.kie</groupId>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]