Interface IModifiableRuntimeRepository

All Superinterfaces:
IRuntimeRepository
All Known Implementing Classes:
InMemoryRuntimeRepository

public interface IModifiableRuntimeRepository extends IRuntimeRepository
An extension of the IRuntimeRepository that allows to put files in the repository.
Since:
24.1
  • Method Details

    • putCustomRuntimeObject

      <T extends IRuntimeObject> void putCustomRuntimeObject(Class<T> type, String ipsObjectQualifiedName, T runtimeObject)
      Puts the runtimeObject into the repository.
    • putEnumValues

      <T> void putEnumValues(Class<T> enumTypeClass, List<T> enumValues, org.faktorips.values.InternationalString description)
      Puts the given enum values and description in the repository replacing all existing values for the given enumType.
      Parameters:
      enumTypeClass - the Java class representing the enumeration type
      enumValues - the value of the enumeration type as list
      description - the description of the enumeration
    • putEnumValues

      default <T> void putEnumValues(Class<T> enumTypeClass, List<T> enumValues)
      Puts the given enum values in the repository replacing all existing values for the given enumType, removing any description.
      Parameters:
      enumTypeClass - The Java class representing the enumeration type.
      enumValues - The value of the enumeration type as list.
      See Also:
    • putIpsTestCase

      void putIpsTestCase(IpsTestCaseBase test)
      Puts the test case into the repository.
    • putProductCmptGeneration

      void putProductCmptGeneration(IProductComponentGeneration generation)
      Puts the product component generation and its product component into the repository. If the repository already contains a generation with the same id, the new component replaces the old one. The same applies for the product component.
      Throws:
      IllegalRepositoryModificationException - if this repository does not allows to modify its contents.
      NullPointerException - if generation is null
      See Also:
    • putProductComponent

      void putProductComponent(IProductComponent productCmpt)
      Puts the product component into the repository. If the repository already contains a component with the same id, the new component replaces the old one.
      Throws:
      NullPointerException - if productCmpt is null.
      See Also:
    • removeProductComponent

      boolean removeProductComponent(IProductComponent productCmpt)
      Removes the product component from the repository.
      Returns:
      whether the given product component was part of this repository
      Throws:
      NullPointerException - if productCmpt is null.
      IllegalArgumentException - if productCmpt has no ID.
      Since:
      24.7
      See Also:
    • putTable

      void putTable(ITable<?> table)
      Puts the table into the repository. Replaces any table instance of the same class or any of its superclasses. The latter check is needed to replace tables with mock implementations.
      Throws:
      NullPointerException - if table is null or has no name.