Class RegistrarPoc

All Implemented Interfaces:
Jsonifiable, UnsafeSerializable, Serializable, Cloneable

@Entity public class RegistrarPoc extends ImmutableObject implements Jsonifiable, UnsafeSerializable
A contact for a Registrar. Note, equality, hashCode and comparable have been overridden to only enable key equality.

IMPORTANT NOTE: Any time that you change, update, or delete RegistrarContact entities, you *MUST* also modify the persisted Registrar entity with Registrar.contactsRequireSyncing set to true.

See Also:
  • Field Details

    • registrarId

      @Expose public String registrarId
  • Constructor Details

    • RegistrarPoc

      public RegistrarPoc()
  • Method Details

    • updateContacts

      public static void updateContacts(Registrar registrar,<RegistrarPoc> contacts)
      Helper to update the contacts associated with a Registrar. This requires querying for the existing contacts, deleting existing contacts that are not part of the given contacts set, and then saving the given contacts.

      IMPORTANT NOTE: If you call this method then it is your responsibility to also persist the relevant Registrar entity with the Registrar.contactsRequireSyncing field set to true.

    • getName

      public String getName()
    • getEmailAddress

      public String getEmailAddress()
    • getRegistryLockEmailAddress

      public Optional<String> getRegistryLockEmailAddress()
    • getPhoneNumber

      public String getPhoneNumber()
    • getFaxNumber

      public String getFaxNumber()
    • getTypes

      public<RegistrarPoc.Type> getTypes()
    • getVisibleInWhoisAsAdmin

      public boolean getVisibleInWhoisAsAdmin()
    • getVisibleInWhoisAsTech

      public boolean getVisibleInWhoisAsTech()
    • getVisibleInDomainWhoisAsAbuse

      public boolean getVisibleInDomainWhoisAsAbuse()
    • getLoginEmailAddress

      public String getLoginEmailAddress()
    • asBuilder

      public RegistrarPoc.Builder asBuilder()
    • isAllowedToSetRegistryLockPassword

      public boolean isAllowedToSetRegistryLockPassword()
    • isRegistryLockAllowed

      public boolean isRegistryLockAllowed()
    • verifyRegistryLockPassword

      public boolean verifyRegistryLockPassword(String registryLockPassword)
    • toStringMultilinePlainText

      public String toStringMultilinePlainText()
      Returns a string representation that's human friendly.

      The output will look something like this:

       Some Person
       Tel: +1.2125650666
       Types: [ADMIN, WHOIS]
       Visible in WHOIS as Admin contact: Yes
       Visible in WHOIS as Technical contact: No
       Registrar-Console access: Yes
       Login Email Address: person@registry.example
    • toJsonMap

      public Map<String,Object> toJsonMap()
      Description copied from interface: Jsonifiable
      Returns a JSON representation of this object.

      The returned value must not return sensitive fields, so that it may be safe to return to the client via an API response.

      Specified by:
      toJsonMap in interface Jsonifiable
    • createVKey

      public VKey<RegistrarPoc> createVKey()
      createVKey in class ImmutableObject