All Downloads are FREE. Search and download functionalities are using the official Maven repository.

brainslug.flow.execution.property.store.PropertyStore Maven / Gradle / Ivy

The newest version!
package brainslug.flow.execution.property.store;

import brainslug.flow.definition.Identifier;
import brainslug.flow.execution.instance.FlowInstanceProperty;
import brainslug.flow.execution.instance.FlowInstanceProperties;
import brainslug.util.Option;

/**
 * A storage for flow instance properties.
 */
public interface PropertyStore {

  void setProperty(Identifier instanceId, FlowInstanceProperty property);

  void setProperties(Identifier instanceId, FlowInstanceProperties> executionContext);

  Option> getProperty(Identifier instanceId, Identifier key);

  /**
   * load properties for an instance
   *
   * @param instanceId the instance to load the properties for
   * @return the properties of the specified instance id, if none exists an empty map ist returned
   */
  FlowInstanceProperties> getProperties(Identifier instanceId);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy