diff --git a/jOOQ/src/main/java/org/jooq/impl/DSL.java b/jOOQ/src/main/java/org/jooq/impl/DSL.java index 8a25ebad13..6b5f92fb51 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DSL.java +++ b/jOOQ/src/main/java/org/jooq/impl/DSL.java @@ -16954,6 +16954,24 @@ public class DSL { return new WidthBucket(field, low, high, buckets); } + /** + * The XMLCOMMENT function. + */ + @NotNull + @Support({ POSTGRES }) + public static Field xmlcomment(String comment) { + return new Xmlcomment(Tools.field(comment)); + } + + /** + * The XMLCOMMENT function. + */ + @NotNull + @Support({ POSTGRES }) + public static Field xmlcomment(Field comment) { + return new Xmlcomment(comment); + } + /** @@ -20748,24 +20766,6 @@ public class DSL { return new XMLParse(content, DocumentOrContent.CONTENT); } - /** - * The XML comment constructor. - */ - @NotNull - @Support({ POSTGRES }) - public static Field xmlcomment(String comment) { - return xmlcomment(val(comment)); - } - - /** - * The XML comment constructor. - */ - @NotNull - @Support({ POSTGRES }) - public static Field xmlcomment(Field comment) { - return new XMLComment(comment); - } - /** * The XML concat function. */ diff --git a/jOOQ/src/main/java/org/jooq/impl/XMLComment.java b/jOOQ/src/main/java/org/jooq/impl/XMLComment.java index d7f355aaeb..e821aea7c2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/XMLComment.java +++ b/jOOQ/src/main/java/org/jooq/impl/XMLComment.java @@ -37,31 +37,68 @@ */ package org.jooq.impl; -import static org.jooq.impl.Names.N_XMLCOMMENT; +import static org.jooq.impl.DSL.*; +import static org.jooq.impl.Internal.*; +import static org.jooq.impl.Keywords.*; +import static org.jooq.impl.Names.*; +import static org.jooq.impl.SQLDataType.*; +import static org.jooq.impl.Tools.*; +import static org.jooq.impl.Tools.BooleanDataKey.*; +import static org.jooq.SQLDialect.*; + +import org.jooq.*; +import org.jooq.impl.*; +import org.jooq.tools.*; + +import java.util.*; -import org.jooq.Context; -import org.jooq.Field; -import org.jooq.XML; /** - * @author Lukas Eder + * The XMLCOMMENT statement. */ -final class XMLComment extends AbstractField { +@SuppressWarnings({ "rawtypes", "unchecked", "unused" }) +final class Xmlcomment +extends + AbstractField +{ + + private static final long serialVersionUID = 1L; - /** - * Generated UID - */ - private static final long serialVersionUID = 4505809303211506197L; private final Field comment; - XMLComment(Field comment) { - super(N_XMLCOMMENT, SQLDataType.XML); + Xmlcomment( + Field comment + ) { + super(N_XMLCOMMENT, allNotNull(XML, comment)); - this.comment = comment; + this.comment = nullSafeNotNull(comment, VARCHAR); } + // ------------------------------------------------------------------------- + // XXX: QueryPart API + // ------------------------------------------------------------------------- + + + @Override public final void accept(Context ctx) { ctx.visit(N_XMLCOMMENT).sql('(').visit(comment).sql(')'); } + + + + // ------------------------------------------------------------------------- + // The Object API + // ------------------------------------------------------------------------- + + @Override + public boolean equals(Object that) { + if (that instanceof Xmlcomment) { + return + StringUtils.equals(comment, ((Xmlcomment) that).comment) + ; + } + else + return super.equals(that); + } }