Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
a5f488b
Incremented version to 1.0.2
JanHolger Nov 6, 2021
e316723
Update pom.xml
JulianFun123 Nov 8, 2021
b2290a5
Added parent class support for models.
x7airworker Nov 29, 2021
1aabe50
Added test case for non-abstract parent
x7airworker Nov 29, 2021
d9c3c2e
Added support for n amount of super classes
x7airworker Nov 30, 2021
1cace0b
Splitted table and column analysis into two methods
x7airworker Dec 2, 2021
c939910
Merge pull request #31 from JavaWebStack/feature/parentClass
JanHolger Dec 2, 2021
d46558d
Order of analyzeColumns and analyzeTable was wrong
x7airworker Dec 2, 2021
a6880f7
Merge pull request #32 from JavaWebStack/feature/parentClass
JanHolger Dec 2, 2021
a954e80
Added a fork() method to the SQL interface and implemented a thread l…
JanHolger Feb 14, 2022
a798304
Merge remote-tracking branch 'origin/dev' into dev
JanHolger Feb 14, 2022
75d8596
Added grouping for the Accessible in order to improve security.
JanHolger Mar 21, 2022
804d8aa
Fixed issue with empty where in combination with the accessible
JanHolger Mar 21, 2022
abe4f8b
Fixed issue with empty where in combination with the accessible
JanHolger Mar 21, 2022
4ea3b03
Fixed #34 (refresh throwing exception) and optimized imports
JanHolger May 1, 2022
a63f495
Merge remote-tracking branch 'origin/dev' into dev
JanHolger May 1, 2022
1b1a25c
Implemented #36 (don't render empty groups)
JanHolger May 1, 2022
9d146e8
Implemented #35 (render empty IN as 1=2)
JanHolger May 1, 2022
ce66dbe
Updated abstract-data to 1.0.2
JanHolger May 1, 2022
cf52c50
Fixed create not using the session system
JanHolger May 18, 2022
9f73d83
Added hotfix for missing braces in DefaultMapper and added support fo…
JanHolger Aug 13, 2022
309e612
Fixed data type for abstract data json mapper
JanHolger Aug 19, 2022
a0a1548
Upgraded abstract-data
JanHolger Oct 7, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Implemented #36 (don't render empty groups)
  • Loading branch information
JanHolger committed May 1, 2022
commit 1b1a25c2d141183a3adf7ce1fa915e02dc43112a
38 changes: 10 additions & 28 deletions src/main/java/org/javawebstack/orm/query/Query.java
Original file line number Diff line number Diff line change
Expand Up @@ -144,18 +144,6 @@ public Query<T> orLike(String left, Object right) {
return orWhere(left, "LIKE", right);
}

public QueryGroup<T> whereMorph(String name, Class<? extends Model> type) {
return where.whereMorph(name, type);
}

public QueryGroup<T> whereMorph(String name, Class<? extends Model> type, Object id) {
return where.whereMorph(name, type, id);
}

public QueryGroup<T> whereMorph(String name, Model entity) {
return where.whereMorph(name, entity);
}

