Class ApplicationCenterStorage

java.lang.Object
io.meeds.appcenter.storage.ApplicationCenterStorage

@Component public class ApplicationCenterStorage extends Object
Storage service to access / load and save applications. This service will be used , as well, to convert from JPA entity to DTO.
  • Field Details

    • NAME_SPACE

      public static final String NAME_SPACE
      See Also:
    • DEFAULT_LAST_MODIFIED

      public static final Long DEFAULT_LAST_MODIFIED
  • Constructor Details

    • ApplicationCenterStorage

      public ApplicationCenterStorage()
  • Method Details

    • createApplication

      public Application createApplication(Application application)
    • updateApplication

      @CacheEvict(cacheNames="app-center.application", key="#p0.getId()") public void updateApplication(Application application)
    • deleteApplication

      @CacheEvict(cacheNames="app-center.application", key="#p0") public void deleteApplication(long applicationId) throws ApplicationNotFoundException
      Throws:
      ApplicationNotFoundException
    • getApplication

      @Cacheable("app-center.application") public Application getApplication(long applicationId)
    • findSystemApplicationByUrl

      public Application findSystemApplicationByUrl(String url)
    • addApplicationToUserFavorite

      public FavoriteApplicationEntity addApplicationToUserFavorite(long applicationId, String username) throws ApplicationNotFoundException
      Throws:
      ApplicationNotFoundException
    • updateFavoriteApplicationOrder

      public void updateFavoriteApplicationOrder(long applicationId, String username, Long order) throws ApplicationNotFoundException
      Throws:
      ApplicationNotFoundException
    • deleteApplicationFavorite

      public void deleteApplicationFavorite(Long applicationId, String username)
    • getSystemApplications

      public List<Application> getSystemApplications()
    • isFavoriteApplication

      public boolean isFavoriteApplication(Long applicationId, String username)
    • countFavorites

      public long countFavorites(String username)
    • getApplicationImageLastUpdated

      public Long getApplicationImageLastUpdated(long fileId)
    • getApplicationImageInputStream

      public InputStream getApplicationImageInputStream(long fileId)
    • getApplications

      public List<Application> getApplications(String keyword)
    • countApplications

      public long countApplications()
    • getMandatoryAndFavoriteApplications

      public List<UserApplication> getMandatoryAndFavoriteApplications(String username, org.springframework.data.domain.Pageable pageable)