mirror of
https://github.com/google/nomulus.git
synced 2025-05-17 01:47:14 +02:00
Fix URS check in BackfillRegistryLocksCommand (#1315)
* Fix URS check in BackfillRegistryLocksCommand "reason" can be null
This commit is contained in:
parent
b6e2108bf6
commit
ab8c78f6ca
2 changed files with 13 additions and 6 deletions
|
@ -26,7 +26,6 @@ import com.beust.jcommander.Parameters;
|
||||||
import com.google.common.collect.ImmutableCollection;
|
import com.google.common.collect.ImmutableCollection;
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
import com.google.common.collect.ImmutableSet;
|
import com.google.common.collect.ImmutableSet;
|
||||||
import com.google.common.collect.Streams;
|
|
||||||
import com.google.common.flogger.FluentLogger;
|
import com.google.common.flogger.FluentLogger;
|
||||||
import google.registry.config.RegistryConfig.Config;
|
import google.registry.config.RegistryConfig.Config;
|
||||||
import google.registry.model.domain.DomainBase;
|
import google.registry.model.domain.DomainBase;
|
||||||
|
@ -134,10 +133,10 @@ public class BackfillRegistryLocksCommand extends ConfirmingCommand
|
||||||
private DateTime getLockCompletionTimestamp(DomainBase domainBase, DateTime now) {
|
private DateTime getLockCompletionTimestamp(DomainBase domainBase, DateTime now) {
|
||||||
// Best-effort, if a domain was URS-locked we should use that time
|
// Best-effort, if a domain was URS-locked we should use that time
|
||||||
// If we can't find that, return now.
|
// If we can't find that, return now.
|
||||||
return Streams.stream(HistoryEntryDao.loadHistoryObjectsForResource(domainBase.createVKey()))
|
return HistoryEntryDao.loadHistoryObjectsForResource(domainBase.createVKey()).stream()
|
||||||
// sort by modification time descending so we get the most recent one if it was locked twice
|
// sort by modification time descending so we get the most recent one if it was locked twice
|
||||||
.sorted(Comparator.comparing(HistoryEntry::getModificationTime).reversed())
|
.sorted(Comparator.comparing(HistoryEntry::getModificationTime).reversed())
|
||||||
.filter(entry -> entry.getReason().equals("Uniform Rapid Suspension"))
|
.filter(entry -> "Uniform Rapid Suspension".equals(entry.getReason()))
|
||||||
.findFirst()
|
.findFirst()
|
||||||
.map(HistoryEntry::getModificationTime)
|
.map(HistoryEntry::getModificationTime)
|
||||||
.orElse(now);
|
.orElse(now);
|
||||||
|
|
|
@ -127,7 +127,7 @@ class BackfillRegistryLocksCommandTest extends CommandTestCase<BackfillRegistryL
|
||||||
void testBackfill_usesUrsTime_ifExists() throws Exception {
|
void testBackfill_usesUrsTime_ifExists() throws Exception {
|
||||||
DateTime ursTime = fakeClock.nowUtc();
|
DateTime ursTime = fakeClock.nowUtc();
|
||||||
DomainBase ursDomain = persistLockedDomain("urs.tld");
|
DomainBase ursDomain = persistLockedDomain("urs.tld");
|
||||||
HistoryEntry historyEntry =
|
persistResource(
|
||||||
new DomainHistory.Builder()
|
new DomainHistory.Builder()
|
||||||
.setBySuperuser(true)
|
.setBySuperuser(true)
|
||||||
.setClientId("adminreg")
|
.setClientId("adminreg")
|
||||||
|
@ -136,9 +136,17 @@ class BackfillRegistryLocksCommandTest extends CommandTestCase<BackfillRegistryL
|
||||||
.setReason("Uniform Rapid Suspension")
|
.setReason("Uniform Rapid Suspension")
|
||||||
.setType(HistoryEntry.Type.DOMAIN_UPDATE)
|
.setType(HistoryEntry.Type.DOMAIN_UPDATE)
|
||||||
.setRequestedByRegistrar(false)
|
.setRequestedByRegistrar(false)
|
||||||
.build();
|
.build());
|
||||||
persistResource(historyEntry);
|
|
||||||
DomainBase nonUrsDomain = persistLockedDomain("nonurs.tld");
|
DomainBase nonUrsDomain = persistLockedDomain("nonurs.tld");
|
||||||
|
persistResource(
|
||||||
|
new DomainHistory.Builder()
|
||||||
|
.setBySuperuser(true)
|
||||||
|
.setClientId("adminreg")
|
||||||
|
.setDomain(nonUrsDomain)
|
||||||
|
.setType(HistoryEntry.Type.DOMAIN_UPDATE)
|
||||||
|
.setRequestedByRegistrar(false)
|
||||||
|
.setModificationTime(ursTime)
|
||||||
|
.build());
|
||||||
|
|
||||||
fakeClock.advanceBy(Duration.standardDays(10));
|
fakeClock.advanceBy(Duration.standardDays(10));
|
||||||
runCommandForced(
|
runCommandForced(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue