Class JpaTenantApplication

java.lang.Object
com.broadleafcommerce.tenant.provider.jpa.domain.JpaTenantApplication
All Implemented Interfaces:
com.broadleafcommerce.common.messaging.notification.domain.NotificationStateAware, com.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware, com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable, com.broadleafcommerce.data.tracking.core.Temporal, com.broadleafcommerce.data.tracking.core.TenantTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.TenantJpaTracking>, com.broadleafcommerce.data.tracking.core.Trackable, com.broadleafcommerce.data.tracking.core.TypedTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.TenantJpaTracking>, com.broadleafcommerce.translation.domain.Translatable, Serializable

@Entity @PolicyVariance(TENANT_TRACKABLE_APP_CONTEXT) public class JpaTenantApplication extends Object implements com.broadleafcommerce.data.tracking.core.TenantTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.TenantJpaTracking>, com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable, com.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware, com.broadleafcommerce.data.tracking.core.Temporal, com.broadleafcommerce.translation.domain.Translatable
Represents the tenant concept of a storefront structure. This structure ties together concepts of visible catalogs, as well as URI resolution.

This repository domain type specifically maps to the Jpa repository domain.

As a Trackable, this entity is also aware of archival state. If archived (Tracking.getArchived()), a Sandbox entity will not be returned by fetch queries.

As a Trackable, this entity is aware of change audit information and will keep track of changes made during creation or updates in the Tracking.getChangeDetails() field. ChangeDetails are not permanent on this entity and will be moved to a permanent audit store on an async interval.

Author:
Jeff Fischer
See Also:
  • Field Details

  • Constructor Details

    • JpaTenantApplication

      public JpaTenantApplication()
  • Method Details

    • fromMe

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

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

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

      public Optional<String> getDisplay()
      Specified by:
      getDisplay in interface com.broadleafcommerce.data.tracking.core.Trackable
    • getContextId

      public String getContextId()
      Specified by:
      getContextId in interface com.broadleafcommerce.data.tracking.core.Trackable
      Specified by:
      getContextId in interface com.broadleafcommerce.translation.domain.Translatable
    • getName

      public String getName()
      See Also:
    • getRobots

      public String getRobots()
      See Also:
    • getToken

      public String getToken()
      See Also:
    • getIdentifierType

      public String getIdentifierType()
      See Also:
    • getIdentifierValue

      public String getIdentifierValue()
      See Also:
    • getCustomerContextId

      public String getCustomerContextId()
    • isDeactivated

      public boolean isDeactivated()
      See Also:
    • getDefaultLocale

      public Locale getDefaultLocale()
      See Also:
    • getAllowedLocales

      public List<Locale> getAllowedLocales()
      See Also:
    • getDefaultCurrency

      public Currency getDefaultCurrency()
      See Also:
    • getAllowedCurrencies

      public List<Currency> getAllowedCurrencies()
      See Also:
    • getPortraitAsset

      public JpaTenantApplicationAsset getPortraitAsset()
      See Also:
    • getLogoAsset

      public JpaTenantApplicationAsset getLogoAsset()
      See Also:
    • getIsolatedCatalogs

      public List<JpaApplicationCatalogRef> getIsolatedCatalogs()
      See Also:
    • getTimestamp

      public Instant getTimestamp()
      Temporal state describing the time at which this item was last updated. Relates to the Temporal interface and is primarily used during consumption of messages regarding changes in state to this domain. For example, a service consuming a change notification for this domain can compare the current persisted timestamp to this timestamp to determine if it already has a newer version, in which case, it can ignore. This is primarily a measure to ensure that ordering is not required for messages related to state change.
      Specified by:
      getTimestamp in interface com.broadleafcommerce.data.tracking.core.Temporal
      Returns:
      Temporal state describing the time at which this item was last updated
    • getAttributes

      public Map<String,Object> getAttributes()
    • isMarketplace

      public boolean isMarketplace()
    • getTracking

      public com.broadleafcommerce.data.tracking.jpa.filtering.domain.TenantJpaTracking getTracking()
      Retrieve the tracking information from the entity
      Specified by:
      getTracking in interface com.broadleafcommerce.data.tracking.core.Trackable
      Returns:
      Tracking information
    • setContextId

      public void setContextId(String contextId)
      Specified by:
      setContextId in interface com.broadleafcommerce.data.tracking.core.Trackable
    • setName

      public void setName(String name)
      See Also:
    • setRobots

      public void setRobots(String robots)
      See Also:
    • setToken

      public void setToken(String token)
      See Also:
    • setIdentifierType

      public void setIdentifierType(String identifierType)
      See Also:
    • setIdentifierValue

      public void setIdentifierValue(String identifierValue)
      See Also:
    • setCustomerContextId

      public void setCustomerContextId(String customerContextId)
    • setDeactivated

      public void setDeactivated(boolean deactivated)
      See Also:
    • setDefaultLocale

      public void setDefaultLocale(Locale defaultLocale)
      See Also:
    • setAllowedLocales

      public void setAllowedLocales(List<Locale> allowedLocales)
      See Also:
    • setDefaultCurrency

      public void setDefaultCurrency(Currency defaultCurrency)
      See Also:
    • setAllowedCurrencies

      public void setAllowedCurrencies(List<Currency> allowedCurrencies)
      See Also:
    • setPortraitAsset

      public void setPortraitAsset(JpaTenantApplicationAsset portraitAsset)
      See Also:
    • setLogoAsset

      public void setLogoAsset(JpaTenantApplicationAsset logoAsset)
      See Also:
    • setIsolatedCatalogs

      public void setIsolatedCatalogs(List<JpaApplicationCatalogRef> isolatedCatalogs)
      See Also:
    • setTimestamp

      public void setTimestamp(Instant timestamp)
      Temporal state describing the time at which this item was last updated. Relates to the Temporal interface and is primarily used during consumption of messages regarding changes in state to this domain. For example, a service consuming a change notification for this domain can compare the current persisted timestamp to this timestamp to determine if it already has a newer version, in which case, it can ignore. This is primarily a measure to ensure that ordering is not required for messages related to state change.
      Specified by:
      setTimestamp in interface com.broadleafcommerce.data.tracking.core.Temporal
      Parameters:
      timestamp - Temporal state describing the time at which this item was last updated
    • setAttributes

      public void setAttributes(Map<String,Object> attributes)
    • setMarketplace

      public void setMarketplace(boolean isMarketplace)
    • setTracking

      public void setTracking(com.broadleafcommerce.data.tracking.jpa.filtering.domain.TenantJpaTracking tracking)
      Retrieve the tracking information from the entity
      Specified by:
      setTracking in interface com.broadleafcommerce.data.tracking.core.TypedTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.TenantJpaTracking>
      Parameters:
      tracking - Tracking information
    • 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