Class DomainTransferApproveFlow

java.lang.Object
google.registry.flows.domain.DomainTransferApproveFlow
All Implemented Interfaces:
Flow, MutatingFlow, TransactionalFlow

@ReportingSpec(DOMAIN_TRANSFER_APPROVE) public final class DomainTransferApproveFlow extends Object implements MutatingFlow
An EPP flow that approves a pending transfer on a domain.

The "gaining" registrar requests a transfer from the "losing" (aka current) registrar. The losing registrar has a "transfer" time period to respond (by default five days) after which the transfer is automatically approved. Within that window, this flow allows the losing client to explicitly approve the transfer request, which then becomes effective immediately.

When the transfer was requested, poll messages and billing events were saved to the database with timestamps such that they only would become active when the transfer period passed. In this flow, those speculative objects are deleted and replaced with new ones with the correct approval time.

Expected Error
FlowUtils.NotLoggedInException, ResourceFlowUtils.BadAuthInfoForResourceException, ResourceFlowUtils.ResourceDoesNotExistException, ResourceFlowUtils.ResourceNotOwnedException, NotPendingTransferException, DomainFlowUtils.NotAuthorizedForTldException, AllocationTokenFlowUtils.AllocationTokenNotValidForDomainException, AllocationTokenFlowUtils.InvalidAllocationTokenException, AllocationTokenFlowUtils.AllocationTokenNotInPromotionException, AllocationTokenFlowUtils.AllocationTokenNotValidForRegistrarException, AllocationTokenFlowUtils.AllocationTokenNotValidForTldException, AllocationTokenFlowUtils.AlreadyRedeemedAllocationTokenException