Deletes unused module
This commit is contained in:
parent
2bb18786b3
commit
9467d2b9ee
File diff suppressed because one or more lines are too long
|
@ -1 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><root><dmp><dmpName>DMP Demodfgdfg</dmpName><projectName>OpenAIREplus</projectName><organisations><organisation name="Nord University" reference="organizationrepo:cristin/204"/><organisation name="Hanne Moa" reference="personrepo:orcid-sandbox/0000-0003-2050-142X"/></organisations><researchers/><datasets/></dmp></root>
|
File diff suppressed because one or more lines are too long
|
@ -1,22 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>dmp-backend</artifactId>
|
||||
<groupId>eu.eudat</groupId>
|
||||
<version>1.0.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<artifactId>query-engine</artifactId>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>eu.eudat</groupId>
|
||||
<artifactId>data</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
|
@ -1,23 +0,0 @@
|
|||
import eu.eudat.data.entities.DataRepository;
|
||||
import eu.eudat.query.engine.builder.QueryBuilder;
|
||||
import eu.eudat.query.engine.builder.QueryBuilderImpl;
|
||||
import eu.eudat.query.engine.predicates.ComparisonPredicate;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public class Main {
|
||||
public static void main(String[] args){
|
||||
new Main().Test();
|
||||
}
|
||||
public void Test(){
|
||||
QueryBuilder<DataRepository> queryBuilder = new QueryBuilderImpl<>(DataRepository.class);
|
||||
queryBuilder.<ComparisonPredicate>where((comparisonExpression) -> comparisonExpression.field("id").greaterThan(5) );
|
||||
queryBuilder.<ComparisonPredicate>where((comparisonExpression) -> comparisonExpression.field("label").equal("mitsos") );
|
||||
queryBuilder.toList();
|
||||
|
||||
QueryBuilder<DataRepository> queryBuilder2 = new QueryBuilderImpl<>(DataRepository.class);
|
||||
queryBuilder2.<ComparisonPredicate>where((comparisonExpression) -> comparisonExpression.field("id").lessOrEqualThan(11111) );
|
||||
queryBuilder2.toList();
|
||||
}
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
package eu.eudat.query.engine.builder;
|
||||
|
||||
import eu.eudat.query.engine.expressions.Expression;
|
||||
import eu.eudat.query.engine.predicates.Predicate;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public interface QueryBuilder<T> {
|
||||
|
||||
<P extends Predicate> Expression where(P wherePredicate);
|
||||
|
||||
List<T> toList();
|
||||
}
|
|
@ -1,50 +0,0 @@
|
|||
package eu.eudat.query.engine.builder;
|
||||
|
||||
import eu.eudat.query.engine.expressions.ComparisonExpression;
|
||||
import eu.eudat.query.engine.expressions.Expression;
|
||||
import eu.eudat.query.engine.predicates.Predicate;
|
||||
|
||||
import java.lang.annotation.Annotation;
|
||||
import java.util.Arrays;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public class QueryBuilderImpl<T> implements QueryBuilder<T> {
|
||||
|
||||
private List<Expression> expressions = new LinkedList<>();
|
||||
private Class<T> tClass;
|
||||
|
||||
public QueryBuilderImpl(Class<T> tClass) {
|
||||
this.tClass = tClass;
|
||||
}
|
||||
|
||||
@Override
|
||||
public <P extends Predicate> Expression where(P wherePredicate) {
|
||||
ComparisonExpression comparisonExpression = new ComparisonExpression();
|
||||
Expression expression = wherePredicate.apply(comparisonExpression);
|
||||
this.expressions.add(expression);
|
||||
return expression;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<T> toList() {
|
||||
String query = "Select * from ";
|
||||
Optional<Annotation> optionalAnnotation = Arrays.stream(this.tClass.getAnnotations())
|
||||
.filter(x-> x.annotationType().equals(javax.persistence.Table.class))
|
||||
.findFirst();
|
||||
|
||||
javax.persistence.Table annotation = optionalAnnotation.isPresent() ? (javax.persistence.Table)optionalAnnotation.get() : null;
|
||||
query += annotation.name()+" ";
|
||||
for (Expression expression : expressions) {
|
||||
if(expressions.indexOf(expression) > 0) query+= " and ";
|
||||
else query += " where ";
|
||||
query += expression.evaluate();
|
||||
}
|
||||
System.out.println(query);
|
||||
return null;
|
||||
}
|
||||
}
|
|
@ -1,17 +0,0 @@
|
|||
package eu.eudat.query.engine.expressions;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public abstract class AbstractFieldExpression<T extends AbstractFieldExpression<T>> {
|
||||
private String field;
|
||||
|
||||
protected String getField() {
|
||||
return field;
|
||||
}
|
||||
|
||||
public T field(String field) {
|
||||
this.field = field;
|
||||
return (T)this;
|
||||
}
|
||||
}
|
|
@ -1,47 +0,0 @@
|
|||
package eu.eudat.query.engine.expressions;
|
||||
|
||||
import eu.eudat.query.engine.types.expression.comparison.ComparisonExpressionType;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public class ComparisonExpression extends AbstractFieldExpression<ComparisonExpression> implements Expression {
|
||||
|
||||
private ComparisonExpressionType type;
|
||||
private Object value;
|
||||
|
||||
public <T> Expression greaterThan(T value){
|
||||
this.value = value;
|
||||
this.type = ComparisonExpressionType.GREATER_THAN;
|
||||
return this;
|
||||
}
|
||||
|
||||
public <T> Expression greaterThanOrEqual(T value){
|
||||
this.value = value;
|
||||
this.type = ComparisonExpressionType.GREATER_OR_EQUAL_THAN;
|
||||
return this;
|
||||
}
|
||||
|
||||
public <T> Expression equal(T value){
|
||||
this.value = value;
|
||||
this.type = ComparisonExpressionType.EQUAL;
|
||||
return this;
|
||||
}
|
||||
|
||||
public <T> Expression lessThan(T value){
|
||||
this.value = value;
|
||||
this.type = ComparisonExpressionType.LESS_THAN;
|
||||
return this;
|
||||
}
|
||||
|
||||
public <T> Expression lessOrEqualThan(T value){
|
||||
this.value = value;
|
||||
this.type = ComparisonExpressionType.LESS_OR_EQUAL_THAN;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String evaluate() {
|
||||
return this.getField() +" " + type.toString() + " " + value ;
|
||||
}
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
package eu.eudat.query.engine.expressions;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public interface Expression {
|
||||
String evaluate();
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
package eu.eudat.query.engine.predicates;
|
||||
|
||||
import eu.eudat.query.engine.expressions.ComparisonExpression;
|
||||
import eu.eudat.query.engine.expressions.Expression;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public interface ComparisonPredicate extends Predicate<ComparisonExpression> {
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
package eu.eudat.query.engine.predicates;
|
||||
|
||||
import eu.eudat.query.engine.expressions.ComparisonExpression;
|
||||
import eu.eudat.query.engine.expressions.Expression;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public interface Predicate<E extends Expression> {
|
||||
Expression apply( E expression);
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
package eu.eudat.query.engine.types.expression.comparison;
|
||||
|
||||
/**
|
||||
* Created by ikalyvas on 7/5/2018.
|
||||
*/
|
||||
public enum ComparisonExpressionType {
|
||||
EQUAL, GREATER_THAN, GREATER_OR_EQUAL_THAN, LESS_THAN, LESS_OR_EQUAL_THAN
|
||||
}
|
Loading…
Reference in New Issue