|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectdk.netarkivet.harvester.datamodel.Job
public class Job
This class represents one job to run by Heritrix. It's based on a number of configurations all based on the same order.xml and at most one configuration pr. domain. Each job consists of configurations of the approximate same size; that is the difference in expectation from the smallest configuration to the largest configuration is within a factor of eachother defined as limMaxRelSize (although differences smaller than limMinAbsSize are ignored) There is a limit limMaxTotalSize on the total size of the job in objects. A job may also be limited on bytes or objects, defined either by the configurations in the job or the harvest definition the job is generated by. The job contains the order file, the seedlist and the current status of the job, as well as the ID of the harvest definition that defined it and names of all the configurations it is based on.
Field Summary | |
---|---|
(package private) boolean |
configsChanged
A hint to the DAO that configurations have changed. |
Constructor Summary | |
---|---|
Job(java.lang.Long harvestID,
DomainConfiguration cfg,
JobPriority priority,
long forceMaxObjectsPerDomain,
long forceMaxBytesPerDomain,
int harvestNum)
Package private constructor for common initialisation. |
|
Job(java.lang.Long harvestID,
java.util.Map<java.lang.String,java.lang.String> configurations,
JobPriority priority,
long forceMaxObjectsPerDomain,
long forceMaxBytesPerDomain,
JobStatus status,
java.lang.String orderXMLname,
org.dom4j.Document orderXMLdoc,
java.lang.String seedlist,
int harvestNum)
Create a new Job object from basic information storable in the DAO. |
Method Summary | |
---|---|
void |
addConfiguration(DomainConfiguration cfg)
Adds a configuration to this Job. |
void |
appendHarvestErrorDetails(java.lang.String harvestErrorDetails)
|
void |
appendHarvestErrors(java.lang.String harvestErrors)
|
void |
appendUploadErrorDetails(java.lang.String uploadErrorDetails)
|
void |
appendUploadErrors(java.lang.String uploadErrors)
|
boolean |
canAccept(DomainConfiguration cfg)
Tests if a configuration fits into this Job. |
static Job |
createJob(java.lang.Long harvestID,
DomainConfiguration cfg,
int harvestNum)
Create new Job configured according to the properties of the supplied DomainConfiguration. |
static Job |
createSnapShotJob(java.lang.Long harvestID,
DomainConfiguration cfg,
long maxObjectsPerDomain,
long maxBytesPerDomain,
int harvestNum)
Create new instance of Job suitable for snapshot harvesting. |
java.util.Date |
getActualStart()
Get the actual time when this job was started. |
java.util.Date |
getActualStop()
Get the actual time when this job was stopped/completed. |
int |
getCountDomains()
Get's the total number of different domains harvested by this job. |
java.util.Map<java.lang.String,java.lang.String> |
getDomainConfigurationMap()
Returns a map of domain names and name of their corresponding configuration. |
(package private) long |
getEdition()
Get the edition number. |
(package private) long |
getForceMaxObjectsPerDomain()
|
java.lang.String |
getHarvestErrorDetails()
|
java.lang.String |
getHarvestErrors()
|
int |
getHarvestNum()
|
java.util.List<AliasInfo> |
getJobAliasInfo()
Get a list of AliasInfo objects for all the domains included in the job. |
java.lang.Long |
getJobID()
Get the id of this Job. |
long |
getMaxBytesPerDomain()
Gets the maximum number of bytes harvested per domain. |
long |
getMaxObjectsPerDomain()
Gets the maximum number of objects harvested per domain. |
org.dom4j.Document |
getOrderXMLdoc()
Gets a document representation of the order.xml associated with this Job. |
java.lang.String |
getOrderXMLName()
Get the name of the order XML file used by this Job. |
java.lang.Long |
getOrigHarvestDefinitionID()
Get the id of the HarvestDefinition from which this job originates. |
JobPriority |
getPriority()
Get the priority of this job. |
java.lang.String |
getSeedList()
Get the seedlist associated with this Job. |
org.dom4j.Document[] |
getSettingsXMLdocs()
Gets a list of document representations of the settings.xml's associated with this Job. |
java.io.File[] |
getSettingsXMLfiles()
Get a list of settings.xml files. |
JobStatus |
getStatus()
Get the current status of this Job. |
java.lang.String |
getUploadErrorDetails()
|
java.lang.String |
getUploadErrors()
|
Job |
makeNewCopy()
Make a copy of the job, but don't add it to the DAO. |
void |
setActualStart(java.util.Date actualStart)
Set the actual time when this job was started. |
void |
setActualStop(java.util.Date actualStop)
Set the actual time when this job was stopped/completed. |
(package private) void |
setEdition(long edition)
Set the edition number. |
void |
setHarvestNum(int harvestNum)
|
void |
setJobID(java.lang.Long id)
Set the id of this Job. |
void |
setStatus(int status)
Sets status of this job. |
void |
setStatus(JobStatus newStatus)
|
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
boolean configsChanged
Constructor Detail |
---|
Job(java.lang.Long harvestID, DomainConfiguration cfg, JobPriority priority, long forceMaxObjectsPerDomain, long forceMaxBytesPerDomain, int harvestNum) throws ArgumentNotValid
harvestID
- the id of the harvestdefinitioncfg
- the configuration to base the Job onpriority
- the priority of the jobforceMaxObjectsPerDomain
- the maximum number of objects harvested
from a domain, overrides individual
configuration settings. -1 means no limit.forceMaxBytesPerDomain
- The maximum number of objects harvested
from a domain, or -1 for no limit.harvestNum
- the run number of the harvest definition
ArgumentNotValid
- if cfg or priority is null or harvestID is
invalid, or if any limit < -1
UnknownID
- If the priority is invalid.Job(java.lang.Long harvestID, java.util.Map<java.lang.String,java.lang.String> configurations, JobPriority priority, long forceMaxObjectsPerDomain, long forceMaxBytesPerDomain, JobStatus status, java.lang.String orderXMLname, org.dom4j.Document orderXMLdoc, java.lang.String seedlist, int harvestNum)
harvestID
- the id of the harvestdefinitionconfigurations
- the configurations to base the Job onpriority
- the priority of the jobforceMaxObjectsPerDomain
- the maximum number of objects harvested
from a domain, overrides individual
configuration settings. 0 means no limit.forceMaxBytesPerDomain
- The maximum number of objects harvested
from a domain, or -1 for no limit.status
- the current status of the job.orderXMLname
- the name of the order template used.orderXMLdoc
- the (possibly modified) templateseedlist
- the combined seedlist from all configs.harvestNum
- the run number of the harvest definitionMethod Detail |
---|
public static Job createJob(java.lang.Long harvestID, DomainConfiguration cfg, int harvestNum)
harvestID
- the id of the harvestdefinitioncfg
- the configuration to base the Job onharvestNum
- Which run of the harvest definition this is.
ArgumentNotValid
- if cfg is null or harvestID is invalidpublic static Job createSnapShotJob(java.lang.Long harvestID, DomainConfiguration cfg, long maxObjectsPerDomain, long maxBytesPerDomain, int harvestNum) throws ArgumentNotValid
harvestID
- the id of the harvestdefinitioncfg
- the configuration to base the Job onmaxObjectsPerDomain
- the maximum number of objects to harvest from a
domain, overrides individual configuration
settings unless the domain has overrideLimits
set. 0 means no limit.maxBytesPerDomain
- the maximum number of bytes to harvest from a
domain, overrides individual configuration
settings unless the domain has overrideLimits
set. -1 means no limit.harvestNum
- Which run of the harvest definition this is
(should always be 1).
ArgumentNotValid
- if cfg is null or harvestID is invalidpublic void addConfiguration(DomainConfiguration cfg)
cfg
- the configuration to add
ArgumentNotValid
- if cfg is null or cfg uses a
different orderxml than this job
or if this job already contains a configuration
associated with domain of configuration cfg.public boolean canAccept(DomainConfiguration cfg)
cfg
- the configuration to check
ArgumentNotValid
- if cfg is nullpublic java.lang.String getOrderXMLName()
public java.util.Date getActualStop()
public java.util.Date getActualStart()
public java.io.File[] getSettingsXMLfiles()
public java.lang.Long getOrigHarvestDefinitionID()
public java.lang.Long getJobID()
public void setJobID(java.lang.Long id)
id
- public int getCountDomains()
public void setActualStart(java.util.Date actualStart)
actualStart
- A Date object representing the time when this job was started.public void setActualStop(java.util.Date actualStop)
actualStop
- A Date object representing the time when this job was stopped.public org.dom4j.Document getOrderXMLdoc()
public org.dom4j.Document[] getSettingsXMLdocs()
public java.lang.String getSeedList()
public JobStatus getStatus()
public void setStatus(int status)
status
- Must be one of the values STATUS_NEW, ..., STATUS_FAILED
ArgumentNotValid
- in case of invalid status argument or invalid status changepublic void setStatus(JobStatus newStatus)
public java.util.Map<java.lang.String,java.lang.String> getDomainConfigurationMap()
public long getMaxObjectsPerDomain()
public long getMaxBytesPerDomain()
long getEdition()
void setEdition(long edition)
edition
- public java.lang.String toString()
toString
in class java.lang.Object
long getForceMaxObjectsPerDomain()
public JobPriority getPriority()
public Job makeNewCopy()
public int getHarvestNum()
public void setHarvestNum(int harvestNum)
public java.lang.String getHarvestErrors()
public void appendHarvestErrors(java.lang.String harvestErrors)
public java.lang.String getHarvestErrorDetails()
public void appendHarvestErrorDetails(java.lang.String harvestErrorDetails)
public java.lang.String getUploadErrors()
public void appendUploadErrors(java.lang.String uploadErrors)
public java.lang.String getUploadErrorDetails()
public void appendUploadErrorDetails(java.lang.String uploadErrorDetails)
public java.util.List<AliasInfo> getJobAliasInfo()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |