Interface DefinitionsService

All Known Implementing Classes:
DefinitionsServiceImpl

public interface DefinitionsService
A service to retrieve definition information about core context server entities such as conditions, actions and values.
  • Method Details

    • getAllConditionTypes

      Collection<ConditionType> getAllConditionTypes()
      Retrieves all condition types.
      Returns:
      a Collection of all collection types
    • getConditionTypesByTag

      Set<ConditionType> getConditionTypesByTag(String tag)
      Retrieves the set of condition types with the specified tag.
      Parameters:
      tag - the tag marking the condition types we want to retrieve
      Returns:
      the set of condition types with the specified tag (and its sub-tags, if specified)
    • getConditionTypesBySystemTag

      Set<ConditionType> getConditionTypesBySystemTag(String tag)
      Retrieves the set of condition types with the specified system tag.
      Parameters:
      tag - the system tag marking the condition types we want to retrieve
      Returns:
      the set of condition types with the specified tag (and its sub-tags, if specified)
    • getConditionType

      ConditionType getConditionType(String id)
      Retrieves the condition type associated with the specified identifier.
      Parameters:
      id - the identifier of the condition type to retrieve
      Returns:
      the condition type associated with the specified identifier or null if no such condition type exists
    • setConditionType

      void setConditionType(ConditionType conditionType)
      Stores the condition type
      Parameters:
      conditionType - the condition type to store
    • removeConditionType

      void removeConditionType(String id)
      Remove the condition type
      Parameters:
      id - the condition type to remove
    • getAllActionTypes

      Collection<ActionType> getAllActionTypes()
      Retrieves all known action types.
      Returns:
      all known action types
    • getActionTypeByTag

      Set<ActionType> getActionTypeByTag(String tag)
      Retrieves the set of action types with the specified tag.
      Parameters:
      tag - the tag marking the action types we want to retrieve
      Returns:
      the set of action types with the specified tag
    • getActionTypeBySystemTag

      Set<ActionType> getActionTypeBySystemTag(String tag)
      Retrieves the set of action types with the specified system tag.
      Parameters:
      tag - the system tag marking the action types we want to retrieve
      Returns:
      the set of action types with the specified tag
    • getActionType

      ActionType getActionType(String id)
      Retrieves the action type associated with the specified identifier.
      Parameters:
      id - the identifier of the action type to retrieve
      Returns:
      the action type associated with the specified identifier or null if no such action type exists
    • setActionType

      void setActionType(ActionType actionType)
      Stores the action type
      Parameters:
      actionType - the action type to store
    • removeActionType

      void removeActionType(String id)
      Remove the action type
      Parameters:
      id - the action type to remove
    • getAllValueTypes

      Collection<ValueType> getAllValueTypes()
      Retrieves all known value types.
      Returns:
      all known value types
    • getValueTypeByTag

      Set<ValueType> getValueTypeByTag(String tag)
      Retrieves the set of value types with the specified tag.
      Parameters:
      tag - the tag marking the value types we want to retrieve
      Returns:
      the set of value types with the specified tag
    • getValueType

      ValueType getValueType(String id)
      Retrieves the value type associated with the specified identifier.
      Parameters:
      id - the identifier of the value type to retrieve
      Returns:
      the value type associated with the specified identifier or null if no such value type exists
    • getTypesByPlugin

      Map<Long,List<PluginType>> getTypesByPlugin()
      Retrieves a Map of plugin identifier to a list of plugin types defined by that particular plugin.
      Returns:
      a Map of plugin identifier to a list of plugin types defined by that particular plugin
    • getPropertyMergeStrategyType

      PropertyMergeStrategyType getPropertyMergeStrategyType(String id)
      Retrieves the property merge strategy type associated with the specified identifier.
      Parameters:
      id - the identifier of the property merge strategy type to retrieve
      Returns:
      the property merge strategy type associated with the specified identifier or null if no such property merge strategy type exists
    • extractConditionsByType

      Set<Condition> extractConditionsByType(Condition rootCondition, String typeId)
      Retrieves all conditions of the specified type from the specified root condition. TODO: remove?
      Parameters:
      rootCondition - the condition from which we want to extract all conditions with the specified type
      typeId - the identifier of the condition type we want conditions to extract to match
      Returns:
      a set of conditions contained in the specified root condition and matching the specified condition type or an empty set if no such condition exists
    • extractConditionByTag

      @Deprecated Condition extractConditionByTag(Condition rootCondition, String tag)
      Deprecated.
      As of 1.2.0-incubating, please use extractConditionBySystemTag(Condition, String) instead
      Retrieves a condition matching the specified tag identifier from the specified root condition. TODO: remove from API and move to a different class? TODO: purpose and behavior not clear
      Parameters:
      rootCondition - the root condition where to start the extraction by class
      tag - the tag to use to extract the condition
      Returns:
      Condition the condition that has been found matching the tag, or null if none matched
    • extractConditionBySystemTag

      Condition extractConditionBySystemTag(Condition rootCondition, String systemTag)
      Retrieves a condition matching the specified system tag identifier from the specified root condition.
      Parameters:
      rootCondition - the root condition where to start the extraction by class
      systemTag - the tag to use to extract the condition
      Returns:
      Condition the condition that has been found matching the tag, or null if none matched
    • resolveConditionType

      boolean resolveConditionType(Condition rootCondition)
      Resolves (if possible) the ConditionTypes for the specified condition and its sub-conditions (if any) from the type identifiers existing on the specified condition TODO: remove from API and move to a different class?
      Parameters:
      rootCondition - the condition for which we want to resolve the condition types from the existing condition type identifiers
      Returns:
      true
    • refresh

      void refresh()
      Forces a refresh of the definitions from the persistence service. Warning: this may seriously impact performance so it is recommended to use this in specific cases such as for example in integration tests.
    • getConditionBuilder

      ConditionBuilder getConditionBuilder()
      Retrieves a new instance of a ConditionBuilder to help to build conditions.
      Returns:
      a new instance of a ConditionBuilder