public Query<T> orWhere(Class<? extends Model> leftTable, String left, String operator, Class<? extends Model> rightTable, String right) {
if (rightTable != null)
right = Repo.get(rightTable).getInfo().getTableName() + "." + Repo.get(rightTable).getInfo().getColumnName(right);
Expand Down Expand Up @@ -212,33 +200,25 @@ public Query<T> orWhereId(String operator, Class<? extends Model> other, String
return orWhereId(operator, new QueryColumn(Repo.get(other).getInfo().getTableName() + "." + Repo.get(other).getInfo().getColumnName(field)));
}

@Deprecated
public Query<T> isNull(Object left) {
where.isNull(left);
return this;
}

@Deprecated
public Query<T> notNull(Object left) {
where.notNull(left);
return this;
}

public Query<T> whereNull(Object left) {
where.isNull(left);
where.whereNull(left);
return this;
}

public Query<T> whereNotNull(Object left) {
where.notNull(left);
return this;
}

public Query<T> lessThan(Object left, Object right) {
where.lessThan(left, right);
return this;
}

public Query<T> greaterThan(Object left, Object right) {
where.greaterThan(left, right);
where.whereNotNull(left);
return this;
}

Expand All @@ -252,23 +232,25 @@ public Query<T> orWhere(Object left, Object right) {
return this;
}

@Deprecated
public Query<T> orIsNull(Object left) {
where.orIsNull(left);
return this;
}

@Deprecated
public Query<T> orNotNull(Object left) {
where.orNotNull(left);
return this;
}

public Query<T> orLessThan(Object left, Object right) {
where.orLessThan(left, right);
public Query<T> orWhereNull(Object left) {
where.orWhereNull(left);
return this;
}

public Query<T> orGreaterThan(Object left, Object right) {
where.orGreaterThan(left, right);
public Query<T> orWhereNotNull(Object left) {
where.orWhereNotNull(left);
return this;
}

Expand Down
54 changes: 26 additions & 28 deletions src/main/java/org/javawebstack/orm/query/QueryGroup.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,16 +29,30 @@ public List<QueryElement> getQueryElements() {
return queryElements;
}

@Deprecated
public QueryGroup<T> and(Function<QueryGroup<T>, QueryGroup<T>> group) {
return where(group);
}

public QueryGroup<T> where(Function<QueryGroup<T>, QueryGroup<T>> group) {
QueryGroup<T> innerGroup = group.apply(new QueryGroup<>());
if(innerGroup.queryElements.size() == 0)
return this;
if (queryElements.size() > 0)
queryElements.add(QueryConjunction.AND);
queryElements.add(innerGroup);
return this;
}

@Deprecated
public QueryGroup<T> or(Function<QueryGroup<T>, QueryGroup<T>> group) {
return orWhere(group);
}

public QueryGroup<T> orWhere(Function<QueryGroup<T>, QueryGroup<T>> group) {
QueryGroup<T> innerGroup = group.apply(new QueryGroup<>());
if(innerGroup.queryElements.size() == 0)
return this;
if (queryElements.size() > 0)
queryElements.add(QueryConjunction.OR);
queryElements.add(innerGroup);
Expand Down Expand Up @@ -68,28 +82,18 @@ public QueryGroup<T> where(Class<? extends Model> leftTable, String left, String
return where(left, operator, right);
}

public QueryGroup<T> whereMorph(String name, Class<? extends Model> type) {
return where(name + "Type", Repo.get(type).getInfo().getMorphType());
}

public QueryGroup<T> whereMorph(String name, Class<? extends Model> type, Object id) {
return whereMorph(name, type).where(name + "Id", id);
}

public QueryGroup<T> whereMorph(String name, Model entity) {
return whereMorph(name, entity.getClass(), Repo.get(entity.getClass()).getId(entity));
}

public QueryGroup<T> where(Object left, Object right) {
return where(left, "=", right);
}

@Deprecated
public QueryGroup<T> isNull(Object left) {
return where(left, "IS NULL", null);
return whereNull(left);
}

@Deprecated
public QueryGroup<T> notNull(Object left) {
return where(left, "IS NOT NULL", null);
return whereNotNull(left);
}

public QueryGroup<T> whereNull(Object left) {
Expand All @@ -100,14 +104,6 @@ public QueryGroup<T> whereNotNull(Object left) {
return where(left, "IS NOT NULL", null);
}

public QueryGroup<T> lessThan(Object left, Object right) {
return where(left, "<", right);
}

public QueryGroup<T> greaterThan(Object left, Object right) {
return where(left, ">", right);
}

public QueryGroup<T> orWhere(Object left, String condition, Object right) {
if(condition.equalsIgnoreCase("=") && right == null)
return orIsNull(left);
Expand Down Expand Up @@ -147,20 +143,22 @@ public QueryGroup<T> orWhereMorph(String name, Model entity) {
return orWhereMorph(name, entity.getClass(), Repo.get(entity.getClass()).getId(entity));
}

@Deprecated
public QueryGroup<T> orIsNull(Object left) {
return orWhere(left, "IS NULL", null);
return orWhereNull(left);
}

@Deprecated
public QueryGroup<T> orNotNull(Object left) {
return orWhere(left, "IS NOT NULL", null);
return orWhereNotNull(left);
}

public QueryGroup<T> orLessThan(Object left, Object right) {
return orWhere(left, "<", right);
public QueryGroup<T> orWhereNull(Object left) {
return orWhere(left, "IS NULL", null);
}

public QueryGroup<T> orGreaterThan(Object left, Object right) {
return orWhere(left, ">", right);
public QueryGroup<T> orWhereNotNull(Object left) {
return orWhere(left, "IS NOT NULL", null);
}

public <M extends Model> QueryGroup<T> whereExists(Class<M> model, Function<Query<M>, Query<M>> consumer) {
Expand Down