[Major] Using DateRange in DateSelector

This commit is contained in:
Robert von Burg 2014-08-26 22:02:20 +02:00
parent e9fc3d7ac8
commit b8bfaf8408
6 changed files with 67 additions and 13 deletions

View File

@ -15,8 +15,8 @@
*/
package li.strolch.model.audit;
import ch.eitchnet.utils.StringMatchMode;
import li.strolch.model.query.StringSelection;
import ch.eitchnet.utils.StringMatchMode;
/**
* @author Robert von Burg <eitch@eitchnet.ch>
@ -44,6 +44,10 @@ public class ActionSelection extends AuditSelection {
return this.accessTypes;
}
public StringSelection getActionSelection() {
return this.actionSelection;
}
public boolean isWildcardActionType() {
return this.accessTypes == null || this.accessTypes.length == 0;
}

View File

@ -28,6 +28,7 @@ public class DateRangeSelection extends AuditSelection {
public DateRangeSelection(AuditQuery query) {
super(query);
this.dateRange = new DateRange();
}
public DateRange from(Date from, boolean inclusive) {

View File

@ -15,8 +15,8 @@
*/
package li.strolch.model.audit;
import ch.eitchnet.utils.StringMatchMode;
import li.strolch.model.query.StringSelection;
import ch.eitchnet.utils.StringMatchMode;
/**
* @author Robert von Burg <eitch@eitchnet.ch>
@ -56,6 +56,10 @@ public class ElementSelection extends AuditSelection {
return this.elementAccessedSelection == null || this.elementAccessedSelection.isWildCard();
}
public boolean isWildcard() {
return this.isElementsAccessedWildcard() && this.isElementTypesWildcard();
}
@Override
public void accept(AuditQueryVisitor visitor) {
visitor.visit(this);

View File

@ -15,8 +15,8 @@
*/
package li.strolch.model.audit;
import ch.eitchnet.utils.StringMatchMode;
import li.strolch.model.query.StringSelection;
import ch.eitchnet.utils.StringMatchMode;
/**
* @author Robert von Burg <eitch@eitchnet.ch>
@ -79,6 +79,10 @@ public class IdentitySelection extends AuditSelection {
return this.usernameSelection == null || this.usernameSelection.isWildCard();
}
public boolean isWildcard() {
return isFirstnameWildcard() && isLastnameWildcard() && isUsernameWildcard();
}
@Override
public void accept(AuditQueryVisitor visitor) {
visitor.visit(this);

View File

@ -17,19 +17,59 @@ package li.strolch.model.query;
import java.util.Date;
import ch.eitchnet.utils.collections.DateRange;
/**
* @author Robert von Burg <eitch@eitchnet.ch>
*/
public class DateSelection extends OrderSelection {
private Date date;
private DateRange dateRange;
public DateSelection(Date date) {
this.date = date;
public DateSelection() {
this.dateRange = new DateRange();
}
public Date getDate() {
return this.date;
public DateSelection from(Date from, boolean inclusive) {
this.dateRange.from(from, inclusive);
return this;
}
public DateSelection to(Date to, boolean inclusive) {
this.dateRange.to(to, inclusive);
return this;
}
public Date getFromDate() {
return this.dateRange.getFromDate();
}
public Date getToDate() {
return this.dateRange.getToDate();
}
public boolean isFromBounded() {
return this.dateRange.isFromBounded();
}
public boolean isToBounded() {
return this.dateRange.isToBounded();
}
public boolean isUnbounded() {
return this.dateRange.isUnbounded();
}
public boolean isBounded() {
return this.dateRange.isBounded();
}
public boolean contains(Date date) {
return this.dateRange.contains(date);
}
public DateRange getDateRange() {
return this.dateRange;
}
@Override

View File

@ -19,9 +19,8 @@ import li.strolch.model.State;
/**
* @author Robert von Burg <eitch@eitchnet.ch>
*
*/
public class StateSelection {
public class StateSelection extends OrderSelection {
private State state;
@ -29,10 +28,12 @@ public class StateSelection {
this.state = state;
}
/**
* @return the state
*/
public State getState() {
return this.state;
}
@Override
public void accept(OrderSelectionVisitor visitor) {
visitor.visit(this);
}
}