Skip to content

Commit

Permalink
docs: update documentation at query builder
Browse files Browse the repository at this point in the history
Signed-off-by: Otavio Santana <otaviopolianasantana@gmail.com>
  • Loading branch information
otaviojava committed Mar 2, 2024
1 parent 46d4ea6 commit 47f68ec
Show file tree
Hide file tree
Showing 3 changed files with 277 additions and 300 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,16 @@


import jakarta.data.Sort;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnFrom;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnLimit;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnNameCondition;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnNameOrder;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnNotCondition;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnOrder;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnQueryBuild;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnSelect;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnSkip;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.ColumnWhere;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectFrom;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectLimit;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectNameCondition;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectNameOrder;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectNotCondition;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectOrder;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectQueryBuild;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectElements;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectSkip;
import org.eclipse.jnosql.communication.semistructured.SelectQuery.SelectWhere;

import java.util.ArrayList;
import java.util.List;
Expand All @@ -39,9 +39,9 @@
/**
* The default implementation of the Select in the column
*/
class DefaultFluentColumnQueryBuilder extends BaseQueryBuilder implements
ColumnSelect, ColumnFrom, ColumnLimit, ColumnSkip,
ColumnOrder, ColumnNameCondition, ColumnNotCondition, ColumnNameOrder, ColumnWhere, ColumnQueryBuild {
class DefaultFluentSelectQueryBuilderElements extends BaseQueryBuilder implements
SelectElements, SelectFrom, SelectLimit, SelectSkip,
SelectOrder, SelectNameCondition, SelectNotCondition, SelectNameOrder, SelectWhere, SelectQueryBuild {


private String columnFamily;
Expand All @@ -55,44 +55,44 @@ class DefaultFluentColumnQueryBuilder extends BaseQueryBuilder implements
private final List<String> columns;


DefaultFluentColumnQueryBuilder(List<String> columns) {
DefaultFluentSelectQueryBuilderElements(List<String> columns) {
this.columns = columns;
}


@Override
public ColumnFrom from(String columnFamily) {
requireNonNull(columnFamily, "columnFamily is required");
this.columnFamily = columnFamily;
public SelectFrom from(String entity) {
requireNonNull(entity, "columnFamily is required");
this.columnFamily = entity;
return this;
}


@Override
public ColumnNameCondition where(String name) {
public SelectNameCondition where(String name) {
requireNonNull(name, "name is required");
this.name = name;
return this;
}

@Override
public ColumnNameCondition and(String name) {
public SelectNameCondition and(String name) {
requireNonNull(name, "name is required");
this.name = name;
this.and = true;
return this;
}

@Override
public ColumnNameCondition or(String name) {
public SelectNameCondition or(String name) {
requireNonNull(name, "name is required");
this.name = name;
this.and = false;
return this;
}

@Override
public ColumnSkip skip(long skip) {
public SelectSkip skip(long skip) {
if (skip < 0) {
throw new IllegalArgumentException("The skip should not be negative, skip: " + skip);
}
Expand All @@ -101,7 +101,7 @@ public ColumnSkip skip(long skip) {
}

@Override
public ColumnLimit limit(long limit) {
public SelectLimit limit(long limit) {
if (limit < 0) {
throw new IllegalArgumentException("The limit should not be negative, limit: " + limit);
}
Expand All @@ -110,78 +110,78 @@ public ColumnLimit limit(long limit) {
}

@Override
public ColumnOrder orderBy(String name) {
public SelectOrder orderBy(String name) {
requireNonNull(name, "name is required");
this.name = name;
return this;
}


@Override
public ColumnNotCondition not() {
public SelectNotCondition not() {
this.negate = true;
return this;
}

@Override
public <T> ColumnWhere eq(T value) {
public <T> SelectWhere eq(T value) {
eqImpl(value);
return this;
}

@Override
public ColumnWhere like(String value) {
public SelectWhere like(String value) {
likeImpl(value);
return this;
}

@Override
public <T> ColumnWhere gt(T value) {
public <T> SelectWhere gt(T value) {
gtImpl(value);
return this;
}

@Override
public <T> ColumnWhere gte(T value) {
public <T> SelectWhere gte(T value) {
gteImpl(value);
return this;
}

@Override
public <T> ColumnWhere lt(T value) {
public <T> SelectWhere lt(T value) {
ltImpl(value);
return this;
}


@Override
public <T> ColumnWhere lte(T value) {
public <T> SelectWhere lte(T value) {
lteImpl(value);
return this;
}

@Override
public <T> ColumnWhere between(T valueA, T valueB) {
public <T> SelectWhere between(T valueA, T valueB) {
betweenImpl(valueA, valueB);
return this;
}


@Override
public <T> ColumnWhere in(Iterable<T> values) {
public <T> SelectWhere in(Iterable<T> values) {
inImpl(values);
return this;
}


@Override
public ColumnNameOrder asc() {
public SelectNameOrder asc() {
this.sorts.add(Sort.asc(name));
return this;
}

@Override
public ColumnNameOrder desc() {
public SelectNameOrder desc() {
this.sorts.add(Sort.desc(name));
return this;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@

import static java.util.Objects.requireNonNull;

class DefaultColumnQueryBuilder implements SelectQuery.ColumnQueryBuilder {
class DefaultQueryBuilder implements SelectQuery.QueryBuilder {

private final List<String> columns = new ArrayList<>();

Expand All @@ -44,51 +44,51 @@ class DefaultColumnQueryBuilder implements SelectQuery.ColumnQueryBuilder {


@Override
public SelectQuery.ColumnQueryBuilder select(String column) {
public SelectQuery.QueryBuilder select(String column) {
Objects.requireNonNull(column, "column is required");
this.columns.add(column);
return this;
}

@Override
public SelectQuery.ColumnQueryBuilder select(String... columns) {
public SelectQuery.QueryBuilder select(String... columns) {
Consumer<String> validNull = d -> requireNonNull(d, "there is null column in the query");
Consumer<String> consume = this.columns::add;
Stream.of(columns).forEach(validNull.andThen(consume));
return this;
}

@Override
public SelectQuery.ColumnQueryBuilder sort(Sort sort) {
public SelectQuery.QueryBuilder sort(Sort sort) {
Objects.requireNonNull(sort, "sort is required");
this.sorts.add(sort);
return this;
}

@Override
public SelectQuery.ColumnQueryBuilder sort(Sort... sorts) {
public SelectQuery.QueryBuilder sort(Sort... sorts) {
Consumer<Sort> validNull = d -> requireNonNull(d, "there is null document in the query");
Consumer<Sort> consume = this.sorts::add;
Stream.of(sorts).forEach(validNull.andThen(consume));
return this;
}

@Override
public SelectQuery.ColumnQueryBuilder from(String documentCollection) {
Objects.requireNonNull(documentCollection, "documentCollection is required");
this.documentCollection = documentCollection;
public SelectQuery.QueryBuilder from(String entity) {
Objects.requireNonNull(entity, "documentCollection is required");
this.documentCollection = entity;
return this;
}

@Override
public SelectQuery.ColumnQueryBuilder where(CriteriaCondition condition) {
public SelectQuery.QueryBuilder where(CriteriaCondition condition) {
Objects.requireNonNull(condition, "condition is required");
this.condition = condition;
return this;
}

@Override
public SelectQuery.ColumnQueryBuilder skip(long skip) {
public SelectQuery.QueryBuilder skip(long skip) {
if (skip < 0) {
throw new IllegalArgumentException("The skip should not be negative, skip: " + skip);
}
Expand All @@ -97,7 +97,7 @@ public SelectQuery.ColumnQueryBuilder skip(long skip) {
}

@Override
public SelectQuery.ColumnQueryBuilder limit(long limit) {
public SelectQuery.QueryBuilder limit(long limit) {
if (limit < 0) {
throw new IllegalArgumentException("The limit should not be negative, limit: " + limit);
}
Expand Down Expand Up @@ -134,7 +134,7 @@ public boolean equals(Object o) {
if (o == null || getClass() != o.getClass()) {
return false;
}
DefaultColumnQueryBuilder that = (DefaultColumnQueryBuilder) o;
DefaultQueryBuilder that = (DefaultQueryBuilder) o;
return skip == that.skip
&& limit == that.limit
&& Objects.equals(columns, that.columns)
Expand Down
Loading

0 comments on commit 47f68ec

Please sign in to comment.