java.lang.Object
org.palladiosimulator.dataflow.confidentiality.analysis.sequence.pcm.finder.SEFFFinderContext

public class SEFFFinderContext extends Object
  • Constructor Details

    • SEFFFinderContext

      public SEFFFinderContext(Deque<org.palladiosimulator.pcm.core.composition.AssemblyContext> context, Deque<AbstractPCMActionSequenceElement<?>> callers, List<org.palladiosimulator.pcm.repository.Parameter> parameter, List<DataStore> dataStores)
      Initializes a new SEFF Finder context with the given assembly context, Collection of callers, List of available parameter, and all discovered data stores
      Parameters:
      context - Assembly context present at the SEFF element
      callers - List of callers that called the SEFF element
      parameter - List of parameters present at the SEFF element
      dataStores - List of data stores that were discovered while finding sequences
    • SEFFFinderContext

      public SEFFFinderContext(SEFFFinderContext context)
      Duplicate SEFF Finder Context given an existing context
      Parameters:
      context - SEFF Finder Context that should be duplicated
  • Method Details

    • updateParameterForCallerReturning

      public void updateParameterForCallerReturning(AbstractPCMActionSequenceElement<?> caller)
      Update parameter that are passed to the called function for a given calling PCM element
      Parameters:
      caller - Calling PCM element, for which parameter shall be updated
    • updateParametersForCall

      public void updateParametersForCall(List<org.palladiosimulator.pcm.repository.Parameter> passedVariables)
      Update stored parameters directly by setting passed variables to a function
      Parameters:
      passedVariables - New variables present in the finder context
    • updateSEFFContext

      public void updateSEFFContext(Deque<org.palladiosimulator.pcm.core.composition.AssemblyContext> newContext)
      Update assembly contexts with a new provided collection of assembly contexts
      Parameters:
      newContext - Collection of new assembly contexts
    • getLastCaller

      public AbstractPCMActionSequenceElement<?> getLastCaller()
      Returns the last called PCM element and removes it from the saved callers
      Returns:
      Last called PCM element
    • addCaller

      public void addCaller(AbstractPCMActionSequenceElement<?> caller)
      Adds a new caller to the SEFF Finder context to be saved as the topmost element in the collection of callers
      Parameters:
      caller - Added caller to the finder context
    • addDataStore

      public void addDataStore(DataStore dataStore)
      Add a new known data store to the context
      Parameters:
      dataStore - New known data store
    • getContext

      public Deque<org.palladiosimulator.pcm.core.composition.AssemblyContext> getContext()
      Returns the currently saved assembly contexts, that the current SEFF element is executed in
      Returns:
      Returns the collection of saved assembly contexts
    • getCallers

      public Deque<AbstractPCMActionSequenceElement<?>> getCallers()
      Returns the currently saved callers, that called the current SEFF element
      Returns:
      Returns the collection of saved callers
    • getParameter

      public List<org.palladiosimulator.pcm.repository.Parameter> getParameter()
      Returns the currently saved parameter, that are available for the current SEFF element
      Returns:
    • getDataStores

      public List<DataStore> getDataStores()
      Returns the list of data stores, that are currently known
      Returns:
      List of available data stores