You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@metamodel.apache.org by ka...@apache.org on 2013/07/19 11:33:15 UTC
[32/61] [partial] Hard rename of all 'org/eobjects' folders to
'org/apache'.
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/ColumnSelectBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/ColumnSelectBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/ColumnSelectBuilderImpl.java
deleted file mode 100644
index 161a36f..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/ColumnSelectBuilderImpl.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.List;
-
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.query.SelectItem;
-import org.eobjects.metamodel.schema.Column;
-
-final class ColumnSelectBuilderImpl extends SatisfiedSelectBuilderImpl
- implements ColumnSelectBuilder<GroupedQueryBuilder> {
-
- private SelectItem selectItem;
-
- public ColumnSelectBuilderImpl(Column column, Query query,
- GroupedQueryBuilder queryBuilder) {
- super(queryBuilder);
- this.selectItem = new SelectItem(column);
-
- query.select(selectItem);
- }
-
- @Override
- public GroupedQueryBuilder as(String alias) {
- if (alias == null) {
- throw new IllegalArgumentException("alias cannot be null");
- }
- selectItem.setAlias(alias);
- return getQueryBuilder();
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- super.decorateIdentity(identifiers);
- identifiers.add(selectItem);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/CountSelectBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/CountSelectBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/CountSelectBuilder.java
deleted file mode 100644
index 61dd73d..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/CountSelectBuilder.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-public interface CountSelectBuilder<B extends SatisfiedQueryBuilder<?>> extends
- SatisfiedSelectBuilder<B> {
-
- public B as(String alias);
-}
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/CountSelectBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/CountSelectBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/CountSelectBuilderImpl.java
deleted file mode 100644
index e2114b2..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/CountSelectBuilderImpl.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.List;
-
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.query.SelectItem;
-
-final class CountSelectBuilderImpl extends SatisfiedSelectBuilderImpl implements
- CountSelectBuilder<GroupedQueryBuilder> {
-
- private SelectItem selectItem;
-
- public CountSelectBuilderImpl(Query query, GroupedQueryBuilder queryBuilder) {
- super(queryBuilder);
- this.selectItem = SelectItem.getCountAllItem();
- query.select(selectItem);
- }
-
- @Override
- public GroupedQueryBuilder as(String alias) {
- if (alias == null) {
- throw new IllegalArgumentException("alias cannot be null");
- }
- selectItem.setAlias(alias);
- return getQueryBuilder();
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- super.decorateIdentity(identifiers);
- identifiers.add(selectItem);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/FilterBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/FilterBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/FilterBuilder.java
deleted file mode 100644
index 0890c50..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/FilterBuilder.java
+++ /dev/null
@@ -1,355 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.Collection;
-import java.util.Date;
-
-import org.eobjects.metamodel.schema.Column;
-
-/**
- * Interface for builder callbacks that "respond" to filter condition building.
- *
- * @param <B>
- * the builder type to return once filter has been created.
- */
-public interface FilterBuilder<B> {
-
- /**
- * Not null
- */
- public B isNull();
-
- /**
- * Is not null
- */
- public B isNotNull();
-
- /**
- * In ...
- */
- public B in(Collection<?> values);
-
- /**
- * In ...
- */
- public B in(Number... numbers);
-
- /**
- * In ...
- */
- public B in(String... strings);
-
- /**
- * Like ...
- *
- * (use '%' as wildcard).
- */
- public B like(String string);
-
- /**
- * Equal to ...
- */
- public B eq(Column column);
-
- /**
- * Equal to ...
- */
- public B eq(Date date);
-
- /**
- * Equal to ...
- */
- public B eq(Number number);
-
- /**
- * Equal to ...
- */
- public B eq(String string);
-
- /**
- * Equal to ...
- */
- public B eq(Boolean bool);
-
- /**
- * Equal to ...
- */
- public B eq(Object obj);
-
- /**
- * Equal to ...
- */
- public B isEquals(Column column);
-
- /**
- * Equal to ...
- */
- public B isEquals(Date date);
-
- /**
- * Equal to ...
- */
- public B isEquals(Number number);
-
- /**
- * Equal to ...
- */
- public B isEquals(String string);
-
- /**
- * Equal to ...
- */
- public B isEquals(Boolean bool);
-
- /**
- * Equal to ...
- */
- public B isEquals(Object obj);
-
- /**
- * Equal to ...
- *
- * @deprecated use 'eq' or 'isEquals' instead.
- */
- @Deprecated
- public B equals(Column column);
-
- /**
- * Equal to ...
- *
- * @deprecated use 'eq' or 'isEquals' instead.
- */
- @Deprecated
- public B equals(Date date);
-
- /**
- * Equal to ...
- *
- * @deprecated use 'eq' or 'isEquals' instead.
- */
- @Deprecated
- public B equals(Number number);
-
- /**
- * Equal to ...
- *
- * @deprecated use 'eq' or 'isEquals' instead.
- */
- @Deprecated
- public B equals(String string);
-
- /**
- * Equal to ...
- *
- * @deprecated use 'eq' or 'isEquals' instead.
- */
- @Deprecated
- public B equals(Boolean bool);
-
- /**
- * Not equal to ...
- */
- public B differentFrom(Column column);
-
- /**
- * Not equal to ...
- */
- public B differentFrom(Date date);
-
- /**
- * Not equal to ...
- */
- public B differentFrom(Number number);
-
- /**
- * Not equal to ...
- */
- public B differentFrom(String string);
-
- /**
- * Not equal to ...
- */
- public B differentFrom(Boolean bool);
-
- /**
- * Not equal to ...
- */
- public B differentFrom(Object obj);
-
- /**
- * Not equal to ...
- */
- public B ne(Column column);
-
- /**
- * Not equal to ...
- */
- public B ne(Date date);
-
- /**
- * Not equal to ...
- */
- public B ne(Number number);
-
- /**
- * Not equal to ...
- */
- public B ne(String string);
-
- /**
- * Not equal to ...
- */
- public B ne(Boolean bool);
-
- /**
- * Not equal to ...
- */
- public B ne(Object obj);
-
- /**
- * Greater than ...
- *
- * @deprecated use {@link #greaterThan(Column)} instead
- */
- @Deprecated
- public B higherThan(Column column);
-
- /**
- * Greater than ...
- */
- public B greaterThan(Column column);
-
- /**
- * Greater than ...
- */
- public B gt(Column column);
-
- /**
- * Greater than ...
- */
- public B greaterThan(Object obj);
-
- /**
- * Greater than ...
- */
- public B gt(Object obj);
-
- /**
- * Greater than ...
- *
- * @deprecated use {@link #greaterThan(Date)} instead
- */
- @Deprecated
- public B higherThan(Date date);
-
- /**
- * Greater than ...
- */
- public B greaterThan(Date date);
-
- /**
- * Greater than ...
- */
- public B gt(Date date);
-
- /**
- * @deprecated use {@link #greaterThan(Number)} instead
- */
- @Deprecated
- public B higherThan(Number number);
-
- /**
- * Greater than ...
- */
- public B greaterThan(Number number);
-
- /**
- * Greater than ...
- */
- public B gt(Number number);
-
- /**
- * Greater than ...
- *
- * @deprecated use {@link #greaterThan(String)} instead
- */
- @Deprecated
- public B higherThan(String string);
-
- /**
- * Greater than ...
- */
- public B greaterThan(String string);
-
- /**
- * Greater than ...
- */
- public B gt(String string);
-
- /**
- * Less than ...
- */
- public B lessThan(Column column);
-
- /**
- * Less than ...
- */
- public B lt(Column column);
-
- /**
- * Less than ...
- */
- public B lessThan(Date date);
-
- /**
- * Less than ...
- */
- public B lessThan(Number number);
-
- /**
- * Less than ...
- */
- public B lessThan(String string);
-
- /**
- * Less than ...
- */
- public B lessThan(Object obj);
-
- /**
- * Less than ...
- */
- public B lt(Object obj);
-
- /**
- * Less than ...
- */
- public B lt(Date date);
-
- /**
- * Less than ...
- */
- public B lt(Number number);
-
- /**
- * Less than ...
- */
- public B lt(String string);
-}
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/FunctionSelectBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/FunctionSelectBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/FunctionSelectBuilder.java
deleted file mode 100644
index 516ce5e..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/FunctionSelectBuilder.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-public interface FunctionSelectBuilder<B extends SatisfiedQueryBuilder<?>>
- extends SatisfiedSelectBuilder<B> {
-
- public B as(String alias);
-}
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/FunctionSelectBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/FunctionSelectBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/FunctionSelectBuilderImpl.java
deleted file mode 100644
index 68e9b39..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/FunctionSelectBuilderImpl.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.List;
-
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.query.SelectItem;
-import org.eobjects.metamodel.schema.Column;
-
-final class FunctionSelectBuilderImpl extends SatisfiedSelectBuilderImpl
- implements FunctionSelectBuilder<GroupedQueryBuilder> {
-
- private SelectItem selectItem;
-
- public FunctionSelectBuilderImpl(FunctionType functionType, Column column,
- Query query, GroupedQueryBuilder queryBuilder) {
- super(queryBuilder);
-
- this.selectItem = new SelectItem(functionType, column);
-
- query.select(selectItem);
- }
-
- @Override
- public GroupedQueryBuilder as(String alias) {
- if (alias == null) {
- throw new IllegalArgumentException("alias cannot be null");
- }
- selectItem.setAlias(alias);
- return getQueryBuilder();
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- super.decorateIdentity(identifiers);
- identifiers.add(selectItem);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilder.java
deleted file mode 100644
index d798d9b..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilder.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.schema.Column;
-
-/**
- * Represents a built query that has a GROUP BY clause.
- *
- * @author Kasper Sørensen
- *
- */
-public interface GroupedQueryBuilder extends
- SatisfiedQueryBuilder<GroupedQueryBuilder> {
-
- public HavingBuilder having(FunctionType functionType, Column column);
-
- public SatisfiedOrderByBuilder<GroupedQueryBuilder> orderBy(
- FunctionType function, Column column);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilderCallback.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilderCallback.java b/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilderCallback.java
deleted file mode 100644
index 6db7feb..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilderCallback.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.List;
-
-import org.eobjects.metamodel.data.DataSet;
-import org.eobjects.metamodel.query.CompiledQuery;
-import org.eobjects.metamodel.query.FilterItem;
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.schema.Column;
-import org.eobjects.metamodel.util.BaseObject;
-
-abstract class GroupedQueryBuilderCallback extends BaseObject implements GroupedQueryBuilder {
-
- private GroupedQueryBuilder queryBuilder;
-
- public GroupedQueryBuilderCallback(GroupedQueryBuilder queryBuilder) {
- this.queryBuilder = queryBuilder;
- }
-
- protected GroupedQueryBuilder getQueryBuilder() {
- return queryBuilder;
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> firstRow(int firstRow) {
- return getQueryBuilder().firstRow(firstRow);
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> limit(int maxRows) {
- return getQueryBuilder().limit(maxRows);
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> offset(int offset) {
- return getQueryBuilder().offset(offset);
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> maxRows(int maxRows) {
- return getQueryBuilder().maxRows(maxRows);
- }
-
- @Override
- public SatisfiedSelectBuilder<GroupedQueryBuilder> select(Column... columns) {
- return getQueryBuilder().select(columns);
- }
-
- @Override
- public final Column findColumn(String columnName) throws IllegalArgumentException {
- return getQueryBuilder().findColumn(columnName);
- }
-
- @Override
- public ColumnSelectBuilder<GroupedQueryBuilder> select(Column column) {
- return getQueryBuilder().select(column);
- }
-
- @Override
- public FunctionSelectBuilder<GroupedQueryBuilder> select(FunctionType functionType, Column column) {
- return getQueryBuilder().select(functionType, column);
- }
-
- @Override
- public ColumnSelectBuilder<GroupedQueryBuilder> select(String columnName) {
- return getQueryBuilder().select(columnName);
- }
-
- @Override
- public CountSelectBuilder<GroupedQueryBuilder> selectCount() {
- return getQueryBuilder().selectCount();
- }
-
- @Override
- public WhereBuilder<GroupedQueryBuilder> where(Column column) {
- return getQueryBuilder().where(column);
- }
-
- @Override
- public SatisfiedOrderByBuilder<GroupedQueryBuilder> orderBy(Column column) {
- return getQueryBuilder().orderBy(column);
- }
-
- @Override
- public GroupedQueryBuilder groupBy(String columnName) {
- return getQueryBuilder().groupBy(columnName);
- }
-
- @Override
- public GroupedQueryBuilder groupBy(Column column) {
- return getQueryBuilder().groupBy(column);
- }
-
- @Override
- public Query toQuery() {
- return getQueryBuilder().toQuery();
- }
-
- @Override
- public CompiledQuery compile() {
- return getQueryBuilder().compile();
- }
-
- @Override
- public HavingBuilder having(FunctionType functionType, Column column) {
- return getQueryBuilder().having(functionType, column);
- }
-
- @Override
- public GroupedQueryBuilder groupBy(Column... columns) {
- getQueryBuilder().groupBy(columns);
- return this;
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- identifiers.add(queryBuilder);
- }
-
- @Override
- public DataSet execute() {
- return queryBuilder.execute();
- }
-
- @Override
- public WhereBuilder<GroupedQueryBuilder> where(String columnName) {
- return getQueryBuilder().where(columnName);
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> where(FilterItem... filters) {
- return getQueryBuilder().where(filters);
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> where(Iterable<FilterItem> filters) {
- return getQueryBuilder().where(filters);
- }
-
- @Override
- public SatisfiedOrderByBuilder<GroupedQueryBuilder> orderBy(String columnName) {
- return getQueryBuilder().orderBy(columnName);
- }
-
- @Override
- public SatisfiedOrderByBuilder<GroupedQueryBuilder> orderBy(FunctionType function, Column column) {
- return getQueryBuilder().orderBy(function, column);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilderImpl.java
deleted file mode 100644
index bd5248c..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/GroupedQueryBuilderImpl.java
+++ /dev/null
@@ -1,332 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.Arrays;
-import java.util.List;
-
-import org.eobjects.metamodel.DataContext;
-import org.eobjects.metamodel.data.DataSet;
-import org.eobjects.metamodel.query.CompiledQuery;
-import org.eobjects.metamodel.query.FilterItem;
-import org.eobjects.metamodel.query.FromItem;
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.query.SelectItem;
-import org.eobjects.metamodel.schema.Column;
-import org.eobjects.metamodel.schema.Table;
-import org.eobjects.metamodel.util.BaseObject;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Main implementation of the {@link GroupedQueryBuilder} interface.
- */
-final class GroupedQueryBuilderImpl extends BaseObject implements GroupedQueryBuilder {
-
- private static final Logger logger = LoggerFactory.getLogger(GroupedQueryBuilderImpl.class);
-
- private final Query _query;
- private final DataContext _dataContext;
-
- public GroupedQueryBuilderImpl(DataContext dataContext, Query query) {
- if (query == null) {
- throw new IllegalArgumentException("query cannot be null");
- }
- _dataContext = dataContext;
- _query = query;
- }
-
- @Override
- public ColumnSelectBuilder<GroupedQueryBuilder> select(Column column) {
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- return new ColumnSelectBuilderImpl(column, _query, this);
- }
-
- @Override
- public FunctionSelectBuilder<GroupedQueryBuilder> select(FunctionType function, Column column) {
- if (function == null) {
- throw new IllegalArgumentException("function cannot be null");
- }
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- return new FunctionSelectBuilderImpl(function, column, _query, this);
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> where(FilterItem... filters) {
- _query.where(filters);
- return this;
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> where(Iterable<FilterItem> filters) {
- _query.where(filters);
- return this;
- }
-
- @Override
- public ColumnSelectBuilder<GroupedQueryBuilder> select(String columnName) {
- Column column = findColumn(columnName);
- return select(column);
- }
-
- @Override
- public CountSelectBuilder<GroupedQueryBuilder> selectCount() {
- return new CountSelectBuilderImpl(_query, this);
- }
-
- @Override
- public SatisfiedSelectBuilder<GroupedQueryBuilder> select(Column... columns) {
- if (columns == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- _query.select(columns);
- return new SatisfiedSelectBuilderImpl(this);
- }
-
- @Override
- public WhereBuilder<GroupedQueryBuilder> where(Column column) {
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- return new WhereBuilderImpl(column, _query, this);
- }
-
- @Override
- public WhereBuilder<GroupedQueryBuilder> where(String columnName) {
- Column column = findColumn(columnName);
- return where(column);
- }
-
- @Override
- public Column findColumn(final String columnName) throws IllegalArgumentException {
- if (columnName == null) {
- throw new IllegalArgumentException("columnName cannot be null");
- }
-
- final List<FromItem> fromItems = _query.getFromClause().getItems();
- final List<SelectItem> selectItems = _query.getSelectClause().getItems();
-
- int dotIndex = columnName.indexOf('.');
- if (dotIndex != -1) {
- // check aliases of from items
- final String aliasPart = columnName.substring(0, dotIndex);
- final String columnPart = columnName.substring(dotIndex + 1);
-
- for (FromItem fromItem : fromItems) {
- Column column = null;
- column = findColumnInAliasedTable(column, fromItem, aliasPart, columnPart);
- if (column != null) {
- return column;
- }
- }
- }
-
- // check columns already in select clause
- for (SelectItem item : selectItems) {
- Column column = item.getColumn();
- if (column != null) {
- if (columnName.equals(column.getName())) {
- return column;
- }
- }
- }
-
- for (FromItem fromItem : fromItems) {
- Table table = fromItem.getTable();
- if (table != null) {
- Column column = table.getColumnByName(columnName);
- if (column != null) {
- return column;
- }
- }
- }
-
- Column column = _dataContext.getColumnByQualifiedLabel(columnName);
- if (column != null) {
- return column;
- }
-
- final IllegalArgumentException exception = new IllegalArgumentException("Could not find column: " + columnName);
-
- if (logger.isDebugEnabled()) {
- logger.debug("findColumn('" + columnName + "') could not resolve a column", exception);
- for (FromItem fromItem : fromItems) {
- final Table table = fromItem.getTable();
- if (table != null) {
- logger.debug("Table available in FROM item: {}. Column names: {}", table,
- Arrays.toString(table.getColumnNames()));
- }
- }
- }
-
- throw exception;
- }
-
- private Column findColumnInAliasedTable(Column column, FromItem fromItem, String aliasPart, String columnPart) {
- if (column != null) {
- // ensure that if the column has already been found, return it
- return column;
- }
-
- Table table = fromItem.getTable();
- if (table != null) {
- String alias = fromItem.getAlias();
- if (alias != null && alias.equals(aliasPart)) {
- column = table.getColumnByName(columnPart);
- }
- } else {
- FromItem leftSide = fromItem.getLeftSide();
- column = findColumnInAliasedTable(column, leftSide, aliasPart, columnPart);
- FromItem rightSide = fromItem.getRightSide();
- column = findColumnInAliasedTable(column, rightSide, aliasPart, columnPart);
- if (column != null) {
- Query subQuery = fromItem.getSubQuery();
- if (subQuery != null) {
- List<FromItem> items = subQuery.getFromClause().getItems();
- for (FromItem subQueryFromItem : items) {
- column = findColumnInAliasedTable(column, subQueryFromItem, aliasPart, columnPart);
- }
- }
- }
- }
-
- return column;
- }
-
- @Override
- public SatisfiedOrderByBuilder<GroupedQueryBuilder> orderBy(String columnName) {
- return orderBy(findColumn(columnName));
- }
-
- @Override
- public SatisfiedOrderByBuilder<GroupedQueryBuilder> orderBy(Column column) {
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- return new SatisfiedOrderByBuilderImpl(column, _query, this);
- }
-
- @Override
- public SatisfiedOrderByBuilder<GroupedQueryBuilder> orderBy(FunctionType function, Column column) {
- if (function == null) {
- throw new IllegalArgumentException("function cannot be null");
- }
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- return new SatisfiedOrderByBuilderImpl(function, column, _query, this);
- }
-
- @Override
- public GroupedQueryBuilder groupBy(Column column) {
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- _query.groupBy(column);
- return this;
- }
-
- @Override
- public GroupedQueryBuilder groupBy(String columnName) {
- Column column = findColumn(columnName);
- return groupBy(column);
- }
-
- @Override
- public GroupedQueryBuilder groupBy(Column... columns) {
- if (columns == null) {
- throw new IllegalArgumentException("columns cannot be null");
- }
- _query.groupBy(columns);
- return this;
- }
-
- @Override
- public HavingBuilder having(FunctionType function, Column column) {
- if (function == null) {
- throw new IllegalArgumentException("function cannot be null");
- }
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- return new HavingBuilderImpl(function, column, _query, this);
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> limit(int maxRows) {
- _query.setMaxRows(maxRows);
- return this;
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> maxRows(int maxRows) {
- _query.setMaxRows(maxRows);
- return this;
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> firstRow(int firstRow) {
- if (firstRow >= 0) {
- _query.setFirstRow(firstRow);
- } else {
- _query.setFirstRow(null);
- }
- return this;
- }
-
- @Override
- public SatisfiedQueryBuilder<GroupedQueryBuilder> offset(int offset) {
- if (offset >= 0) {
- _query.setFirstRow(offset + 1);
- } else {
- _query.setFirstRow(null);
- }
- return this;
- }
-
- @Override
- public String toString() {
- return _query.toSql();
- }
-
- @Override
- public Query toQuery() {
- return _query.clone();
- }
-
- @Override
- public CompiledQuery compile() {
- return _dataContext.compileQuery(_query);
- }
-
- @Override
- public DataSet execute() {
- return _dataContext.executeQuery(_query);
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- identifiers.add(_query);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/HavingBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/HavingBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/HavingBuilder.java
deleted file mode 100644
index 1596ada..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/HavingBuilder.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-/**
- * Builder interface for having items.
- */
-public interface HavingBuilder extends FilterBuilder<SatisfiedHavingBuilder> {
-
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/HavingBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/HavingBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/HavingBuilderImpl.java
deleted file mode 100644
index 13b197d..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/HavingBuilderImpl.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eobjects.metamodel.query.FilterItem;
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.query.SelectItem;
-import org.eobjects.metamodel.schema.Column;
-
-final class HavingBuilderImpl extends
- AbstractQueryFilterBuilder<SatisfiedHavingBuilder> implements
- HavingBuilder, SatisfiedHavingBuilder {
-
- private final Query _query;
- private final List<FilterItem> _orFilters;
- private FilterItem _parentOrFilter;
-
- public HavingBuilderImpl(FunctionType function, Column column, Query query,
- GroupedQueryBuilder queryBuilder) {
- super(new SelectItem(function, column), queryBuilder);
- _query = query;
- _orFilters = new ArrayList<FilterItem>();
- }
-
- public HavingBuilderImpl(FunctionType function, Column column, Query query,
- FilterItem parentOrFilter, List<FilterItem> orFilters,
- GroupedQueryBuilder queryBuilder) {
- super(new SelectItem(function, column), queryBuilder);
- _query = query;
- _orFilters = orFilters;
- _parentOrFilter = parentOrFilter;
- }
-
- @Override
- protected SatisfiedHavingBuilder applyFilter(FilterItem filter) {
- if (_parentOrFilter == null) {
- _query.having(filter);
- } else {
- if (_parentOrFilter.getChildItemCount() == 1) {
- _query.getHavingClause().removeItem(_orFilters.get(0));
- _query.getHavingClause().addItem(_parentOrFilter);
- }
- }
- _orFilters.add(filter);
- return this;
- }
-
- @Override
- public HavingBuilder or(FunctionType function, Column column) {
- if (function == null) {
- throw new IllegalArgumentException("function cannot be null");
- }
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- if (_parentOrFilter == null) {
- _parentOrFilter = new FilterItem(_orFilters);
- }
- return new HavingBuilderImpl(function, column, _query, _parentOrFilter,
- _orFilters, getQueryBuilder());
- }
-
- @Override
- public HavingBuilder and(FunctionType function, Column column) {
- return getQueryBuilder().having(function, column);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/InitFromBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/InitFromBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/InitFromBuilder.java
deleted file mode 100644
index fcbdbcf..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/InitFromBuilder.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.schema.Schema;
-import org.eobjects.metamodel.schema.Table;
-
-/**
- * The initial interface used when building a query. A query starts by stating
- * the FROM clause.
- *
- * @author Kasper Sørensen
- */
-public interface InitFromBuilder {
-
- public TableFromBuilder from(Table table);
-
- public TableFromBuilder from(Schema schema, String tableName);
-
- public TableFromBuilder from(String schemaName, String tableName);
-
- public TableFromBuilder from(String tableName);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/InitFromBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/InitFromBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/InitFromBuilderImpl.java
deleted file mode 100644
index 3d523a8..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/InitFromBuilderImpl.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.Arrays;
-import java.util.List;
-
-import org.eobjects.metamodel.DataContext;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.schema.Schema;
-import org.eobjects.metamodel.schema.Table;
-import org.eobjects.metamodel.util.BaseObject;
-
-public final class InitFromBuilderImpl extends BaseObject implements InitFromBuilder {
-
- private DataContext dataContext;
- private Query query;
-
- public InitFromBuilderImpl(DataContext dataContext) {
- this.dataContext = dataContext;
- this.query = new Query();
- }
-
- @Override
- public TableFromBuilder from(Table table) {
- if (table == null) {
- throw new IllegalArgumentException("table cannot be null");
- }
- return new TableFromBuilderImpl(table, query, dataContext);
- }
-
- @Override
- public TableFromBuilder from(String schemaName, String tableName) {
- if (schemaName == null) {
- throw new IllegalArgumentException("schemaName cannot be null");
- }
- if (tableName == null) {
- throw new IllegalArgumentException("tableName cannot be null");
- }
- Schema schema = dataContext.getSchemaByName(schemaName);
- if (schema == null) {
- schema = dataContext.getDefaultSchema();
- }
- return from(schema, tableName);
- }
-
- @Override
- public TableFromBuilder from(Schema schema, String tableName) {
- Table table = schema.getTableByName(tableName);
- if (table == null) {
- throw new IllegalArgumentException("Nu such table '" + tableName + "' found in schema: " + schema
- + ". Available tables are: " + Arrays.toString(schema.getTableNames()));
- }
- return from(table);
- }
-
- @Override
- public TableFromBuilder from(String tableName) {
- if (tableName == null) {
- throw new IllegalArgumentException("tableName cannot be null");
- }
- Table table = dataContext.getTableByQualifiedLabel(tableName);
- if (table == null) {
- throw new IllegalArgumentException("No such table: " + tableName);
- }
- return from(table);
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- identifiers.add(query);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/JoinFromBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/JoinFromBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/JoinFromBuilder.java
deleted file mode 100644
index 1cad5fc..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/JoinFromBuilder.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.schema.Column;
-
-public interface JoinFromBuilder extends SatisfiedFromBuilder {
-
- public SatisfiedFromBuilder on(Column left, Column right);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/JoinFromBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/JoinFromBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/JoinFromBuilderImpl.java
deleted file mode 100644
index 6e9520c..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/JoinFromBuilderImpl.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.List;
-
-import org.eobjects.metamodel.DataContext;
-import org.eobjects.metamodel.query.FromItem;
-import org.eobjects.metamodel.query.JoinType;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.query.SelectItem;
-import org.eobjects.metamodel.schema.Column;
-import org.eobjects.metamodel.schema.Table;
-
-final class JoinFromBuilderImpl extends SatisfiedFromBuilderCallback implements
- JoinFromBuilder {
-
- private JoinType joinType;
- private FromItem leftItem;
- private FromItem rightItem;
-
- public JoinFromBuilderImpl(Query query, FromItem leftItem,
- Table rightTable, JoinType joinType, DataContext dataContext) {
- super(query, dataContext);
- this.joinType = joinType;
- this.leftItem = leftItem;
- this.rightItem = new FromItem(rightTable);
- }
-
- @Override
- public SatisfiedFromBuilder on(Column left, Column right) {
- if (left == null) {
- throw new IllegalArgumentException("left cannot be null");
- }
- if (right == null) {
- throw new IllegalArgumentException("right cannot be null");
- }
- getQuery().getFromClause().removeItem(leftItem);
-
- SelectItem[] leftOn = new SelectItem[] { new SelectItem(left) };
- SelectItem[] rightOn = new SelectItem[] { new SelectItem(right) };
- FromItem fromItem = new FromItem(joinType, leftItem, rightItem, leftOn,
- rightOn);
-
- getQuery().from(fromItem);
-
- return this;
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- super.decorateIdentity(identifiers);
- identifiers.add(joinType);
- identifiers.add(leftItem);
- identifiers.add(rightItem);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedFromBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedFromBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedFromBuilder.java
deleted file mode 100644
index 6cc2611..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedFromBuilder.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.schema.Column;
-import org.eobjects.metamodel.schema.Table;
-
-/**
- * Represents a builder where the FROM part is satisfied, ie. a SELECT clause is
- * now buildable.
- *
- * @author Kasper Sørensen
- */
-public interface SatisfiedFromBuilder {
-
- public TableFromBuilder and(Table table);
-
- public TableFromBuilder and(String schemaName, String tableName);
-
- public TableFromBuilder and(String tableName);
-
- public ColumnSelectBuilder<?> select(Column column);
-
- public FunctionSelectBuilder<?> select(FunctionType functionType, Column column);
-
- public CountSelectBuilder<?> selectCount();
-
- public SatisfiedSelectBuilder<?> select(Column... columns);
-
- public SatisfiedSelectBuilder<?> selectAll();
-
- public ColumnSelectBuilder<?> select(String columnName);
-
- public SatisfiedSelectBuilder<?> select(String... columnNames);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedFromBuilderCallback.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedFromBuilderCallback.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedFromBuilderCallback.java
deleted file mode 100644
index d6798c2..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedFromBuilderCallback.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.List;
-
-import org.eobjects.metamodel.DataContext;
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.schema.Column;
-import org.eobjects.metamodel.schema.Schema;
-import org.eobjects.metamodel.schema.Table;
-import org.eobjects.metamodel.util.BaseObject;
-
-abstract class SatisfiedFromBuilderCallback extends BaseObject implements SatisfiedFromBuilder {
-
- private Query query;
- private DataContext dataContext;
-
- public SatisfiedFromBuilderCallback(Query query, DataContext dataContext) {
- this.query = query;
- this.dataContext = dataContext;
- }
-
- protected Query getQuery() {
- return query;
- }
-
- protected DataContext getDataContext() {
- return dataContext;
- }
-
- @Override
- public TableFromBuilder and(Table table) {
- if (table == null) {
- throw new IllegalArgumentException("table cannot be null");
- }
-
- return new TableFromBuilderImpl(table, query, dataContext);
- }
-
- @Override
- public ColumnSelectBuilder<?> select(Column column) {
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
-
- GroupedQueryBuilder queryBuilder = new GroupedQueryBuilderImpl(dataContext, query);
- return new ColumnSelectBuilderImpl(column, query, queryBuilder);
- }
-
- @Override
- public SatisfiedSelectBuilder<?> selectAll() {
- getQuery().selectAll();
- GroupedQueryBuilder queryBuilder = new GroupedQueryBuilderImpl(dataContext, query);
- return new SatisfiedSelectBuilderImpl(queryBuilder);
- }
-
- @Override
- public FunctionSelectBuilder<?> select(FunctionType functionType, Column column) {
- if (functionType == null) {
- throw new IllegalArgumentException("functionType cannot be null");
- }
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
-
- GroupedQueryBuilder queryBuilder = new GroupedQueryBuilderImpl(dataContext, query);
- return new FunctionSelectBuilderImpl(functionType, column, query, queryBuilder);
- }
-
- @Override
- public CountSelectBuilder<?> selectCount() {
- GroupedQueryBuilder queryBuilder = new GroupedQueryBuilderImpl(dataContext, query);
- return new CountSelectBuilderImpl(query, queryBuilder);
- }
-
- @Override
- public TableFromBuilder and(String schemaName, String tableName) {
- if (schemaName == null) {
- throw new IllegalArgumentException("schemaName cannot be null");
- }
- if (tableName == null) {
- throw new IllegalArgumentException("tableName cannot be null");
- }
-
- Schema schema = dataContext.getSchemaByName(schemaName);
- if (schema == null) {
- schema = dataContext.getDefaultSchema();
- }
- return and(schema, tableName);
- }
-
- private TableFromBuilder and(Schema schema, String tableName) {
- Table table = schema.getTableByName(tableName);
- return and(table);
- }
-
- @Override
- public TableFromBuilder and(String tableName) {
- if (tableName == null) {
- throw new IllegalArgumentException("tableName cannot be null");
- }
- return and(dataContext.getDefaultSchema(), tableName);
- }
-
- @Override
- public SatisfiedSelectBuilder<?> select(Column... columns) {
- if (columns == null) {
- throw new IllegalArgumentException("columns cannot be null");
- }
- query.select(columns);
- GroupedQueryBuilder queryBuilder = new GroupedQueryBuilderImpl(dataContext, query);
- return new SatisfiedSelectBuilderImpl(queryBuilder);
- }
-
- @Override
- public SatisfiedSelectBuilder<?> select(String... columnNames) {
- if (columnNames == null) {
- throw new IllegalArgumentException("columnNames cannot be null");
- }
- for (String columnName : columnNames) {
- select(columnName);
- }
- GroupedQueryBuilder queryBuilder = new GroupedQueryBuilderImpl(dataContext, query);
- return new SatisfiedSelectBuilderImpl(queryBuilder);
- }
-
- @Override
- public ColumnSelectBuilder<?> select(String columnName) {
- if (columnName == null) {
- throw new IllegalArgumentException("columnName cannot be null");
- }
-
- GroupedQueryBuilderImpl queryBuilder = new GroupedQueryBuilderImpl(dataContext, query);
- Column column = queryBuilder.findColumn(columnName);
- return select(column);
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- identifiers.add(query);
- }
-
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedHavingBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedHavingBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedHavingBuilder.java
deleted file mode 100644
index b5c6efe..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedHavingBuilder.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.schema.Column;
-
-public interface SatisfiedHavingBuilder extends GroupedQueryBuilder {
-
- public HavingBuilder or(FunctionType functionType, Column column);
-
- public HavingBuilder and(FunctionType functionType, Column column);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedOrderByBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedOrderByBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedOrderByBuilder.java
deleted file mode 100644
index a7023cf..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedOrderByBuilder.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.schema.Column;
-
-public interface SatisfiedOrderByBuilder<B extends SatisfiedQueryBuilder<?>>
- extends SatisfiedQueryBuilder<B> {
-
- public B asc();
-
- public B desc();
-
- public SatisfiedOrderByBuilder<B> and(Column column);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedOrderByBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedOrderByBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedOrderByBuilderImpl.java
deleted file mode 100644
index 5ebe755..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedOrderByBuilderImpl.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.query.OrderByItem;
-import org.eobjects.metamodel.query.OrderByItem.Direction;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.query.SelectItem;
-import org.eobjects.metamodel.schema.Column;
-
-final class SatisfiedOrderByBuilderImpl extends GroupedQueryBuilderCallback
- implements SatisfiedOrderByBuilder<GroupedQueryBuilder> {
-
- private OrderByItem orderByitem;
-
- public SatisfiedOrderByBuilderImpl(Column column, Query query,
- GroupedQueryBuilder queryBuilder) {
- super(queryBuilder);
- orderByitem = new OrderByItem(new SelectItem(column));
- query.orderBy(orderByitem);
- }
-
- public SatisfiedOrderByBuilderImpl(FunctionType function, Column column,
- Query query, GroupedQueryBuilder queryBuilder) {
- super(queryBuilder);
- orderByitem = new OrderByItem(new SelectItem(function, column));
- query.orderBy(orderByitem);
- }
-
- @Override
- public GroupedQueryBuilder asc() {
- orderByitem.setDirection(Direction.ASC);
- return getQueryBuilder();
- }
-
- @Override
- public GroupedQueryBuilder desc() {
- orderByitem.setDirection(Direction.DESC);
- return getQueryBuilder();
- }
-
- @Override
- public SatisfiedOrderByBuilder<GroupedQueryBuilder> and(Column column) {
- return getQueryBuilder().orderBy(column);
- }
-
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedQueryBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedQueryBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedQueryBuilder.java
deleted file mode 100644
index dd98935..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedQueryBuilder.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.DataContext;
-import org.eobjects.metamodel.data.DataSet;
-import org.eobjects.metamodel.query.CompiledQuery;
-import org.eobjects.metamodel.query.FilterItem;
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.schema.Column;
-
-/**
- * Represents a built query that is satisfied and ready for querying or further
- * building.
- *
- * @author Kasper Sørensen
- *
- * @param <B>
- */
-public interface SatisfiedQueryBuilder<B extends SatisfiedQueryBuilder<?>> {
-
- public ColumnSelectBuilder<B> select(Column column);
-
- public SatisfiedSelectBuilder<B> select(Column... columns);
-
- /**
- * Sets the offset (number of rows to skip) of the query that is being
- * built.
- *
- * Note that this number is a 0-based variant of invoking
- * {@link #firstRow(int)}.
- *
- * @param offset
- * the number of rows to skip
- * @return
- */
- public SatisfiedQueryBuilder<B> offset(int offset);
-
- /**
- * Sets the first row of the query that is being built.
- *
- * Note that this is a 1-based variant of invoking {@link #limit(int)}.
- *
- * @param firstRow
- * @return
- */
- public SatisfiedQueryBuilder<B> firstRow(int firstRow);
-
- /**
- * Sets the limit (aka. max rows) of the query that is being built.
- *
- * @param maxRows
- * @return
- */
- public SatisfiedQueryBuilder<B> limit(int limit);
-
- /**
- * Sets the max rows (aka. limit) of the query that is being built.
- *
- * @param maxRows
- * @return
- */
- public SatisfiedQueryBuilder<B> maxRows(int maxRows);
-
- public FunctionSelectBuilder<B> select(FunctionType functionType, Column column);
-
- public CountSelectBuilder<B> selectCount();
-
- public ColumnSelectBuilder<B> select(String columnName);
-
- public WhereBuilder<B> where(Column column);
-
- public WhereBuilder<B> where(String columnName);
-
- public SatisfiedQueryBuilder<B> where(FilterItem... filters);
-
- public SatisfiedQueryBuilder<B> where(Iterable<FilterItem> filters);
-
- public SatisfiedOrderByBuilder<B> orderBy(String columnName);
-
- public SatisfiedOrderByBuilder<B> orderBy(Column column);
-
- public GroupedQueryBuilder groupBy(String columnName);
-
- public GroupedQueryBuilder groupBy(Column column);
-
- public B groupBy(Column... columns);
-
- /**
- * Gets the built query as a {@link Query} object. Typically the returned
- * query will be a clone of the built query to prevent conflicting
- * mutations.
- *
- * @return a {@link Query} object representing the built query.
- */
- public Query toQuery();
-
- public CompiledQuery compile();
-
- /**
- * Executes the built query. This call is similar to calling
- * {@link #toQuery()} and then {@link DataContext#executeQuery(Query)}.
- *
- * @return the {@link DataSet} that is returned by executing the query.
- */
- public DataSet execute();
-
- /**
- * Finds a column by name within the already defined FROM items
- *
- * @param columnName
- * @return
- * @throws IllegalArgumentException
- */
- public Column findColumn(String columnName) throws IllegalArgumentException;
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedSelectBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedSelectBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedSelectBuilder.java
deleted file mode 100644
index 886b763..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedSelectBuilder.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.schema.Column;
-
-public interface SatisfiedSelectBuilder<B extends SatisfiedQueryBuilder<?>>
- extends SatisfiedQueryBuilder<B> {
-
- public ColumnSelectBuilder<B> and(Column column);
-
- public SatisfiedSelectBuilder<B> and(Column ... columns);
-
- public FunctionSelectBuilder<B> and(FunctionType function,
- Column column);
-
- public SatisfiedSelectBuilder<B> and(String columnName);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedSelectBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedSelectBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedSelectBuilderImpl.java
deleted file mode 100644
index 2fe66ce..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedSelectBuilderImpl.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.query.FunctionType;
-import org.eobjects.metamodel.schema.Column;
-
-class SatisfiedSelectBuilderImpl extends GroupedQueryBuilderCallback implements
- SatisfiedSelectBuilder<GroupedQueryBuilder> {
-
- public SatisfiedSelectBuilderImpl(GroupedQueryBuilder queryBuilder) {
- super(queryBuilder);
- }
-
- @Override
- public ColumnSelectBuilder<GroupedQueryBuilder> and(Column column) {
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- return getQueryBuilder().select(column);
- }
-
- @Override
- public SatisfiedSelectBuilder<GroupedQueryBuilder> and(Column... columns) {
- if (columns == null) {
- throw new IllegalArgumentException("columns cannot be null");
- }
- return getQueryBuilder().select(columns);
- }
-
- @Override
- public FunctionSelectBuilder<GroupedQueryBuilder> and(
- FunctionType functionType, Column column) {
- if (functionType == null) {
- throw new IllegalArgumentException("functionType cannot be null");
- }
- if (column == null) {
- throw new IllegalArgumentException("column cannot be null");
- }
- return getQueryBuilder().select(functionType, column);
- }
-
- @Override
- public SatisfiedSelectBuilder<GroupedQueryBuilder> and(String columnName) {
- if (columnName == null) {
- throw new IllegalArgumentException("columnName cannot be null");
- }
- return getQueryBuilder().select(columnName);
- }
-
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedWhereBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedWhereBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedWhereBuilder.java
deleted file mode 100644
index d236ed2..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/SatisfiedWhereBuilder.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.schema.Column;
-
-public interface SatisfiedWhereBuilder<B extends SatisfiedQueryBuilder<?>>
- extends SatisfiedQueryBuilder<B> {
-
- public WhereBuilder<B> or(String columnName);
-
- public WhereBuilder<B> or(Column column);
-
- public WhereBuilder<B> and(String columnName);
-
- public WhereBuilder<B> and(Column column);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/TableFromBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/TableFromBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/TableFromBuilder.java
deleted file mode 100644
index d030653..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/TableFromBuilder.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.schema.Table;
-
-public interface TableFromBuilder extends
- SatisfiedFromBuilder {
-
- public JoinFromBuilder innerJoin(Table table);
-
- public JoinFromBuilder leftJoin(Table table);
-
- public JoinFromBuilder rightJoin(Table table);
-
- public TableFromBuilder as(String alias);
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/TableFromBuilderImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/TableFromBuilderImpl.java b/core/src/main/java/org/eobjects/metamodel/query/builder/TableFromBuilderImpl.java
deleted file mode 100644
index 4460d8e..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/TableFromBuilderImpl.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import java.util.List;
-
-import org.eobjects.metamodel.DataContext;
-import org.eobjects.metamodel.query.FromItem;
-import org.eobjects.metamodel.query.JoinType;
-import org.eobjects.metamodel.query.Query;
-import org.eobjects.metamodel.schema.Table;
-
-final class TableFromBuilderImpl extends SatisfiedFromBuilderCallback implements
- TableFromBuilder {
-
- private FromItem fromItem;
-
- public TableFromBuilderImpl(Table table, Query query,
- DataContext dataContext) {
- super(query, dataContext);
-
- fromItem = new FromItem(table);
- query.from(fromItem);
- }
-
- @Override
- public JoinFromBuilder innerJoin(Table table) {
- if (table == null) {
- throw new IllegalArgumentException("table cannot be null");
- }
- return new JoinFromBuilderImpl(getQuery(), fromItem, table,
- JoinType.INNER, getDataContext());
- }
-
- @Override
- public JoinFromBuilder leftJoin(Table table) {
- if (table == null) {
- throw new IllegalArgumentException("table cannot be null");
- }
- return new JoinFromBuilderImpl(getQuery(), fromItem, table,
- JoinType.LEFT, getDataContext());
- }
-
- @Override
- public JoinFromBuilder rightJoin(Table table) {
- if (table == null) {
- throw new IllegalArgumentException("table cannot be null");
- }
- return new JoinFromBuilderImpl(getQuery(), fromItem, table,
- JoinType.RIGHT, getDataContext());
- }
-
- @Override
- public TableFromBuilder as(String alias) {
- if (alias == null) {
- throw new IllegalArgumentException("alias cannot be null");
- }
- fromItem.setAlias(alias);
- return this;
- }
-
- @Override
- protected void decorateIdentity(List<Object> identifiers) {
- super.decorateIdentity(identifiers);
- identifiers.add(fromItem);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/e2e2b37a/core/src/main/java/org/eobjects/metamodel/query/builder/WhereBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/eobjects/metamodel/query/builder/WhereBuilder.java b/core/src/main/java/org/eobjects/metamodel/query/builder/WhereBuilder.java
deleted file mode 100644
index 3055214..0000000
--- a/core/src/main/java/org/eobjects/metamodel/query/builder/WhereBuilder.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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 org.eobjects.metamodel.query.builder;
-
-import org.eobjects.metamodel.query.CompiledQuery;
-import org.eobjects.metamodel.query.QueryParameter;
-
-/**
- * Builder interface for WHERE items.
- *
- * In addition to the {@link FilterBuilder}, the WHERE builder allows using
- * {@link QueryParameter}s as operands in the generated filters.
- *
- * @param <B>
- */
-public interface WhereBuilder<B extends SatisfiedQueryBuilder<?>> extends FilterBuilder<SatisfiedWhereBuilder<B>> {
-
- /**
- * Equals to a query parameter. Can be used with {@link CompiledQuery}
- * objects.
- */
- public SatisfiedWhereBuilder<B> eq(QueryParameter queryParameter);
-
- /**
- * Equals to a query parameter. Can be used with {@link CompiledQuery}
- * objects.
- */
- public SatisfiedWhereBuilder<B> isEquals(QueryParameter queryParameter);
-
- /**
- * Not equals to a query parameter. Can be used with {@link CompiledQuery}
- * objects.
- */
- public SatisfiedWhereBuilder<B> differentFrom(QueryParameter queryParameter);
-
- /**
- * Not equals to a query parameter. Can be used with {@link CompiledQuery}
- * objects.
- */
- public SatisfiedWhereBuilder<B> ne(QueryParameter queryParameter);
-
- /**
- * Greater than a query parameter. Can be used with {@link CompiledQuery}
- * objects.
- */
- public SatisfiedWhereBuilder<B> greaterThan(QueryParameter queryParameter);
-
- /**
- * Greater than a query parameter. Can be used with {@link CompiledQuery}
- * objects.
- */
- public SatisfiedWhereBuilder<B> gt(QueryParameter queryParameter);
-
- /**
- * Less than a query parameter. Can be used with {@link CompiledQuery}
- * objects.
- */
- public SatisfiedWhereBuilder<B> lessThan(QueryParameter queryParameter);
-
- /**
- * Less than a query parameter. Can be used with {@link CompiledQuery}
- * objects.
- */
- public SatisfiedWhereBuilder<B> lt(QueryParameter queryParameter);
-
- /**
- * Like a query parameter. Can be used with {@link CompiledQuery} objects.
- */
- public SatisfiedWhereBuilder<B> like(QueryParameter queryParameter);
-}
\ No newline at end of file