Class ImmutableMember.Builder

  • Enclosing class:
    ImmutableMember

    @NotThreadSafe
    public static final class ImmutableMember.Builder
    extends Object
    Builds instances of type ImmutableMember. Initialize attributes and then invoke the build() method to create an immutable instance.

    Builder is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.

    • Constructor Detail

      • Builder

        public Builder()
        Creates a builder for ImmutableMember instances.
         new ImmutableMember.Builder()
            .userID(String | null) // nullable userID
            .role(String | null) // nullable role
            .name(String | null) // nullable name
            .email(String | null) // nullable email
            .phone(String | null) // nullable phone
            .verifiedEmail(boolean) // required verifiedEmail
            .verifiedPhone(boolean) // required verifiedPhone
            .connectID(String | null) // nullable connectID
            .gitHubLogin(String | null) // nullable gitHubLogin
            .authType(String | null) // nullable authType
            .avatarURL(String | null) // nullable avatarURL
            .build();
         
    • Method Detail

      • from

        public final ImmutableMember.Builder from​(Member instance)
        Fill a builder with attribute values from the provided Member instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.
        Parameters:
        instance - The instance from which to copy values
        Returns:
        this builder for use in a chained invocation
      • userID

        public final ImmutableMember.Builder userID​(@Nullable
                                                    String userID)
        Initializes the value for the userID attribute.
        Parameters:
        userID - The value for userID (can be null)
        Returns:
        this builder for use in a chained invocation
      • role

        public final ImmutableMember.Builder role​(@Nullable
                                                  String role)
        Initializes the value for the role attribute.
        Parameters:
        role - The value for role (can be null)
        Returns:
        this builder for use in a chained invocation
      • name

        public final ImmutableMember.Builder name​(@Nullable
                                                  String name)
        Initializes the value for the name attribute.
        Parameters:
        name - The value for name (can be null)
        Returns:
        this builder for use in a chained invocation
      • email

        public final ImmutableMember.Builder email​(@Nullable
                                                   String email)
        Initializes the value for the email attribute.
        Parameters:
        email - The value for email (can be null)
        Returns:
        this builder for use in a chained invocation
      • phone

        public final ImmutableMember.Builder phone​(@Nullable
                                                   String phone)
        Initializes the value for the phone attribute.
        Parameters:
        phone - The value for phone (can be null)
        Returns:
        this builder for use in a chained invocation
      • verifiedEmail

        public final ImmutableMember.Builder verifiedEmail​(boolean verifiedEmail)
        Initializes the value for the verifiedEmail attribute.
        Parameters:
        verifiedEmail - The value for verifiedEmail
        Returns:
        this builder for use in a chained invocation
      • verifiedPhone

        public final ImmutableMember.Builder verifiedPhone​(boolean verifiedPhone)
        Initializes the value for the verifiedPhone attribute.
        Parameters:
        verifiedPhone - The value for verifiedPhone
        Returns:
        this builder for use in a chained invocation
      • connectID

        public final ImmutableMember.Builder connectID​(@Nullable
                                                       String connectID)
        Initializes the value for the connectID attribute.
        Parameters:
        connectID - The value for connectID (can be null)
        Returns:
        this builder for use in a chained invocation
      • gitHubLogin

        public final ImmutableMember.Builder gitHubLogin​(@Nullable
                                                         String gitHubLogin)
        Initializes the value for the gitHubLogin attribute.
        Parameters:
        gitHubLogin - The value for gitHubLogin (can be null)
        Returns:
        this builder for use in a chained invocation
      • authType

        public final ImmutableMember.Builder authType​(@Nullable
                                                      String authType)
        Initializes the value for the authType attribute.
        Parameters:
        authType - The value for authType (can be null)
        Returns:
        this builder for use in a chained invocation
      • avatarURL

        public final ImmutableMember.Builder avatarURL​(@Nullable
                                                       String avatarURL)
        Initializes the value for the avatarURL attribute.
        Parameters:
        avatarURL - The value for avatarURL (can be null)
        Returns:
        this builder for use in a chained invocation