Class PublishDnsUpdatesAction

  • All Implemented Interfaces:
    java.lang.Runnable, java.util.concurrent.Callable<java.lang.Void>

    public final class PublishDnsUpdatesAction
    extends java.lang.Object
    implements java.lang.Runnable, java.util.concurrent.Callable<java.lang.Void>
    Task that sends domain and host updates to the DNS server.
    • Constructor Summary

      Constructors 
      Constructor Description
      PublishDnsUpdatesAction​(java.lang.String dnsWriter, org.joda.time.DateTime enqueuedTime, org.joda.time.DateTime itemsCreateTime, int lockIndex, int numPublishLocks, java.util.Set<java.lang.String> domains, java.util.Set<java.lang.String> hosts, java.lang.String tld, org.joda.time.Duration timeout, java.lang.String dnsUpdateFailEmailSubjectText, java.lang.String dnsUpdateFailEmailBodyText, java.lang.String dnsUpdateFailRegistryName, dagger.Lazy<javax.mail.internet.InternetAddress> registrySupportEmail, dagger.Lazy<javax.mail.internet.InternetAddress> registryCcEmail, javax.mail.internet.InternetAddress gSuiteOutgoingEmailAddress, java.util.Optional<java.lang.Integer> appEngineRetryCount, java.util.Optional<java.lang.Integer> cloudTasksRetryCount, DnsQueue dnsQueue, DnsWriterProxy dnsWriterProxy, DnsMetrics dnsMetrics, LockHandler lockHandler, Clock clock, CloudTasksUtils cloudTasksUtils, SendEmailService sendEmailService, Response response)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Void call()
      Runs the task, with the lock.
      void run()
      Runs the task.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • PublishDnsUpdatesAction

        @Inject
        public PublishDnsUpdatesAction​(@Parameter("dnsWriter")
                                       java.lang.String dnsWriter,
                                       @Parameter("enqueued")
                                       org.joda.time.DateTime enqueuedTime,
                                       @Parameter("itemsCreated")
                                       org.joda.time.DateTime itemsCreateTime,
                                       @Parameter("lockIndex")
                                       int lockIndex,
                                       @Parameter("numPublishLocks")
                                       int numPublishLocks,
                                       @Parameter("domains")
                                       java.util.Set<java.lang.String> domains,
                                       @Parameter("hosts")
                                       java.util.Set<java.lang.String> hosts,
                                       @Parameter("tld")
                                       java.lang.String tld,
                                       @Config("publishDnsUpdatesLockDuration")
                                       org.joda.time.Duration timeout,
                                       @Config("dnsUpdateFailEmailSubjectText")
                                       java.lang.String dnsUpdateFailEmailSubjectText,
                                       @Config("dnsUpdateFailEmailBodyText")
                                       java.lang.String dnsUpdateFailEmailBodyText,
                                       @Config("dnsUpdateFailRegistryName")
                                       java.lang.String dnsUpdateFailRegistryName,
                                       @Config("registrySupportEmail")
                                       dagger.Lazy<javax.mail.internet.InternetAddress> registrySupportEmail,
                                       @Config("registryCcEmail")
                                       dagger.Lazy<javax.mail.internet.InternetAddress> registryCcEmail,
                                       @Config("gSuiteOutgoingEmailAddress")
                                       javax.mail.internet.InternetAddress gSuiteOutgoingEmailAddress,
                                       @Header("X-AppEngine-TaskRetryCount")
                                       java.util.Optional<java.lang.Integer> appEngineRetryCount,
                                       @Header("X-CloudTasks-TaskRetryCount")
                                       java.util.Optional<java.lang.Integer> cloudTasksRetryCount,
                                       DnsQueue dnsQueue,
                                       DnsWriterProxy dnsWriterProxy,
                                       DnsMetrics dnsMetrics,
                                       LockHandler lockHandler,
                                       Clock clock,
                                       CloudTasksUtils cloudTasksUtils,
                                       SendEmailService sendEmailService,
                                       Response response)
    • Method Detail

      • run

        public void run()
        Runs the task.
        Specified by:
        run in interface java.lang.Runnable
      • call

        public java.lang.Void call()
        Runs the task, with the lock.
        Specified by:
        call in interface java.util.concurrent.Callable<java.lang.Void>