KlusterKite  0.0.0
A framework to create scalable and redundant services based on awesome Akka.Net project.
KlusterKite.Data.BaseCrudActor< TContext > Class Template Referenceabstract

Generic actor to perform basic crud operation on data objects More...

Inheritance diagram for KlusterKite.Data.BaseCrudActor< TContext >:
KlusterKite.Data.BaseCrudActorWithNotifications< TContext >

Protected Member Functions

 BaseCrudActor (IComponentContext componentContext)
 
virtual void AfterCreate< TObject > (TObject result)
 Method called after successful object creation in database More...
 
virtual void AfterDelete< TObject > (TObject deletedObject)
 Method called after successful object removal from database More...
 
virtual void AfterUpdate< TObject > (TObject newObject, TObject oldObject)
 Method called after successful object modification in database More...
 
override bool AroundReceive (Receive receive, object message)
 
virtual TObject BeforeCreate< TObject > (TObject request)
 Method call before object creation in database More...
 
virtual TObject BeforeDelete< TObject > (TObject oldObject)
 Method call before object removal database More...
 
virtual TObject BeforeUpdate< TObject > (TObject newObject, TObject oldObject)
 Method called before object modification in database More...
 
abstract TContext GetContext ()
 Gets current data context More...
 
virtual async Task OnCollectionRequest< TObject, TId > (CollectionRequest< TObject > collectionRequest)
 Process collection requests More...
 
virtual void OnParcelException (ParcelException message)
 Handling the parcel receive exceptions More...
 
virtual async Task OnRequest< TObject, TId > (CrudActionMessage< TObject, TId > request)
 Request process method More...
 
virtual TObject OnSelect< TObject > (TObject result)
 Called on select. Sender will receive this method output. More...
 
virtual async Task< CrudActionResponse< TObject > > ProcessRequest< TObject, TId > (CrudActionMessage< TObject, TId > request)
 Request process method More...
 

Properties

IComponentContext ComponentContext [get]
 Gets the DI component context More...
 

Detailed Description

Generic actor to perform basic crud operation on data objects

Template Parameters
TContextThe database context
Type Constraints
TContext :IDisposable 

Definition at line 41 of file BaseCrudActor.cs.

Constructor & Destructor Documentation

◆ BaseCrudActor()

KlusterKite.Data.BaseCrudActor< TContext >.BaseCrudActor ( IComponentContext  componentContext)
protected

Definition at line 55 of file BaseCrudActor.cs.

Member Function Documentation

◆ AfterCreate< TObject >()

virtual void KlusterKite.Data.BaseCrudActor< TContext >.AfterCreate< TObject > ( TObject  result)
protectedvirtual

Method called after successful object creation in database

Template Parameters
TObjectThe type of ef object
Parameters
resultCreated object

Reimplemented in KlusterKite.Data.BaseCrudActorWithNotifications< TContext >.

Type Constraints
TObject :class 

Definition at line 86 of file BaseCrudActor.cs.

◆ AfterDelete< TObject >()

virtual void KlusterKite.Data.BaseCrudActor< TContext >.AfterDelete< TObject > ( TObject  deletedObject)
protectedvirtual

Method called after successful object removal from database

Template Parameters
TObjectThe type of ef object
Parameters
deletedObjectremoved object

Reimplemented in KlusterKite.Data.BaseCrudActorWithNotifications< TContext >.

Type Constraints
TObject :class 

Definition at line 98 of file BaseCrudActor.cs.

◆ AfterUpdate< TObject >()

virtual void KlusterKite.Data.BaseCrudActor< TContext >.AfterUpdate< TObject > ( TObject  newObject,
TObject  oldObject 
)
protectedvirtual

Method called after successful object modification in database

Template Parameters
TObjectThe type of ef object
Parameters
newObjectThe new Object.
oldObjectThe old Object.

Reimplemented in KlusterKite.Data.BaseCrudActorWithNotifications< TContext >.

Type Constraints
TObject :class 

Definition at line 115 of file BaseCrudActor.cs.

◆ AroundReceive()

override bool KlusterKite.Data.BaseCrudActor< TContext >.AroundReceive ( Receive  receive,
object  message 
)
protected

