Class ApplicationEndpoint

java.lang.Object
com.broadleafcommerce.tenant.web.endpoint.ApplicationEndpoint

@FrameworkRestController @FrameworkMapping("/applications") @DataRouteByExample(Application.class) public class ApplicationEndpoint extends Object
API for managing Application instances.
Author:
Jeff Fischer
  • Field Details

  • Constructor Details

    • ApplicationEndpoint

      public ApplicationEndpoint(ApplicationService<Application> service, com.broadleafcommerce.translation.service.TranslationEntityService<com.broadleafcommerce.translation.domain.Translation> translationEntityService, ApplicationSecurityUtil applicationSecurityUtil)
  • Method Details

    • setPolicyUtils

      @Autowired public void setPolicyUtils(@Nullable com.broadleafcommerce.data.tracking.core.policy.trackable.TrackablePolicyUtils policyUtils)
    • readAll

      @FrameworkGetMapping @Policy(permissionRoots="TENANT") public org.springframework.data.domain.Page<Application> readAll(jakarta.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PageableDefault(size=50) org.springframework.data.domain.Pageable page, @RequestParam(name="active",required=false) Boolean active, cz.jirutka.rsql.parser.ast.Node filters)
    • readAllCustomerContexts

      @FrameworkGetMapping("/customer-contexts") @Policy(permissionRoots="TENANT") public Map<String,List<Application>> readAllCustomerContexts(jakarta.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @RequestParam(name="active",required=false) Boolean active, cz.jirutka.rsql.parser.ast.Node filters)
    • readById

      @FrameworkGetMapping("/{id}") @Policy(permissionRoots="TENANT") public Application readById(jakarta.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id)
    • update

      @FrameworkPatchMapping(value="/{id}", consumes="application/json") @Policy(permissionRoots="TENANT") public Application update(jakarta.servlet.http.HttpServletRequest request, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @RequestBody Application req)
    • replace

      @FrameworkPutMapping(value="/{id}", consumes="application/json") @Policy(permissionRoots="TENANT") public Application replace(jakarta.servlet.http.HttpServletRequest request, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @RequestBody Application req)
    • create

      @FrameworkPostMapping(consumes="application/json") @Policy(permissionRoots="TENANT") public Application create(jakarta.servlet.http.HttpServletRequest request, @ContextOperation(CREATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @RequestBody Application req)
    • delete

      @FrameworkDeleteMapping("/{id}") @Policy(permissionRoots="TENANT") public void delete(jakarta.servlet.http.HttpServletRequest request, @ContextOperation(DELETE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id)
    • validateHasNoCatalogsAssigned

      protected void validateHasNoCatalogsAssigned(String id, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
    • findCatalogsForAdd

      @FrameworkGetMapping("/{id}/catalogs-for-add") @Policy(permissionRoots="TENANT") public org.springframework.data.domain.Page<ApplicationCatalogRef> findCatalogsForAdd(jakarta.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PageableDefault(size=50) org.springframework.data.domain.Pageable page, @PathVariable("id") String id)
    • validateTenantOnlyOperation

      protected void validateTenantOnlyOperation(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
    • replaceAllApplicationTranslations

      @FrameworkPutMapping(value="/{id}/translations/{locale}", consumes="application/json") @Policy(permissionRoots="TENANT") public com.broadleafcommerce.translation.service.dto.TranslationsPayload replaceAllApplicationTranslations(@ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PathVariable("locale") Locale locale, @RequestBody com.broadleafcommerce.translation.service.dto.TranslationsPayload translationRequest)
    • validateUserAccess

      protected void validateUserAccess(String applicationId)
      Validates the user has access to the application ID supplied. If they do not, a NotPermittedException is thrown.
      Parameters:
      applicationId - The application ID to check
    • getService

      protected ApplicationService<Application> getService()
    • getTranslationEntityService

      protected com.broadleafcommerce.translation.service.TranslationEntityService<com.broadleafcommerce.translation.domain.Translation> getTranslationEntityService()
    • getPolicyUtils

      @Nullable protected com.broadleafcommerce.data.tracking.core.policy.trackable.TrackablePolicyUtils getPolicyUtils()
    • getApplicationSecurityUtil

      protected ApplicationSecurityUtil getApplicationSecurityUtil()
    • getMarketplaceApplicationCatalogService

      protected MarketplaceApplicationCatalogService<MarketplaceApplicationCatalog> getMarketplaceApplicationCatalogService()
    • setMarketplaceApplicationCatalogService

      @Autowired public void setMarketplaceApplicationCatalogService(MarketplaceApplicationCatalogService<MarketplaceApplicationCatalog> marketplaceApplicationCatalogService)