From ab1358899184e7950a1925cf99fb822530f27539 Mon Sep 17 00:00:00 2001 From: lukaseder Date: Fri, 5 Jun 2015 16:25:21 +0200 Subject: [PATCH] Added missing [java-8] tags --- .../org/jooq/impl/ArrayTableSimulation.java | 160 ------------------ .../main/java/org/jooq/impl/DeleteImpl.java | 2 + .../main/java/org/jooq/impl/InsertImpl.java | 2 + .../main/java/org/jooq/impl/SelectImpl.java | 2 + .../main/java/org/jooq/impl/UpdateImpl.java | 2 + 5 files changed, 8 insertions(+), 160 deletions(-) delete mode 100644 jOOQ/src/main/java/org/jooq/impl/ArrayTableSimulation.java diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayTableSimulation.java b/jOOQ/src/main/java/org/jooq/impl/ArrayTableSimulation.java deleted file mode 100644 index e60e263901..0000000000 --- a/jOOQ/src/main/java/org/jooq/impl/ArrayTableSimulation.java +++ /dev/null @@ -1,160 +0,0 @@ -/** - * Copyright (c) 2009-2015, Data Geekery GmbH (http://www.datageekery.com) - * All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * Other licenses: - * ----------------------------------------------------------------------------- - * Commercial licenses for this work are available. These replace the above - * ASL 2.0 and offer limited warranties, support, maintenance, and commercial - * database integrations. - * - * For more information, please visit: http://www.jooq.org/licenses - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - */ -package org.jooq.impl; - -import static org.jooq.impl.DSL.falseCondition; -import static org.jooq.impl.DSL.name; -import static org.jooq.impl.DSL.one; -import static org.jooq.impl.DSL.using; - -import org.jooq.Configuration; -import org.jooq.Context; -import org.jooq.Field; -import org.jooq.Record; -import org.jooq.Select; -import org.jooq.Table; - -/** - * Essentially, this is the same as ArrayTable, except that it simulates - * unnested arrays using UNION ALL - * - * @author Lukas Eder - */ -class ArrayTableSimulation extends AbstractTable { - - /** - * Generated UID - */ - private static final long serialVersionUID = 2392515064450536343L; - - private final Object[] array; - private final Fields field; - private final String alias; - private final String fieldAlias; - - private transient Table table; - - ArrayTableSimulation(Object[] array) { - this(array, "array_table", null); - } - - ArrayTableSimulation(Object[] array, String alias) { - this(array, alias, null); - } - - ArrayTableSimulation(Object[] array, String alias, String fieldAlias) { - super(alias); - - this.array = array; - this.alias = alias; - this.fieldAlias = fieldAlias == null ? "COLUMN_VALUE" : fieldAlias; - this.field = new Fields(DSL.field(name(alias, this.fieldAlias), DSL.getDataType(array.getClass().getComponentType()))); - } - - @Override - public final Class getRecordType() { - return RecordImpl.class; - } - - @Override - public final Table as(String as) { - return new ArrayTableSimulation(array, as); - } - - @Override - public final Table as(String as, String... fieldAliases) { - if (fieldAliases == null) { - return new ArrayTableSimulation(array, as); - } - else if (fieldAliases.length == 1) { - return new ArrayTableSimulation(array, as, fieldAliases[0]); - } - - throw new IllegalArgumentException("Array table simulations can only have a single field alias"); - } - - @Override - public final boolean declaresTables() { - - // [#1055] Always true, because unnested tables are always aliased. - // This is particularly important for simulated unnested arrays - return true; - } - - @Override - public final void accept(Context ctx) { - ctx.visit(table(ctx.configuration())); - } - - @Override - final Fields fields0() { - return field; - } - - private final Table table(Configuration configuration) { - if (table == null) { - Select select = null; - - for (Object element : array) { - - // [#1081] Be sure to get the correct cast type also for null - Field val = DSL.val(element, field.fields[0].getDataType()); - Select subselect = using(configuration).select(val.as("COLUMN_VALUE")).select(); - - if (select == null) { - select = subselect; - } - else { - select = select.unionAll(subselect); - } - } - - // Empty arrays should result in empty tables - if (select == null) { - select = using(configuration).select(one().as("COLUMN_VALUE")).select().where(falseCondition()); - } - - table = select.asTable(alias); - } - - return table; - } -} diff --git a/jOOQ/src/main/java/org/jooq/impl/DeleteImpl.java b/jOOQ/src/main/java/org/jooq/impl/DeleteImpl.java index 36c1728370..1d7f09f3da 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DeleteImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/DeleteImpl.java @@ -270,8 +270,10 @@ class DeleteImpl return getDelegate().getReturnedRecord(); } + /* [java-8] */ @Override public final Optional fetchOptional() { return Optional.ofNullable(fetchOne()); } + /* [/java-8] */ } diff --git a/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java b/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java index 9bf52f92e4..d5865ca427 100644 --- a/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java @@ -665,8 +665,10 @@ class InsertImpl fetchOptional() { return Optional.ofNullable(fetchOne()); } + /* [/java-8] */ } diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java index fb0b11e434..00076f28e3 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java @@ -2583,6 +2583,7 @@ class SelectImpl Optional fetchOptional(Field field) { return getDelegate().fetchOptional(field); @@ -2672,6 +2673,7 @@ class SelectImpl Optional fetchOptionalInto(Table table) { return getDelegate().fetchOptionalInto(table); } + /* [/java-8] */ @Override public final T fetchAny(Field field) { diff --git a/jOOQ/src/main/java/org/jooq/impl/UpdateImpl.java b/jOOQ/src/main/java/org/jooq/impl/UpdateImpl.java index 98628f3626..58ae4d2e4f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/UpdateImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/UpdateImpl.java @@ -699,8 +699,10 @@ final class UpdateImpl return getDelegate().getReturnedRecord(); } + /* [java-8] */ @Override public final Optional fetchOptional() { return Optional.ofNullable(fetchOne()); } + /* [/java-8] */ }