Class RegistryConfig.ConfigModule

java.lang.Object
google.registry.config.RegistryConfig.ConfigModule
Enclosing class:
RegistryConfig

@Module public static final class RegistryConfig.ConfigModule extends Object
Dagger module for providing configuration settings.
  • Method Details

    • provideProjectId

      @Provides @Config("projectId") public static String provideProjectId(RegistryConfigSettings config)
    • provideProjectIdNumber

      @Provides @Config("projectIdNumber") public static long provideProjectIdNumber(RegistryConfigSettings config)
    • provideBackendServiceIds

      @Provides @Config("backendServiceIds") public static Map<String,Long> provideBackendServiceIds(RegistryConfigSettings config)
    • provideBaseDomain

      @Provides @Config("baseDomain") public static String provideBaseDomain(RegistryConfigSettings config)
    • provideLocationId

      @Provides @Config("locationId") public static String provideLocationId(RegistryConfigSettings config)
    • provideProductName

      @Provides @Config("productName") public static String provideProductName(RegistryConfigSettings config)
      The product name of this specific registry. Used throughout the registrar console.
      See Also:
    • provideContactAndHostRoidSuffix

      @Provides @Config("contactAndHostRoidSuffix") public static String provideContactAndHostRoidSuffix(RegistryConfigSettings config)
      Returns the roid suffix to be used for the roids of all contacts and hosts. E.g. a value of "ROID" would end up creating roids that look like "ABC123-ROID".
      See Also:
    • provideIsEmailSendingEnabled

      @Provides @Config("isEmailSendingEnabled") public static boolean provideIsEmailSendingEnabled(RegistryConfigSettings config)
    • provideSupportEmail

      @Provides @Config("supportEmail") public static String provideSupportEmail(RegistryConfigSettings config)
      The e-mail address for general support. Used in the "contact-us" section of the registrar console.
      See Also:
    • provideDumFileName

      @Provides @Config("dumFileName") public static String provideDumFileName(RegistryConfigSettings config)
      The DUM file name, used as a file name base for DUM csv file
      See Also:
    • provideSupportPhoneNumber

      @Provides @Config("supportPhoneNumber") public static String provideSupportPhoneNumber(RegistryConfigSettings config)
      The contact phone number. Used in the "contact-us" section of the registrar console.
      See Also:
    • provideTechnicalDocsUrl

      @Provides @Config("technicalDocsUrl") public static String provideTechnicalDocsUrl(RegistryConfigSettings config)
      The URL for technical support docs. Used in the "contact-us" section of the registrar console.
      See Also:
    • provideZoneFilesBucket

      @Provides @Config("zoneFilesBucket") public static String provideZoneFilesBucket(@Config("projectId") String projectId)
      Returns the Google Cloud Storage bucket for storing zone files.
      See Also:
    • provideDatabaseRetention

      @Provides @Config("databaseRetention") public static org.joda.time.Duration provideDatabaseRetention()
      Returns the length of time before commit logs should be deleted from the database.
      See Also:
    • provideDomainListsGcsBucket

      @Provides @Config("domainListsGcsBucket") public static String provideDomainListsGcsBucket(@Config("projectId") String projectId)
      The GCS bucket for exporting domain lists.
      See Also:
    • provideBsaUnavailableNamesGcsBucket

      @Provides @Config("bsaUnavailableDomainsGcsBucket") public static String provideBsaUnavailableNamesGcsBucket(@Config("projectId") String projectId)
      The GCS bucket for exporting lists of unavailable names for the BSA.
      See Also:
    • provideBrdaBucket

      @Provides @Config("brdaBucket") public static String provideBrdaBucket(@Config("projectId") String projectId)
      Returns the Google Cloud Storage bucket for staging BRDA escrow deposits.
      See Also:
    • provideBrdaDayOfWeek

      @Provides @Config("brdaDayOfWeek") public static int provideBrdaDayOfWeek()
      Returns the day of the week on which BRDA deposits should be made.
      See Also:
    • provideBrdaInterval

      @Provides @Config("brdaInterval") public static org.joda.time.Duration provideBrdaInterval()
      Amount of time between BRDA deposits.
      See Also:
    • provideDnsTldUpdateBatchSize

      @Provides @Config("dnsTldUpdateBatchSize") public static int provideDnsTldUpdateBatchSize()
      The maximum number of domain and host updates to batch together to send to PublishDnsUpdatesAction, to avoid exceeding HTTP request timeout limits.
      See Also:
    • providePublishDnsUpdatesLockDuration

      @Provides @Config("publishDnsUpdatesLockDuration") public static org.joda.time.Duration providePublishDnsUpdatesLockDuration()
      The maximum time we allow publishDnsUpdates to run.

      This is the maximum lock duration for publishing the DNS updates, meaning it should allow the various DnsWriters to publish and commit an entire batch (with a maximum number of items set by provideDnsTldUpdateBatchSize).

      Any update that takes longer than this timeout will be killed and retried from scratch. Hence, a timeout that's too short can result in batches that retry over and over again, failing forever.

      If there are lock contention issues, they should be solved by changing the batch sizes or the cron job rate, NOT by making this value smaller.

      See Also:
    • provideReadDnsRefreshRequestsRuntime

      @Provides @Config("readDnsRefreshRequestsActionRuntime") public static org.joda.time.Duration provideReadDnsRefreshRequestsRuntime()
      The requested maximum duration for ReadDnsRefreshRequestsAction.

      ReadDnsRefreshRequestsAction reads refresh requests from DnsRefreshRequest It will continue reading requests until either no requests exist that matche the condition, or this duration has passed.

      This time is the maximum duration between the first and last attempt to read requests from DnsRefreshRequest. The actual running time might be slightly longer, as we process the requests.

      The requests that are read will not be read again by any action until after this period has passed, so concurrent runs (or runs that are very close to each other) of ReadDnsRefreshRequestsAction will not keep reading the same requests with the earliest request time.

      Still, this value should ideally be less than the cloud scheduler job repeat rate for ReadDnsRefreshRequestsAction, to not waste resources on multiple actions running at the same time.

      see google.registry.dns.ReadDnsRefreshRequestsAction

    • provideDnsDefaultATtl

      @Provides @Config("dnsDefaultATtl") public static org.joda.time.Duration provideDnsDefaultATtl()
      Returns the default time to live for DNS A and AAAA records.
      See Also:
    • provideDnsDefaultNsTtl

      @Provides @Config("dnsDefaultNsTtl") public static org.joda.time.Duration provideDnsDefaultNsTtl()
      Returns the default time to live for DNS NS records.
      See Also:
    • provideDnsDefaultDsTtl

      @Provides @Config("dnsDefaultDsTtl") public static org.joda.time.Duration provideDnsDefaultDsTtl()
      Returns the default time to live for DNS DS records.
      See Also:
    • provideCloudSqlJdbcUrl

      @Provides @Config("cloudSqlJdbcUrl") public static String provideCloudSqlJdbcUrl(RegistryConfigSettings config)
    • provideCloudSqlInstanceConnectionName

      @Provides @Config("cloudSqlInstanceConnectionName") public static String provideCloudSqlInstanceConnectionName(RegistryConfigSettings config)
    • provideCloudSqlReplicaInstanceConnectionName

      @Provides @Config("cloudSqlReplicaInstanceConnectionName") public static Optional<String> provideCloudSqlReplicaInstanceConnectionName(RegistryConfigSettings config)
    • provideCloudSqlDbInstance

      @Provides @Config("cloudSqlDbInstanceName") public static String provideCloudSqlDbInstance(RegistryConfigSettings config)
    • getCloudDnsRootUrl

      @Provides @Config("cloudDnsRootUrl") public static Optional<String> getCloudDnsRootUrl(RegistryConfigSettings config)
    • getCloudDnsServicePath

      @Provides @Config("cloudDnsServicePath") public static Optional<String> getCloudDnsServicePath(RegistryConfigSettings config)
    • provideGSuiteAdminAccountEmailAddress

      @Provides @Config("gSuiteAdminAccountEmailAddress") public static String provideGSuiteAdminAccountEmailAddress(RegistryConfigSettings config)
      Returns the email address of the admin account on the G Suite app used to perform administrative actions.
      See Also:
    • provideGSuiteSupportGroupEmailAddress

      @Provides @Config("gSuiteSupportGroupEmailAddress") public static Optional<String> provideGSuiteSupportGroupEmailAddress(RegistryConfigSettings config)
      Returns the email address of the group containing emails of support accounts.

      These accounts will have "ADMIN" access to the registrar console.

      See Also:
    • provideGSuiteConsoleUserGroupEmailAddress

      @Provides @Config("gSuiteConsoleUserGroupEmailAddress") public static Optional<String> provideGSuiteConsoleUserGroupEmailAddress(RegistryConfigSettings config)
      Returns the email address of the group containing emails of console users.

      This group should be granted the roles/iap.httpsResourceAccessor role.

    • provideRegistrarChangesNotificationEmailAddresses

      @Provides @Config("registrarChangesNotificationEmailAddresses") public static com.google.common.collect.ImmutableList<String> provideRegistrarChangesNotificationEmailAddresses(RegistryConfigSettings config)
      Returns the email address(es) that notifications of registrar and/or registrar contact updates should be sent to, or the empty list if updates should not be sent.
      See Also:
    • provideGSuiteDomainName

      @Provides @Config("gSuiteDomainName") public static String provideGSuiteDomainName(RegistryConfigSettings config)
      Returns the publicly accessible domain name for the running G Suite instance.
      See Also:
    • provideTmchCaMode

      @Provides @Config("tmchCaMode") public static RegistryConfig.ConfigModule.TmchCaMode provideTmchCaMode(RegistryConfigSettings config)
      Returns the mode that TMCH certificate authority should run in.
      See Also:
    • provideTmchCrlUrl

      @Provides @Config("tmchCrlUrl") public static URL provideTmchCrlUrl(RegistryConfigSettings config)
      ICANN TMCH Certificate Revocation List URL.

      This file needs to be downloaded at least once a day and verified to make sure it was signed by icann-tmch.crt or icann-tmch-pilot.crt depending on TMCH CA mode.

      See Also:
    • provideTmchMarksdbUrl

      @Provides @Config("tmchMarksdbUrl") public static String provideTmchMarksdbUrl(RegistryConfigSettings config)
      URL prefix for communicating with MarksDB ry interface.

      This URL is used for DNL, SMDRL, and LORDN.

      See Also:
    • provideGSuiteOutgoingEmailAddress

      @Provides @Config("gSuiteOutgoingEmailAddress") public static jakarta.mail.internet.InternetAddress provideGSuiteOutgoingEmailAddress(RegistryConfigSettings config)
      The email address that outgoing emails from the app are sent from.
      See Also:
    • provideGSuiteNewOutgoingEmailAddress

      @Provides @Config("gSuiteNewOutgoingEmailAddress") public static String provideGSuiteNewOutgoingEmailAddress(RegistryConfigSettings config)
    • provideGSuiteOutgoingEmailDisplayName

      @Provides @Config("gSuiteOutgoingEmailDisplayName") public static String provideGSuiteOutgoingEmailDisplayName(RegistryConfigSettings config)
      The display name that is used on outgoing emails sent by Nomulus.
      See Also:
    • provideReplyToEmailAddress

      @Provides @Config("replyToEmailAddress") public static jakarta.mail.internet.InternetAddress provideReplyToEmailAddress(RegistryConfigSettings config)
      Provides the `reply-to` address for outgoing email messages. This address may be outside the GSuite domain.
    • provideRequireSslCertificates

      @Provides @Config("requireSslCertificates") public static boolean provideRequireSslCertificates(RegistryConfigSettings config)
      Returns whether an SSL certificate hash is required to log in via EPP and run flows.
      See Also:
    • provideHighPerformanceMachineType

      @Provides @Config("highPerformanceMachineType") public static String provideHighPerformanceMachineType(RegistryConfigSettings config)
      Returns the GCE machine type that a CPU-demanding pipeline should use.
      See Also:
    • provideInitialWorkerCount

      @Provides @Config("initialWorkerCount") public static int provideInitialWorkerCount(RegistryConfigSettings config)
      Returns initial number of workers used for a Beam pipeline. Autoscaling can still in effect.
      See Also:
    • provideDefaultJobRegion

      @Provides @Config("defaultJobRegion") public static String provideDefaultJobRegion(RegistryConfigSettings config)
      Returns the default job region to run Apache Beam (Cloud Dataflow) jobs in.
      See Also:
    • provideBeamStagingBucketUrl

      @Provides @Config("beamStagingBucketUrl") public static String provideBeamStagingBucketUrl(RegistryConfigSettings config)
      Returns the GCS bucket URL with all staged BEAM flex templates.
    • provideReportingBucket

      @Provides @Config("reportingBucket") public static String provideReportingBucket(@Config("projectId") String projectId)
      Returns the Google Cloud Storage bucket for Spec11 and ICANN transaction and activity reports to be uploaded.
      See Also:
    • provideReportingBucketUrl

      @Provides @Config("reportingBucketUrl") public static String provideReportingBucketUrl(@Config("reportingBucket") String reportingBucket)
      Returns the Google Cloud Storage bucket URL for Spec11 and ICANN transaction and activity reports to be uploaded.
      See Also:
    • provideIcannTransactionsReportingUploadUrl

      @Provides @Config("icannTransactionsReportingUploadUrl") public static String provideIcannTransactionsReportingUploadUrl(RegistryConfigSettings config)
      Returns the URL we send HTTP PUT requests for ICANN monthly transactions reports.
      See Also:
    • provideIcannActivityReportingUploadUrl

      @Provides @Config("icannActivityReportingUploadUrl") public static String provideIcannActivityReportingUploadUrl(RegistryConfigSettings config)
      Returns the URL we send HTTP PUT requests for ICANN monthly activity reports.
      See Also:
    • provideBillingBucket

      @Provides @Config("billingBucket") public static String provideBillingBucket(@Config("projectId") String projectId)
      Returns name of the GCS bucket we store invoices and detail reports in.
      See Also:
    • provideBillingBucketUrl

      @Provides @Config("billingBucketUrl") public static String provideBillingBucketUrl(@Config("billingBucket") String billingBucket)
      Returns the URL of the GCS bucket we store invoices and detail reports in.
      See Also:
    • provideBillingInvoiceOriginUrl

      @Provides @Config("billingInvoiceOriginUrl") public static String provideBillingInvoiceOriginUrl(RegistryConfigSettings config)
      Returns origin part of the URL of the billing invoice file
      See Also:
    • provideDefaultShouldPublishInvoices

      @Provides @Config("defaultShouldPublishInvoices") public static boolean provideDefaultShouldPublishInvoices()
      Returns whether or not we should publish invoices to partners automatically by default.
      See Also:
    • provideInvoiceEmailRecipients

      @Provides @Config("invoiceEmailRecipients") public static com.google.common.collect.ImmutableList<jakarta.mail.internet.InternetAddress> provideInvoiceEmailRecipients(RegistryConfigSettings config)
      Returns the list of addresses that receive monthly invoicing emails.
      See Also:
    • provideInvoiceReplyToEmailAddress

      @Provides @Config("invoiceReplyToEmailAddress") public static Optional<jakarta.mail.internet.InternetAddress> provideInvoiceReplyToEmailAddress(RegistryConfigSettings config)
      Returns an optional return email address that overrides the default reply-to address in outgoing invoicing email messages.
    • provideInvoiceFilePrefix

      @Provides @Config("invoiceFilePrefix") public static String provideInvoiceFilePrefix(RegistryConfigSettings config)
      Returns the file prefix for the invoice CSV file.
      See Also:
    • provideRdeBucket

      @Provides @Config("rdeBucket") public static String provideRdeBucket(@Config("projectId") String projectId)
      Returns the Google Cloud Storage bucket for staging escrow deposits pending upload.
      See Also:
    • provideRdeInterval

      @Provides @Config("rdeInterval") public static org.joda.time.Duration provideRdeInterval()
      Amount of time between RDE deposits.
      See Also:
    • provideRdeReportLockTimeout

      @Provides @Config("rdeReportLockTimeout") public static org.joda.time.Duration provideRdeReportLockTimeout()
      Maximum amount of time for sending a small XML file to ICANN via HTTP, before killing.
      See Also:
    • provideRdeReportUrlPrefix

      @Provides @Config("rdeReportUrlPrefix") public static String provideRdeReportUrlPrefix(RegistryConfigSettings config)
      URL of ICANN's HTTPS server to which the RDE report should be PUT.

      You must append "/TLD/ID" to this URL.

      See Also:
    • provideRdeUploadLockTimeout

      @Provides @Config("rdeUploadLockTimeout") public static org.joda.time.Duration provideRdeUploadLockTimeout()
      Maximum amount of time it should ever take to upload an escrow deposit, before killing.
      See Also:
    • provideRdeUploadSftpCooldown

      @Provides @Config("rdeUploadSftpCooldown") public static org.joda.time.Duration provideRdeUploadSftpCooldown()
      Minimum amount of time to wait between consecutive SFTP uploads on a single TLD.

      This value was communicated to us by the escrow provider.

      See Also:
    • provideSshIdentity

      @Provides @Config("rdeSshIdentity") public static String provideSshIdentity(RegistryConfigSettings config)
      Returns the identity (an email address) used for the SSH keys used in RDE SFTP uploads.
      See Also:
    • provideRdeUploadUrl

      @Provides @Config("rdeUploadUrl") public static URI provideRdeUploadUrl(RegistryConfigSettings config)
      Returns SFTP URL containing a username, hostname, port (optional), and directory (optional) to which cloud storage files are uploaded. The password should not be included, as it's better to use public key authentication.
      See Also:
    • provideSheetLockTimeout

      @Provides @Config("sheetLockTimeout") public static org.joda.time.Duration provideSheetLockTimeout()
      Maximum amount of time for syncing a spreadsheet, before killing.
      See Also:
    • provideSheetRegistrarId

      @Provides @Config("sheetRegistrarId") public static Optional<String> provideSheetRegistrarId(RegistryConfigSettings config)
      Returns ID of Google Spreadsheet to which Registrar entities should be synced.

      This ID, as you'd expect, comes from the URL of the spreadsheet.

      See Also:
    • provideEmailThrottleSeconds

      @Provides @Config("emailThrottleDuration") public static org.joda.time.Duration provideEmailThrottleSeconds(RegistryConfigSettings config)
      Returns the desired delay between outgoing emails when sending in bulk.

      Gmail apparently has unpublished limits on peak throughput over short period.

    • provideAlertRecipientEmailAddress

      @Provides @Config("alertRecipientEmailAddress") public static jakarta.mail.internet.InternetAddress provideAlertRecipientEmailAddress(RegistryConfigSettings config)
      Returns the email address we send various alert e-mails to.

      This allows us to easily verify the success or failure of periodic tasks by passively checking e-mail.

      See Also:
    • provideNewAlertRecipientEmailAddress

      @Provides @Config("newAlertRecipientEmailAddress") public static jakarta.mail.internet.InternetAddress provideNewAlertRecipientEmailAddress(RegistryConfigSettings config)
    • provideSpec11OutgoingEmailAddress

      @Provides @Config("spec11OutgoingEmailAddress") public static jakarta.mail.internet.InternetAddress provideSpec11OutgoingEmailAddress(RegistryConfigSettings config)
      Returns the email address to which spec 11 email should be replied.
      See Also:
    • provideSpec11BccEmailAddresses

      @Provides @Config("spec11BccEmailAddresses") public static com.google.common.collect.ImmutableList<jakarta.mail.internet.InternetAddress> provideSpec11BccEmailAddresses(RegistryConfigSettings config)
      Returns the email addresses to which we will BCC Spec11 emails.
      See Also:
    • provideRegistryName

      @Provides @Config("registryName") public static String provideRegistryName(RegistryConfigSettings config)
      Returns the name of the registry, for use in spec 11 emails.
      See Also:
    • provideSpec11WebResources

      @Provides @Config("spec11WebResources") public static com.google.common.collect.ImmutableList<String> provideSpec11WebResources(RegistryConfigSettings config)
      Returns a list of resources we send to registrars when informing them of spec 11 threats.
      See Also:
    • provideSshTimeout

      @Provides @Config("sshTimeout") public static org.joda.time.Duration provideSshTimeout()
      Returns SSH client connection and read timeout.
      See Also:
    • provideTransactionCooldown

      @Provides @Config("transactionCooldown") public static org.joda.time.Duration provideTransactionCooldown()
      Duration after watermark where we shouldn't deposit, because transactions might be pending.
      See Also:
    • provideTransientFailureRetries

      @Provides @Named("transientFailureRetries") public static int provideTransientFailureRetries(RegistryConfigSettings config)
      Number of times to retry a GAE operation when TransientFailureException is thrown.

      The number of milliseconds it'll sleep before giving up is (2^n - 2) * 100.

      Note that this uses @Named instead of @Config so that it can be used from the low-level util package, which cannot have a dependency on the config package.

      See Also:
    • provideWhoisHttpExpires

      @Provides @Config("whoisHttpExpires") public static org.joda.time.Duration provideWhoisHttpExpires()
      Amount of time public HTTP proxies are permitted to cache our WHOIS responses.
      See Also:
    • provideRdapResultSetMaxSize

      @Provides @Config("rdapResultSetMaxSize") public static int provideRdapResultSetMaxSize()
      Maximum number of results to return for an RDAP search query
      See Also:
    • provideWhoisRedactedEmailText

      @Provides @Config("whoisRedactedEmailText") public static String provideWhoisRedactedEmailText(RegistryConfigSettings config)
      Redaction text for email address in WHOIS
      See Also:
    • provideWhoisDisclaimer

      @Provides @Config("whoisDisclaimer") public static String provideWhoisDisclaimer(RegistryConfigSettings config)
      Disclaimer displayed at the end of WHOIS query results.
      See Also:
    • provideDomainBlockedByBsaTemplate

      @Provides @Config("domainBlockedByBsaTemplate") public static String provideDomainBlockedByBsaTemplate(RegistryConfigSettings config)
      Message template for whois response when queried domain is blocked by BSA.
      See Also:
    • provideStackdriverMaxQps

      @Provides @Config("stackdriverMaxQps") public static int provideStackdriverMaxQps(RegistryConfigSettings config)
      Maximum QPS for the Google Cloud Monitoring V3 (aka Stackdriver) API. The QPS limit can be adjusted by contacting Cloud Support.
      See Also:
      • StackdriverWriter
    • provideStackdriverMaxPointsPerRequest

      @Provides @Config("stackdriverMaxPointsPerRequest") public static int provideStackdriverMaxPointsPerRequest(RegistryConfigSettings config)
      Maximum number of points that can be sent to Stackdriver in a single TimeSeries.Create API call.
      See Also:
      • StackdriverWriter
    • provideMetricsWriteInterval

      @Provides @Config("metricsWriteInterval") public static org.joda.time.Duration provideMetricsWriteInterval(RegistryConfigSettings config)
      The reporting interval for Metric instances to be sent to a MetricWriter.
      See Also:
      • MetricReporter
    • provideContactAutomaticTransferLength

      @Provides @Config("contactAutomaticTransferLength") public static org.joda.time.Duration provideContactAutomaticTransferLength(RegistryConfigSettings config)
      The global automatic transfer length for contacts. After this amount of time has elapsed, the transfer is automatically approved.
      See Also:
    • provideMaxChecks

      @Provides @Config("maxChecks") public static int provideMaxChecks()
      Returns the maximum number of entities that can be checked at one time in an EPP check flow.
    • provideGreetingServerId

      @Provides @Config("greetingServerId") public static String provideGreetingServerId(RegistryConfigSettings config)
      The server ID used in the 'svID' element of an EPP 'greeting'.
      See Also:
    • provideKeyring

      @Provides @Config("activeKeyring") public static String provideKeyring(RegistryConfigSettings config)
    • provideCustomLogicFactoryClass

      @Provides @Config("customLogicFactoryClass") public static String provideCustomLogicFactoryClass(RegistryConfigSettings config)
    • provideWhoisCommandFactoryClass

      @Provides @Config("whoisCommandFactoryClass") public static String provideWhoisCommandFactoryClass(RegistryConfigSettings config)
    • provideAllocationTokenCustomLogicClass

      @Provides @Config("allocationTokenCustomLogicClass") public static String provideAllocationTokenCustomLogicClass(RegistryConfigSettings config)
    • dnsCountQueryCoordinatorClass

      @Provides @Config("dnsCountQueryCoordinatorClass") public static String dnsCountQueryCoordinatorClass(RegistryConfigSettings config)
    • providePremiumTermsExportDisclaimer

      @Provides @Config("premiumTermsExportDisclaimer") public static String providePremiumTermsExportDisclaimer(RegistryConfigSettings config)
      Returns the disclaimer text for the exported premium terms.
    • provideReservedTermsExportDisclaimer

      @Provides @Config("reservedTermsExportDisclaimer") public static String provideReservedTermsExportDisclaimer(RegistryConfigSettings config)
      Returns the header text at the top of the reserved terms exported list.
      See Also:
    • provideRegistryAdminClientId

      @Provides @Config("registryAdminClientId") public static String provideRegistryAdminClientId(RegistryConfigSettings config)
      Returns the ID of the registrar that admins are automatically logged in as if they aren't otherwise associated with one.
    • provideAllowedServiceAccountEmails

      @Provides @Config("allowedServiceAccountEmails") public static com.google.common.collect.ImmutableSet<String> provideAllowedServiceAccountEmails(RegistryConfigSettings config)
      Provides service account email addresses allowed to authenticate with the app at AuthSettings.AuthLevel.APP level.
    • provideOauthClientId

      @Provides @Config("oauthClientId") public static String provideOauthClientId(RegistryConfigSettings config)
    • provideServiceAccountCredentialOauthScopes

      @Provides @Config("defaultCredentialOauthScopes") public static com.google.common.collect.ImmutableList<String> provideServiceAccountCredentialOauthScopes(RegistryConfigSettings config)
      Provides the OAuth scopes required for accessing Google APIs using the default credential.
    • provideDelegatedCredentialOauthScopes

      @Provides @Config("delegatedCredentialOauthScopes") public static com.google.common.collect.ImmutableList<String> provideDelegatedCredentialOauthScopes(RegistryConfigSettings config)
      Provides the OAuth scopes required for delegated admin access to G Suite domain.
    • provideLocalCredentialOauthScopes

      @Provides @Config("localCredentialOauthScopes") public static com.google.common.collect.ImmutableList<String> provideLocalCredentialOauthScopes(RegistryConfigSettings config)
      Provides the OAuth scopes required for credentials created locally for the nomulus tool.
    • provideTokenRefreshDelay

      @Provides @Config("tokenRefreshDelay") public static Duration provideTokenRefreshDelay(RegistryConfigSettings config)
    • provideToolsClientId

      @Provides @Config("toolsClientId") public static String provideToolsClientId(RegistryConfigSettings config)
      OAuth client ID used by the nomulus tool.
    • provideToolsClientSecret

      @Provides @Config("toolsClientSecret") public static String provideToolsClientSecret(RegistryConfigSettings config)
      OAuth client secret used by the nomulus tool.
    • provideRdapTos

      @Provides @Config("rdapTos") public static com.google.common.collect.ImmutableList<String> provideRdapTos(RegistryConfigSettings config)
    • provideRdapTosStaticUrl

      @Provides @Config("rdapTosStaticUrl") @Nullable public static String provideRdapTosStaticUrl(RegistryConfigSettings config)
      Link to static Web page with RDAP terms of service. Displayed in RDAP responses.
      See Also:
    • provideValidityDaysMap

      @Provides @Config("maxValidityDaysSchedule") public static com.google.common.collect.ImmutableSortedMap<org.joda.time.DateTime,Integer> provideValidityDaysMap(RegistryConfigSettings config)
    • provideExpirationWarningDays

      @Provides @Config("expirationWarningDays") public static int provideExpirationWarningDays(RegistryConfigSettings config)
    • provideExpirationWarningIntervalDays

      @Provides @Config("expirationWarningIntervalDays") public static int provideExpirationWarningIntervalDays(RegistryConfigSettings config)
    • provideMinimumRsaKeyLength

      @Provides @Config("minimumRsaKeyLength") public static int provideMinimumRsaKeyLength(RegistryConfigSettings config)
    • provideExpirationWarningEmailBodyText

      @Provides @Config("expirationWarningEmailBodyText") public static String provideExpirationWarningEmailBodyText(RegistryConfigSettings config)
    • provideExpirationWarningEmailSubjectText

      @Provides @Config("expirationWarningEmailSubjectText") public static String provideExpirationWarningEmailSubjectText(RegistryConfigSettings config)
    • provideDnsUpdateFailEmailSubjectText

      @Provides @Config("dnsUpdateFailEmailSubjectText") public static String provideDnsUpdateFailEmailSubjectText(RegistryConfigSettings config)
    • provideDnsUpdateFailEmailBodyText

      @Provides @Config("dnsUpdateFailEmailBodyText") public static String provideDnsUpdateFailEmailBodyText(RegistryConfigSettings config)
    • provideDnsUpdateFailRegistryName

      @Provides @Config("dnsUpdateFailRegistryName") public static String provideDnsUpdateFailRegistryName(RegistryConfigSettings config)
    • provideRegistrySupportEmail

      @Provides @Config("registrySupportEmail") public static jakarta.mail.internet.InternetAddress provideRegistrySupportEmail(RegistryConfigSettings config)
    • provideRegistryCcEmail

      @Provides @Config("registryCcEmail") public static jakarta.mail.internet.InternetAddress provideRegistryCcEmail(RegistryConfigSettings config)
    • provideAllowedEcdsaCurves

      @Provides @Config("allowedEcdsaCurves") public static com.google.common.collect.ImmutableSet<String> provideAllowedEcdsaCurves(RegistryConfigSettings config)
    • provideMinMonthsBeforeWipeOut

      @Provides @Config("minMonthsBeforeWipeOut") public static int provideMinMonthsBeforeWipeOut(RegistryConfigSettings config)
    • provideHibernateJdbcBatchSize

      @Provides @Config("jdbcBatchSize") public static int provideHibernateJdbcBatchSize(RegistryConfigSettings config)
    • provideBulkPricingPackageCreateLimitEmailSubject

      @Provides @Config("bulkPricingPackageCreateLimitEmailSubject") public static String provideBulkPricingPackageCreateLimitEmailSubject(RegistryConfigSettings config)
    • provideBulkPricingPackageCreateLimitEmailBody

      @Provides @Config("bulkPricingPackageCreateLimitEmailBody") public static String provideBulkPricingPackageCreateLimitEmailBody(RegistryConfigSettings config)
    • provideBulkPricingPackageDomainLimitWarningEmailSubject

      @Provides @Config("bulkPricingPackageDomainLimitWarningEmailSubject") public static String provideBulkPricingPackageDomainLimitWarningEmailSubject(RegistryConfigSettings config)
    • provideBulkPricingPackageDomainLimitWarningEmailBody

      @Provides @Config("bulkPricingPackageDomainLimitWarningEmailBody") public static String provideBulkPricingPackageDomainLimitWarningEmailBody(RegistryConfigSettings config)
    • provideBulkPricingPackageDomainLimitUpgradeEmailSubject

      @Provides @Config("bulkPricingPackageDomainLimitUpgradeEmailSubject") public static String provideBulkPricingPackageDomainLimitUpgradeEmailSubject(RegistryConfigSettings config)
    • provideBulkPricingPackageDomainLimitUpgradeEmailBody

      @Provides @Config("bulkPricingPackageDomainLimitUpgradeEmailBody") public static String provideBulkPricingPackageDomainLimitUpgradeEmailBody(RegistryConfigSettings config)
    • provideBsaGcsBucket

      @Provides @Config("bsaGcsBucket") public static String provideBsaGcsBucket(@Config("projectId") String projectId)
    • provideBsaChecksumAlgorithm

      @Provides @Config("bsaChecksumAlgorithm") public static String provideBsaChecksumAlgorithm(RegistryConfigSettings config)
    • provideBsaLockLeaseExpiry

      @Provides @Config("bsaLockLeaseExpiry") public static org.joda.time.Duration provideBsaLockLeaseExpiry(RegistryConfigSettings config)
    • provideBsaDownloadInterval

      @Provides @Config("bsaDownloadInterval") public static org.joda.time.Duration provideBsaDownloadInterval(RegistryConfigSettings config)
      Returns the desired interval between successive BSA downloads.
    • provideBsaMaxNopInterval

      @Provides @Config("bsaMaxNopInterval") public static org.joda.time.Duration provideBsaMaxNopInterval(RegistryConfigSettings config)
      Returns the maximum period when a BSA download can be skipped due to the checksum-based equality check with the previous download.
    • provideBsaTxnBatchSize

      @Provides @Config("bsaTxnBatchSize") public static int provideBsaTxnBatchSize(RegistryConfigSettings config)
    • provideDomainCreateTxnCommitTimeLag

      @Provides @Config("domainCreateTxnCommitTimeLag") public static org.joda.time.Duration provideDomainCreateTxnCommitTimeLag(RegistryConfigSettings config)
    • provideBsaValidationMaxStaleness

      @Provides @Config("bsaValidationMaxStaleness") public static org.joda.time.Duration provideBsaValidationMaxStaleness(RegistryConfigSettings config)
    • provideBsaAuthUrl

      @Provides @Config("bsaAuthUrl") public static String provideBsaAuthUrl(RegistryConfigSettings config)
    • provideBsaAuthTokenExpiry

      @Provides @Config("bsaAuthTokenExpiry") public static org.joda.time.Duration provideBsaAuthTokenExpiry(RegistryConfigSettings config)
    • provideBsaDataUrls

      @Provides @Config("bsaDataUrls") public static com.google.common.collect.ImmutableMap<String,String> provideBsaDataUrls(RegistryConfigSettings config)
    • provideBsaOrderStatusUrls

      @Provides @Config("bsaOrderStatusUrl") public static String provideBsaOrderStatusUrls(RegistryConfigSettings config)
      Provides the BSA Http endpoint for reporting order processing status.
    • provideBsaAddUnblockableDomainsUrls

      @Provides @Config("bsaAddUnblockableDomainsUrl") public static String provideBsaAddUnblockableDomainsUrls(RegistryConfigSettings config)
      Provides the BSA Http endpoint for reporting new unblockable domains.
    • provideBsaRemoveUnblockableDomainsUrls

      @Provides @Config("bsaRemoveUnblockableDomainsUrl") public static String provideBsaRemoveUnblockableDomainsUrls(RegistryConfigSettings config)
      Provides the BSA Http endpoint for reporting domains that have become blockable.
    • provideBsaUploadUnavailableDomainsUrl

      @Provides @Config("bsaUploadUnavailableDomainsUrl") public static String provideBsaUploadUnavailableDomainsUrl(RegistryConfigSettings config)