Class JpaUserRole

java.lang.Object
com.broadleafcommerce.auth.security.domain.JpaUserRole
All Implemented Interfaces:
com.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware, com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable, com.broadleafcommerce.translation.domain.Translatable, Serializable

@Entity public class JpaUserRole extends Object implements Serializable, com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable, com.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware, com.broadleafcommerce.translation.domain.Translatable
Author:
Nathan Moore (nathanmoore).
See Also:
  • Constructor Details

    • JpaUserRole

      public JpaUserRole()
  • Method Details

    • fromMe

      public org.modelmapper.ModelMapper fromMe()
      Specified by:
      fromMe in interface com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
    • pruneArchivedReferences

      protected UserRole pruneArchivedReferences(org.modelmapper.spi.MappingContext<JpaUserRole,UserRole> mappingContext)
      Used as the TypeMap.setPostConverter(Converter) for fromMe().

      JPA will eagerly fetch permissions if they exist in the data store, but we have a soft-deletion concept that JPA does not account for. This ensures that any references to entities that have been archived are pruned before being mapped to the business domain. This protects against those entities being usable despite being archived.

      Parameters:
      mappingContext - the model mapper mapping context
      Returns:
      the business-domain user after removing any references to archived records
    • toMe

      public org.modelmapper.ModelMapper toMe()
      Specified by:
      toMe in interface com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
    • getBusinessDomainType

      public Class<?> getBusinessDomainType()
      Specified by:
      getBusinessDomainType in interface com.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware
    • getContextId

      public String getContextId()
      Specified by:
      getContextId in interface com.broadleafcommerce.translation.domain.Translatable
    • getId

      public String getId()
    • getName

      public String getName()
    • getPermissions

      public Set<JpaUserPermission> getPermissions()
    • getParentRoleId

      public String getParentRoleId()
      A soft reference to the parent of this role.
      See Also:
      • UserRole.parentRoleId
    • getLastUpdated

      public Instant getLastUpdated()
      We don't use LastModifiedDate here because we want to enable manually setting this value (ex: for setting the lastUpdated to a value received in a persistence message).
      See Also:
      • UserRole.lastUpdated
    • isArchived

      public boolean isArchived()
      See Also:
      • UserRole.archived
    • isAccountRole

      public boolean isAccountRole()
    • getFriendlyName

      public String getFriendlyName()
    • getDescription

      public String getDescription()
    • setId

      public void setId(String id)
    • setName

      public void setName(String name)
    • setPermissions

      public void setPermissions(Set<JpaUserPermission> permissions)
    • setParentRoleId

      public void setParentRoleId(String parentRoleId)
      A soft reference to the parent of this role.
      See Also:
      • UserRole.parentRoleId
    • setLastUpdated

      public void setLastUpdated(Instant lastUpdated)
      We don't use LastModifiedDate here because we want to enable manually setting this value (ex: for setting the lastUpdated to a value received in a persistence message).
      See Also:
      • UserRole.lastUpdated
    • setArchived

      public void setArchived(boolean archived)
      See Also:
      • UserRole.archived
    • setAccountRole

      public void setAccountRole(boolean accountRole)
    • setFriendlyName

      public void setFriendlyName(String friendlyName)
    • setDescription

      public void setDescription(String description)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object