dk.netarkivet.harvester.webinterface
Class HarvestStatusQuery

java.lang.Object
  extended by dk.netarkivet.harvester.webinterface.HarvestStatusQuery

public class HarvestStatusQuery
extends java.lang.Object

Represents a query for a set of jobs. Filtering can be performed on:

The semantics of the date filters is as follows:
  1. If only a start date is specified, will fetch jobs whose start date is equal or posterior
  2. If only an end date is specified, will fetch jobs whose end date is equal or anterior
  3. If both are specified, will fetch jobs whose start and end date are equal or comprised between the specified bounds.
The class enforces that end date is set at a date posterior to start date. Additionally a sort order (applied to job IDs) can be set (ascending or descending), and the query can be limited to a certain row number and a start index.


Nested Class Summary
static class HarvestStatusQuery.SORT_ORDER
           
static class HarvestStatusQuery.UI_FIELD
          Defines the UI fields and their default values.
 
Field Summary
static java.lang.String CALENDAR_UI_DATE_FORMAT
           
static long DATE_NONE
           
static java.lang.String HARVEST_NAME_ALL
          The String code to select all harvests.
static java.lang.String HARVEST_NAME_WILDCARD
           
static java.lang.String JOBSTATUS_ALL
          The String code to select all states.
static long PAGE_SIZE_NONE
           
 
Constructor Summary
HarvestStatusQuery()
          Builds a default query that will select all jobs.
HarvestStatusQuery(long harvestId, long harvestRunNumber)
          Builds a default query that will find jobs for a given run of a harvest.
HarvestStatusQuery(javax.servlet.ServletRequest req)
          Builds a query from a servlet request.
 
Method Summary
 boolean getCaseSensitiveHarvestName()
           
 long getEndDate()
           
 java.lang.String getEndDateAsString()
           
 java.lang.Long getHarvestId()
           
 java.lang.String getHarvestName()
           
 java.lang.Long getHarvestRunNumber()
           
 long getPageSize()
           
 JobStatus[] getSelectedJobStatuses()
           
 java.util.Set<JobStatus> getSelectedJobStatusesAsSet()
           
 long getStartDate()
           
 java.lang.String getStartDateAsString()
           
 long getStartPageIndex()
           
 boolean isSortAscending()
           
 void setCaseSensitiveHarvestName(boolean caseSensitiveHarvestName)
           
 void setHarvestName(java.lang.String harvestName)
           
 void setJobStatus(java.util.Set<JobStatus> chosenStates)
           
 void setPageSize(long pageSize)
          Sets the page size.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

JOBSTATUS_ALL

public static final java.lang.String JOBSTATUS_ALL
The String code to select all states.

See Also:
Constant Field Values

HARVEST_NAME_ALL

public static final java.lang.String HARVEST_NAME_ALL
The String code to select all harvests.

See Also:
Constant Field Values

HARVEST_NAME_WILDCARD

public static final java.lang.String HARVEST_NAME_WILDCARD
See Also:
Constant Field Values

PAGE_SIZE_NONE

public static final long PAGE_SIZE_NONE
See Also:
Constant Field Values

DATE_NONE

public static final long DATE_NONE
See Also:
Constant Field Values

CALENDAR_UI_DATE_FORMAT

public static final java.lang.String CALENDAR_UI_DATE_FORMAT
See Also:
Constant Field Values
Constructor Detail

HarvestStatusQuery

public HarvestStatusQuery()
Builds a default query that will select all jobs.


HarvestStatusQuery

public HarvestStatusQuery(long harvestId,
                          long harvestRunNumber)
Builds a default query that will find jobs for a given run of a harvest.

Parameters:
harvestId - A given harvestId
harvestRunNumber - a given harvestRunNumber

HarvestStatusQuery

public HarvestStatusQuery(javax.servlet.ServletRequest req)
Builds a query from a servlet request. Unspecified fields are set to their default value.

Parameters:
req - a servlet request
Method Detail

getSelectedJobStatuses

public JobStatus[] getSelectedJobStatuses()

getSelectedJobStatusesAsSet

public java.util.Set<JobStatus> getSelectedJobStatusesAsSet()

getHarvestName

public java.lang.String getHarvestName()

setHarvestName

public void setHarvestName(java.lang.String harvestName)

getHarvestId

public java.lang.Long getHarvestId()

getHarvestRunNumber

public java.lang.Long getHarvestRunNumber()

getStartDate

public long getStartDate()

getEndDate

public long getEndDate()

getStartDateAsString

public java.lang.String getStartDateAsString()

getEndDateAsString

public java.lang.String getEndDateAsString()

isSortAscending

public boolean isSortAscending()

getPageSize

public long getPageSize()

setPageSize

public void setPageSize(long pageSize)
Sets the page size.

Parameters:
pageSize - a number > 0.

getStartPageIndex

public long getStartPageIndex()

setCaseSensitiveHarvestName

public void setCaseSensitiveHarvestName(boolean caseSensitiveHarvestName)

getCaseSensitiveHarvestName

public boolean getCaseSensitiveHarvestName()

setJobStatus

public void setJobStatus(java.util.Set<JobStatus> chosenStates)