Definition at line 121 of file BaseCrudActor.cs.

◆ BeforeCreate< TObject >()

virtual TObject KlusterKite.Data.BaseCrudActor< TContext >.BeforeCreate< TObject > ( TObject  request)
protectedvirtual

Method call before object creation in database

Template Parameters
TObjectThe type of ef object
Parameters
requestObject intended to be created
Returns
Object that will be created or null to prevent creation
Type Constraints
TObject :class 

Definition at line 142 of file BaseCrudActor.cs.

◆ BeforeDelete< TObject >()

virtual TObject KlusterKite.Data.BaseCrudActor< TContext >.BeforeDelete< TObject > ( TObject  oldObject)
protectedvirtual

Method call before object removal database

Template Parameters
TObjectThe type of ef object
Parameters
oldObjectObject intended to be removed
Returns
Object that will be removed
Type Constraints
TObject :class 

Definition at line 156 of file BaseCrudActor.cs.

◆ BeforeUpdate< TObject >()

virtual TObject KlusterKite.Data.BaseCrudActor< TContext >.BeforeUpdate< TObject > ( TObject  newObject,
TObject  oldObject 
)
protectedvirtual

Method called before object modification in database

Template Parameters
TObjectThe type of ef object
Parameters
newObjectThe new Object.
oldObjectThe old Object.
Returns
The new version of object or null to prevent update

Reimplemented in KlusterKite.NodeManager.NodeManagerActor.

Type Constraints
TObject :class 

Definition at line 177 of file BaseCrudActor.cs.

◆ GetContext()

abstract TContext KlusterKite.Data.BaseCrudActor< TContext >.GetContext ( )
protectedpure virtual

◆ OnCollectionRequest< TObject, TId >()

virtual async Task KlusterKite.Data.BaseCrudActor< TContext >.OnCollectionRequest< TObject, TId > ( CollectionRequest< TObject >  collectionRequest)
protectedvirtual

Process collection requests

Template Parameters
TObjectThe type of ef object
TIdThe type of object identity field
Parameters
collectionRequestCollection request
Returns
The list of objects
Type Constraints
TObject :class 

Definition at line 200 of file BaseCrudActor.cs.

◆ OnParcelException()

virtual void KlusterKite.Data.BaseCrudActor< TContext >.OnParcelException ( ParcelException  message)
protectedvirtual

Handling the parcel receive exceptions

Parameters
messageThe parcel receive exception

Definition at line 280 of file BaseCrudActor.cs.

◆ OnRequest< TObject, TId >()

virtual async Task KlusterKite.Data.BaseCrudActor< TContext >.OnRequest< TObject, TId > ( CrudActionMessage< TObject, TId >  request)
protectedvirtual

Request process method

Template Parameters
TObjectThe type of ef object
TIdThe type of object identity field
Parameters
requestThe action request
Returns
Execution task
Type Constraints
TObject :class 

Definition at line 306 of file BaseCrudActor.cs.

◆ OnSelect< TObject >()

virtual TObject KlusterKite.Data.BaseCrudActor< TContext >.OnSelect< TObject > ( TObject  result)
protectedvirtual

Called on select. Sender will receive this method output.

Template Parameters
TObjectThe type of ef object
Parameters
resultSelected object from database
Returns
Result for requester

Definition at line 343 of file BaseCrudActor.cs.

◆ ProcessRequest< TObject, TId >()

virtual async Task<CrudActionResponse<TObject> > KlusterKite.Data.BaseCrudActor< TContext >.ProcessRequest< TObject, TId > ( CrudActionMessage< TObject, TId >  request)
protectedvirtual

Request process method

Template Parameters
TObjectThe type of ef object
TIdThe type of object identity field
Parameters
requestThe action request
Returns
Execution task
Type Constraints
TObject :class 

Definition at line 364 of file BaseCrudActor.cs.

Property Documentation

◆ ComponentContext

IComponentContext KlusterKite.Data.BaseCrudActor< TContext >.ComponentContext
getprotected

Gets the DI component context

Definition at line 77 of file BaseCrudActor.cs.


The documentation for this class was generated from the following file: