Class UserProfilesMetaData

java.lang.Object
com.kingsrook.qqq.backend.core.model.metadata.profile.UserProfilesMetaData
All Implemented Interfaces:
MetaDataProducerOutput, QMetaDataObject, QSupplementalInstanceMetaData, TopLevelMetaDataInterface, Serializable

public class UserProfilesMetaData extends Object implements QSupplementalInstanceMetaData
Settings of the core user profile (photo/avatar and display name), installed by UserProfileMetaDataProvider.defineAll. Absent when an application does not install profiles; then GET /avatars answers 404 and sessions carry no avatar.
See Also:
  • Field Details

  • Constructor Details

    • UserProfilesMetaData

      public UserProfilesMetaData()
  • Method Details

    • of

      public static UserProfilesMetaData of(QInstance qInstance)
      Get the installed profile settings, or null when profiles are not installed.
    • ofOrWithNew

      public static UserProfilesMetaData ofOrWithNew(QInstance qInstance)
      Get or register profile settings.
    • getName

      public String getName()
      Supplemental metadata registry name.
      Specified by:
      getName in interface TopLevelMetaDataInterface
    • validate

      public void validate(QInstance qInstance, QInstanceValidator validator)
      The profile table and the avatar storage table must exist, and the profile section must be registered.
      Specified by:
      validate in interface QSupplementalInstanceMetaData
    • getTableName

      public String getTableName()
      Getter for tableName
    • setTableName

      public void setTableName(String tableName)
      Setter for tableName
    • withTableName

      public UserProfilesMetaData withTableName(String tableName)
      Fluent setter for tableName
    • getAvatarStorageTableName

      public String getAvatarStorageTableName()
      Getter for avatarStorageTableName
    • setAvatarStorageTableName

      public void setAvatarStorageTableName(String avatarStorageTableName)
      Setter for avatarStorageTableName
    • withAvatarStorageTableName

      public UserProfilesMetaData withAvatarStorageTableName(String avatarStorageTableName)
      Fluent setter for avatarStorageTableName: a storage (filesystem or S3) table the avatar images are written to, at avatars/{avatarKey}/{size}.png.
    • getGravatarOptIn

      public boolean getGravatarOptIn()
      Getter for gravatarOptIn
    • setGravatarOptIn

      public void setGravatarOptIn(boolean gravatarOptIn)
      Setter for gravatarOptIn
    • withGravatarOptIn

      public UserProfilesMetaData withGravatarOptIn(boolean gravatarOptIn)
      Fluent setter for gravatarOptIn: when true, each user may choose to show their Gravatar while they have no uploaded photo (default false: no third-party avatar is ever requested).
    • getMaxAvatarBytes

      public long getMaxAvatarBytes()
      Getter for maxAvatarBytes
    • setMaxAvatarBytes

      public void setMaxAvatarBytes(long maxAvatarBytes)
      Setter for maxAvatarBytes
    • withMaxAvatarBytes

      public UserProfilesMetaData withMaxAvatarBytes(long maxAvatarBytes)
      Fluent setter for maxAvatarBytes (largest accepted upload; default 5 MB).