Table of Contents

Namespace TimeCockpit.Data.DataModel.Actions

Classes

AnonymousParameter

Represents a parameter that is NOT based on an existing ModelEntity which can be handed to a ModelAction

AssemblyBinding

Represents a binding that establishes a relationship from a ModelAction to executable code that is directly stored with the binding.

ExecutionContext

Represents the main context a ModelAction operates on during its execution.

FileActionResult

Represents an IActionResult with a file as response.

IronPythonBinding

Represents a SourceCodeBinding that establishes a relationship from a ModelAction to executable code that is directly stored with the binding. The binding references some executable python code.

IronPythonCondition

Encapsulates information about a condition which determines if the code of a ModelAction's ModelAction.Binding is executable. An instance of IronPythonCondition executes IronPython code to determine if a ModelAction is NotValid, Disabled or Executable.

IronPythonLibraryBinding

Represents a binding that establishes a relationship from a ModelAction to executable code that is directly stored with the binding. The binding references function definitions that are NOT executable on their own, but need to be called from elsewhere.

ModelAction

Encapsulates information about a piece of executable code that is exposed by some kind of Binding.

ModelActions can be executed with or without a Parameter. Up to now, actions only support TypedParameters. That is, a ModelEntity has to be defined that serves as a parameter (ModelEntity). Optionally a parameter may provide a custom EntityView that is taken, when the form for the parameter is rendered (see ModelEntityForm).

A ModelAction may have conditions when a ModelAction is allowed to be executed. Up to now ModelEntityTypeConditions are supported. That is, a condition determines on which ModelEntity an action can be executed.

A ModelAction must provide a Binding. Up to now only IronPythonBindings are supported. If no Binding is provided, nothing can be executed and an System.ArgumentException is thrown.

When executing a ModelAction, an instance of ExecutionContext must be provided. An ExecutionContext passes an EntityObject (basing on ModelEntity), and an InputSet to executable code. As up to now only IronPythonBindings are supported, executable code is written in IronPython. A ModelAction can be executed with or without an InputSet. If an InputSet is passed to the executable code of the ModelActionBinding, operations are usually performed on the items of the InputSet.

ModelActionBinding

Represents a binding that a ModelAction can use to retrieve exectuable code, e.g. IronPython or C#

ModelActionContext

Represents the main context a ModelAction operates on. A ModelActionContext must provide at least an instance of DataContext, a list of EntityObject to operation on (may be empty) and an instance of ModelActionParameterDefinition.

ModelActionParameterDefinition

Provides a parameter definition for a ModelAction. A ModelActionParameterDefinition defines how a parameter for a ModelAction looks like. Parameters of a ModelAction are represented with EntityObjects. That is, a ModelActionParameterDefinition has a property ModelEntity which represents the "blueprint" of the parameter EntityObject.

ModelEntityTypeCondition

Encapsulates information about a condition which determines if the code of a Binding is executable.

ModelEntityTypeConditionExtension

Implements a markup extension that supports references to model entities in XAML.

PredefinedAnonymousParameter

Represents a predefined anonymous model entity (a model entity that is not persisted) for a ModelAction

SourceCodeBinding

Represents a binding that establishes a relationship from a ModelAction to executable code that is directly stored with the binding.

TypedParameter

Represents a parameter that has a ModelEntity that is attached to a Model.

Interfaces

IActionResult

Marker interface for action results.

Enums

Status

Determines the status of a ModelAction