# Class CSCertificateTask

java.lang.Object
com.io7m.certusine.vanilla.internal.tasks.CSCertificateTask

Direct Known Subclasses:
  `CSCertificateTaskAuthorizeDNS, CSCertificateTaskEnd, CSCertificateTaskSignCertificate`

public abstract class CSCertificateTask extends Object
The base type of certificate tasks.

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `CSCertificateTask(String inName, CSCertificateTaskContext inContext)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected final CSCertificateTaskContext`
  `context()`
  `final CSCertificateTaskStatusType`
  `execute()`
  Execute the task, tracking the number of retries on failure.
  `protected final String`
  `txtRecordNameToQuery(String fullyQualifiedDomainName)`
  Determine the TXT record (query) name for the given FQDN.
  `protected final CSDNSRecordNameType.CSDNSRecordNameAbsolute`
  `txtRecordNameToSet(String fullyQualifiedDomainName)`
  Determine the TXT record name for the given FQDN.

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### CSCertificateTask

    protected CSCertificateTask(String inName, CSCertificateTaskContext inContext)

- ## Method Details

  - ### context

    protected final CSCertificateTaskContext context()

  - ### execute

    public final CSCertificateTaskStatusType execute() throws InterruptedException
    Execute the task, tracking the number of retries on failure.
    Returns:
      The task result
    Throws:
      `InterruptedException` - If the task is interrupted

  - ### txtRecordNameToSet

    protected final CSDNSRecordNameType.CSDNSRecordNameAbsolute txtRecordNameToSet(String fullyQualifiedDomainName)
    Determine the TXT record name for the given FQDN.
    Parameters:
      `fullyQualifiedDomainName` - The fully-qualified domain name
    Returns:
      The TXT record name

  - ### txtRecordNameToQuery

    protected final String txtRecordNameToQuery(String fullyQualifiedDomainName)
    Determine the TXT record (query) name for the given FQDN.
    Parameters:
      `fullyQualifiedDomainName` - The fully-qualified domain name
    Returns:
      The TXT record name