diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryWrapperAdapter.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryWrapperAdapter.java new file mode 100644 index 00000000..b2dc8b4d --- /dev/null +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryWrapperAdapter.java @@ -0,0 +1,268 @@ +/* + * Copyright (c) 2022-2023, Mybatis-Flex (fuhai999@gmail.com). + *

+ * 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. + */ + +package com.mybatisflex.core.query; + +import com.mybatisflex.core.table.TableDef; +import com.mybatisflex.core.util.LambdaGetter; + +import java.util.Map; +import java.util.function.Consumer; + +/** + * 抽象包装器。 + * + * @param 包装器类型 + * @author 王帅 + * @since 2023-07-21 + */ +@SuppressWarnings("unchecked") +public abstract class QueryWrapperAdapter extends QueryWrapper { + + @Override + public T select() { + return (T) this; + } + + @Override + public T select(String... columns) { + super.select(columns); + return (T) this; + } + + @Override + public T select(LambdaGetter... lambdaGetters) { + super.select(lambdaGetters); + return (T) this; + } + + @Override + public T select(QueryColumn... queryColumns) { + super.select(queryColumns); + return (T) this; + } + + @Override + public T select(QueryColumn[]... queryColumns) { + super.select(queryColumns); + return (T) this; + } + + @Override + public T from(TableDef... tableDefs) { + super.from(tableDefs); + return (T) this; + } + + @Override + public T from(Class... entityClasses) { + super.from(entityClasses); + return (T) this; + } + + @Override + public T from(String... tables) { + super.from(tables); + return (T) this; + } + + @Override + public T from(QueryTable... tables) { + super.from(tables); + return (T) this; + } + + @Override + public T from(QueryWrapper queryWrapper) { + super.from(queryWrapper); + return (T) this; + } + + @Override + public T as(String alias) { + super.as(alias); + return (T) this; + } + + @Override + public T where(QueryCondition queryCondition) { + super.where(queryCondition); + return (T) this; + } + + @Override + public T where(String sql) { + super.where(sql); + return (T) this; + } + + @Override + public T where(String sql, Object... params) { + super.where(sql, params); + return (T) this; + } + + @Override + public T where(Map whereConditions) { + super.where(whereConditions); + return (T) this; + } + + @Override + public T and(QueryCondition queryCondition) { + super.and(queryCondition); + return (T) this; + } + + @Override + public T and(String sql) { + super.and(sql); + return (T) this; + } + + @Override + public T and(String sql, Object... params) { + super.and(sql, params); + return (T) this; + } + + @Override + public T and(Consumer consumer) { + super.and(consumer); + return (T) this; + } + + @Override + public T or(QueryCondition queryCondition) { + super.or(queryCondition); + return (T) this; + } + + @Override + public T or(String sql) { + super.or(sql); + return (T) this; + } + + @Override + public T or(String sql, Object... params) { + super.or(sql, params); + return (T) this; + } + + @Override + public T or(Consumer consumer) { + super.or(consumer); + return (T) this; + } + + @Override + public T union(QueryWrapper unionQuery) { + super.union(unionQuery); + return (T) this; + } + + @Override + public T unionAll(QueryWrapper unionQuery) { + super.unionAll(unionQuery); + return (T) this; + } + + @Override + public T forUpdate() { + super.forUpdate(); + return (T) this; + } + + @Override + public T forUpdateNoWait() { + super.forUpdateNoWait(); + return (T) this; + } + + @Override + public T groupBy(String name) { + super.groupBy(name); + return (T) this; + } + + @Override + public T groupBy(String... names) { + super.groupBy(names); + return (T) this; + } + + @Override + public T groupBy(QueryColumn column) { + super.groupBy(column); + return (T) this; + } + + @Override + public T groupBy(QueryColumn... columns) { + super.groupBy(columns); + return (T) this; + } + + @Override + public T having(QueryCondition queryCondition) { + super.having(queryCondition); + return (T) this; + } + + @Override + public T orderBy(QueryOrderBy... orderBys) { + super.orderBy(orderBys); + return (T) this; + } + + @Override + public T orderBy(String... orderBys) { + super.orderBy(orderBys); + return (T) this; + } + + @Override + public T limit(Integer rows) { + super.limit(rows); + return (T) this; + } + + @Override + public T offset(Integer offset) { + super.offset(offset); + return (T) this; + } + + @Override + public T limit(Integer offset, Integer rows) { + super.limit(offset, rows); + return (T) this; + } + + @Override + public T datasource(String datasource) { + super.datasource(datasource); + return (T) this; + } + + @Override + public T hint(String hint) { + super.hint(hint); + return (T) this; + } + +}