Interface ApplicationConfigurationDao

All Known Implementing Classes:
MongoApplicationConfigurationDao

public interface ApplicationConfigurationDao
Created by patricktwohig on 7/13/15.
  • Method Details

    • getActiveApplicationConfigurations

      Pagination<ApplicationConfiguration> getActiveApplicationConfigurations(String applicationNameOrId, int offset, int count)
      Gets the active applications registered in the databse given the offset and count.
      Parameters:
      offset - the offset
      count - the count
      Returns:
      a Pagination of Application instances
    • getActiveApplicationConfigurations

      Pagination<ApplicationConfiguration> getActiveApplicationConfigurations(String applicationNameOrId, int offset, int count, String search)
      Gets the active applications registered in the databse given the offset and count.
      Parameters:
      offset - the offset
      count - the count
      search - a query to filter the results
      Returns:
      a Pagination of Application instances
    • getDefaultApplicationConfigurationForApplication

      default <T extends ApplicationConfiguration> T getDefaultApplicationConfigurationForApplication(String applicationNameOrId, Class<T> configurationClass)
      Gets the first and only ApplicationConfiguration from for the supplied Application using the Application.getName() or Application.getId() method, then maps and returns an instance of the given class.
      Parameters:
      applicationNameOrId - the application name or id
      Returns:
      the single ApplicationConfiguration for the supplied Application
    • getAllActiveApplicationConfigurations

      <T extends ApplicationConfiguration> List<T> getAllActiveApplicationConfigurations(String applicationNameOrId, Class<T> configurationTClass)
      Returns all ApplicationConfiguration instances for the supplied Application id and category.
      Parameters:
      applicationNameOrId - the application name or id
      Returns:
      a List associated with the Application
    • updateProductBundles

      <T extends ApplicationConfiguration> T updateProductBundles(String applicationNameOrId, String applicationConfigurationNameOrId, Class<T> configurationClass, List<ProductBundle> productBundle)
      Sets the ProductBundle for the given application configuration id.
      Parameters:
      applicationNameOrId - the application name or id
      applicationConfigurationNameOrId - the application configuration name or id
      configurationClass - the configuration class
      productBundle - the product bundle
      Returns:
      the updated ApplicationConfiguration
    • createApplicationConfiguration

      <T extends ApplicationConfiguration> T createApplicationConfiguration(String applicationNameOrId, T applicationConfiguration)
      Creates the application configuration.
      Type Parameters:
      T - the type of application configuration
      Parameters:
      applicationNameOrId -
      Returns:
      the ApplicationConfiguration as written to the database
    • updateApplicationConfiguration

      <T extends ApplicationConfiguration> T updateApplicationConfiguration(String applicationNameOrId, T applicationConfiguration)
      Updates the application configuration.
      Type Parameters:
      T - the type of application configuration
      Parameters:
      applicationNameOrId -
      Returns:
      the ApplicationConfiguration as written to the database
    • findApplicationConfiguration

      <T extends ApplicationConfiguration> Optional<T> findApplicationConfiguration(Class<T> configType, String applicationNameOrId, String applicationConfigurationId)
      Gets the ApplicationConfiguration with the supplied name and id.
      Type Parameters:
      T -
      Parameters:
      configType - the configuration type
      applicationNameOrId - the application name or ID
      applicationConfigurationId - the application configuration ID
      Returns:
      the instance
    • deleteApplicationConfiguration

      void deleteApplicationConfiguration(Class<? extends ApplicationConfiguration> configType, String applicationNameOrId, String applicationConfigurationId)
      Deletes the application configuration.
      Parameters:
      configType - the configuration type
      applicationNameOrId - the application name or ID
      applicationConfigurationId - the application configuration ID
    • getApplicationConfiguration

      default <T extends ApplicationConfiguration> T getApplicationConfiguration(Class<T> configT, String applicationNameOrId, String applicationConfigurationId)
      Gets the ApplicationConfiguration with the supplied name and id.
      Type Parameters:
      T -
      Parameters:
      applicationNameOrId - the application name or ID
      applicationConfigurationId - the application configuration ID
      Returns:
      the instance