Class Process
Represents a context for units of work (like Todos) executing in the distributed system.
Processes are controlled via SkySystem.ProcessManager implementation
Inheritance
System.Object
Process
Implements
System.Collections.Generic.IEnumerable<System.Object>
System.Collections.IEnumerable
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Assembly: Azos.Sky.dll
Syntax
[Serializable]
public abstract class Process : AmorphousTypedDoc, IConfigurable, IConfigurationPersistent, IEquatable<Doc>, IEnumerable<object>, IEnumerable, IValidatable, IJSONWritable, IAmorphousData
Constructors
Process()
Declaration
Properties
App
Declaration
public ISkyApplication App { get; }
Property Value
SysDescriptor
Declaration
public ProcessDescriptor SysDescriptor { get; }
Property Value
SysPID
Globally-unique ID of the TODO
Declaration
public PID SysPID { get; }
Property Value
Methods
____Deserialize(ProcessDescriptor)
Infrastructure method, developers do not call
Declaration
public void ____Deserialize(ProcessDescriptor descriptor)
Parameters
Accept(IProcessHost, Signal)
Declaration
protected virtual ResultSignal Accept(IProcessHost host, Signal signal)
Parameters
Returns
DoAccept(IProcessHost, Signal)
Declaration
protected abstract ResultSignal DoAccept(IProcessHost host, Signal signal)
Parameters
Returns
DoPrepareForEnqueuePostValidate(String)
Declaration
protected virtual void DoPrepareForEnqueuePostValidate(string targetName)
Parameters
Type |
Name |
Description |
System.String |
targetName |
|
DoPrepareForEnqueuePreValidate(String)
Declaration
protected virtual void DoPrepareForEnqueuePreValidate(string targetName)
Parameters
Type |
Name |
Description |
System.String |
targetName |
|
Equals(Doc)
Declaration
public override bool Equals(Doc other)
Parameters
Type |
Name |
Description |
Doc |
other |
|
Returns
Type |
Description |
System.Boolean |
|
Overrides
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Type |
Description |
System.Int32 |
|
Overrides
MakeNew(IApplication, Type, PID, IConfigSectionNode)
Factory method that creates new Process based on provided Type, PID and Configuration
Declaration
public static Process MakeNew(IApplication app, Type type, PID pid, IConfigSectionNode args)
Parameters
Returns
MakeNew<TProcess>(IApplication, PID)
Factory method that creates new Process based on provided PID
Declaration
public static TProcess MakeNew<TProcess>(IApplication app, PID pid)
where TProcess : Process, new()
Parameters
Returns
Type |
Description |
TProcess |
|
Type Parameters
Name |
Description |
TProcess |
|
Merge(IProcessHost, DateTime, Process)
Executes merge operation on the existing process and another instance which tries to get spawned.
This method MUST execute be VERY FAST and only contain merge logic, do not make external IO calls -
all business data must already be contained in the original and another instance
Declaration
protected abstract void Merge(IProcessHost host, DateTime utcNow, Process another)
Parameters
ToString()
Declaration
public override string ToString()
Returns
Type |
Description |
System.String |
|
Overrides
System.Object.ToString()
UpdateStatus(IProcessHost, ProcessStatus, String, DateTime, String)
Declaration
protected void UpdateStatus(IProcessHost host, ProcessStatus status, string description, DateTime timestamp, string about)
Parameters
Type |
Name |
Description |
IProcessHost |
host |
|
ProcessStatus |
status |
|
System.String |
description |
|
System.DateTime |
timestamp |
|
System.String |
about |
|
Validate(String)
Declaration
public override Exception Validate(string targetName)
Parameters
Type |
Name |
Description |
System.String |
targetName |
|
Returns
Type |
Description |
System.Exception |
|
Overrides
ValidateAndPrepareForSpawn(String)
Declaration
public void ValidateAndPrepareForSpawn(string targetName)
Parameters
Type |
Name |
Description |
System.String |
targetName |
|
Implements
System.IEquatable<T>
System.Collections.Generic.IEnumerable<T>
System.Collections.IEnumerable
Extension Methods