diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java index 0b4c138566..2bc5aac9cb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java @@ -97,7 +97,7 @@ abstract class AbstractField extends AbstractQueryPart implements Field { } // ------------------------------------------------------------------------ - // API (not implemented) + // XXX: API (not implemented) // ------------------------------------------------------------------------ @Override @@ -110,7 +110,7 @@ abstract class AbstractField extends AbstractQueryPart implements Field { public abstract boolean isNullLiteral(); // ------------------------------------------------------------------------ - // API + // XXX: API // ------------------------------------------------------------------------ @Override @@ -139,7 +139,7 @@ abstract class AbstractField extends AbstractQueryPart implements Field { } // ------------------------------------------------------------------------ - // Type casts + // XXX: Type casts // ------------------------------------------------------------------------ @Override @@ -166,7 +166,7 @@ abstract class AbstractField extends AbstractQueryPart implements Field { } // ------------------------------------------------------------------------ - // Conversion of field into a sort field + // XXX: Conversion of field into a sort field // ------------------------------------------------------------------------ @Override @@ -241,7 +241,7 @@ abstract class AbstractField extends AbstractQueryPart implements Field { } // ------------------------------------------------------------------------ - // Arithmetic operations + // XXX: Arithmetic operations // ------------------------------------------------------------------------ @Override @@ -308,7 +308,7 @@ abstract class AbstractField extends AbstractQueryPart implements Field { } // ------------------------------------------------------------------------ - // Conditions created from this field + // XXX: Conditions created from this field // ------------------------------------------------------------------------ @Override @@ -933,8 +933,8 @@ abstract class AbstractField extends AbstractQueryPart implements Field { } // ------------------------------------------------------------------------ - // Pre-2.0 API. This API is maintained for backwards-compatibility. It will - // be removed in the future. Consider using equivalent methods from + // XXX: Pre-2.0 API. This API is maintained for backwards-compatibility. It + // will be removed in the future. Consider using equivalent methods from // org.jooq.Factory // ------------------------------------------------------------------------ @@ -1602,4 +1602,16 @@ abstract class AbstractField extends AbstractQueryPart implements Field { public final Field coalesce(Field option, Field... options) { return Factory.coalesce(this, Utils.combine(option, options)); } + + // ------------------------------------------------------------------------ + // XXX: Object API + // ------------------------------------------------------------------------ + + @Override + public int hashCode() { + + // [#1938] This is a much more efficient hashCode() implementation + // compared to that of standard QueryParts + return name.hashCode(); + } } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java b/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java index 520f654c89..ef2714a1ff 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java @@ -717,4 +717,16 @@ public abstract class AbstractRoutine extends AbstractQueryPart implements Ro return function(local.render(), getDataType(), array); } } + + // ------------------------------------------------------------------------ + // XXX: Object API + // ------------------------------------------------------------------------ + + @Override + public int hashCode() { + + // [#1938] This is a much more efficient hashCode() implementation + // compared to that of standard QueryParts + return name.hashCode(); + } } diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java b/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java index 2267aa7c5e..81c5847cf4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java @@ -369,4 +369,16 @@ abstract class AbstractTable extends AbstractFieldProviderQuer public final Table naturalRightOuterJoin(String sql, QueryPart... parts) { return naturalRightOuterJoin(table(sql, parts)); } + + // ------------------------------------------------------------------------ + // XXX: Object API + // ------------------------------------------------------------------------ + + @Override + public int hashCode() { + + // [#1938] This is a much more efficient hashCode() implementation + // compared to that of standard QueryParts + return name.hashCode(); + } } diff --git a/jOOQ/src/main/java/org/jooq/impl/PackageImpl.java b/jOOQ/src/main/java/org/jooq/impl/PackageImpl.java index 4ffeaca06f..ce83b158d3 100644 --- a/jOOQ/src/main/java/org/jooq/impl/PackageImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/PackageImpl.java @@ -83,4 +83,16 @@ public class PackageImpl extends AbstractQueryPart implements Package { @Override public final void bind(BindContext context) {} + + // ------------------------------------------------------------------------ + // XXX: Object API + // ------------------------------------------------------------------------ + + @Override + public int hashCode() { + + // [#1938] This is a much more efficient hashCode() implementation + // compared to that of standard QueryParts + return name.hashCode(); + } } diff --git a/jOOQ/src/main/java/org/jooq/impl/ParameterImpl.java b/jOOQ/src/main/java/org/jooq/impl/ParameterImpl.java index 79f8a261ef..1c0a96fc03 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ParameterImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ParameterImpl.java @@ -93,4 +93,16 @@ class ParameterImpl extends AbstractQueryPart implements Parameter { public final boolean isDefaulted() { return isDefaulted; } + + // ------------------------------------------------------------------------ + // XXX: Object API + // ------------------------------------------------------------------------ + + @Override + public int hashCode() { + + // [#1938] This is a much more efficient hashCode() implementation + // compared to that of standard QueryParts + return name.hashCode(); + } } diff --git a/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java b/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java index 2991b7a48e..4c24b72563 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java @@ -184,4 +184,16 @@ public class SequenceImpl implements Sequence { return local.render(); } } + + // ------------------------------------------------------------------------ + // XXX: Object API + // ------------------------------------------------------------------------ + + @Override + public int hashCode() { + + // [#1938] This is a much more efficient hashCode() implementation + // compared to that of standard QueryParts + return name.hashCode(); + } } diff --git a/jOOQ/src/main/java/org/jooq/impl/UDTImpl.java b/jOOQ/src/main/java/org/jooq/impl/UDTImpl.java index 7048e97aa7..e16ab0dfa2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/UDTImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/UDTImpl.java @@ -120,4 +120,16 @@ public class UDTImpl> extends AbstractFieldProviderQueryP protected static final , T> UDTField createField(String name, DataType type, UDT udt) { return new UDTFieldImpl(name, type, udt); } + + // ------------------------------------------------------------------------ + // XXX: Object API + // ------------------------------------------------------------------------ + + @Override + public int hashCode() { + + // [#1938] This is a much more efficient hashCode() implementation + // compared to that of standard QueryParts + return name.hashCode(); + } }