Package google.registry.bsa.persistence
Record Class DownloadSchedule
java.lang.Object
java.lang.Record
google.registry.bsa.persistence.DownloadSchedule
- Record Components:
latestCompleted
- The most recent job that ended in theDONE
stage.alwaysDownload
- Whether the download should be processed even if the checksums show that it has not changed from the previous one.
public record DownloadSchedule(long jobId, org.joda.time.DateTime jobCreationTime, String jobName, DownloadStage stage, Optional<DownloadSchedule.CompletedJob> latestCompleted, boolean alwaysDownload)
extends Record
Information needed when handling a download from BSA.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final record
Information about a completed BSA download job. -
Constructor Summary
ConstructorDescriptionDownloadSchedule
(long jobId, org.joda.time.DateTime jobCreationTime, String jobName, DownloadStage stage, Optional<DownloadSchedule.CompletedJob> latestCompleted, boolean alwaysDownload) Creates an instance of aDownloadSchedule
record class. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Returns the value of thealwaysDownload
record component.final boolean
Indicates whether some other object is "equal to" this one.final int
hashCode()
Returns a hash code value for this object.org.joda.time.DateTime
Returns the value of thejobCreationTime
record component.long
jobId()
Returns the value of thejobId
record component.jobName()
Returns the value of thejobName
record component.Returns the value of thelatestCompleted
record component.stage()
Returns the value of thestage
record component.final String
toString()
Returns a string representation of this record class.void
updateJobStage
(DownloadStage stage) Updates the current job to the new stage.updateJobStage
(DownloadStage stage, com.google.common.collect.ImmutableMap<BlockListType, String> checksums) Updates the current job to the new stage and sets the checksums of the downloaded files.
-
Constructor Details
-
DownloadSchedule
public DownloadSchedule(long jobId, org.joda.time.DateTime jobCreationTime, String jobName, DownloadStage stage, Optional<DownloadSchedule.CompletedJob> latestCompleted, boolean alwaysDownload) Creates an instance of aDownloadSchedule
record class.- Parameters:
jobId
- the value for thejobId
record componentjobCreationTime
- the value for thejobCreationTime
record componentjobName
- the value for thejobName
record componentstage
- the value for thestage
record componentlatestCompleted
- the value for thelatestCompleted
record componentalwaysDownload
- the value for thealwaysDownload
record component
-
-
Method Details
-
updateJobStage
Updates the current job to the new stage. -
updateJobStage
public DownloadSchedule updateJobStage(DownloadStage stage, com.google.common.collect.ImmutableMap<BlockListType, String> checksums) Updates the current job to the new stage and sets the checksums of the downloaded files.This method may only be invoked during the
DOWNLOAD
stage, and the target stage must be one ofMAKE_DIFF
,CHECK_FOR_STALE_UNBLOCKABLES
,NOP
, orCHECKSUMS_NOT_MATCH
. -
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object)
; primitive components are compared with '=='. -
jobId
public long jobId()Returns the value of thejobId
record component.- Returns:
- the value of the
jobId
record component
-
jobCreationTime
public org.joda.time.DateTime jobCreationTime()Returns the value of thejobCreationTime
record component.- Returns:
- the value of the
jobCreationTime
record component
-
jobName
Returns the value of thejobName
record component.- Returns:
- the value of the
jobName
record component
-
stage
Returns the value of thestage
record component.- Returns:
- the value of the
stage
record component
-
latestCompleted
Returns the value of thelatestCompleted
record component.- Returns:
- the value of the
latestCompleted
record component
-
alwaysDownload
public boolean alwaysDownload()Returns the value of thealwaysDownload
record component.- Returns:
- the value of the
alwaysDownload
record component
-