DeveelDB  20151217
complete SQL database system, primarly developed for .NET/Mono frameworks
Public Member Functions | Protected Member Functions | Properties | Private Member Functions | Private Attributes | List of all members
Deveel.Data.Block Class Reference
Inheritance diagram for Deveel.Data.Block:
Deveel.Data.IBlock Deveel.Data.IRequest Deveel.Data.Diagnostics.IEventSource Deveel.Data.Index.StoreIndex.MappedBlock

Public Member Functions

 Block (IRequest request)
 
void Dispose ()
 
virtual IBlock CreateBlock ()
 

Protected Member Functions

virtual IEnumerable< KeyValuePair< string, object > > GetEventMetadata ()
 
virtual void Dispose (bool disposing)
 
virtual void ExecuteBlock (BlockExecuteContext context)
 

Properties

IBlock Parent [get, private set]
 
IBlock Next [get, set]
 
IQuery Query [get]
 
IEventSource IEventSource. ParentSource [get]
 
IEnumerable< KeyValuePair< string, object > > IEventSource. Metadata [get]
 
IBlockContext Context [get, private set]
 
IContext IEventSource. Context [get]
 
- Properties inherited from Deveel.Data.IBlock
new IBlockContext Context [get]
 
IBlock Parent [get]
 
IBlock Next [get]
 
- Properties inherited from Deveel.Data.IRequest
IQuery Query [get]
 
- Properties inherited from Deveel.Data.Diagnostics.IEventSource
IContext Context [get]
 
IEventSource ParentSource [get]
 Gets an optional parent source. More...
 
IEnumerable< KeyValuePair< string, object > > Metadata [get]
 Gets the list of metadata associated to the source. More...
 

Private Member Functions

 ~Block ()
 
IBlockContext IRequest. CreateBlockContext ()
 
void IBlock. Execute (BlockExecuteContext context)
 

Private Attributes

IQuery query
 

Detailed Description

Definition at line 23 of file Block.cs.

Constructor & Destructor Documentation

Deveel.Data.Block.Block ( IRequest  request)
inline

Definition at line 26 of file Block.cs.

26  {
27  if (request == null)
28  throw new ArgumentNullException("request");
29 
30  query = request as IQuery;
31 
32  Context = request.CreateBlockContext();
33  Context.UnregisterService<IBlock>();
34  Context.RegisterInstance<IBlock>(this);
35 
36  Parent = request as IBlock;
37  }
IBlockContext CreateBlockContext()
IBlockContext Context
Definition: Block.cs:83
IBlock Parent
Definition: Block.cs:43
IQuery query
Definition: Block.cs:24
Deveel.Data.Block.~Block ( )
inlineprivate

Definition at line 39 of file Block.cs.

39  {
40  Dispose(false);
41  }
void Dispose()
Definition: Block.cs:68

Member Function Documentation

virtual IBlock Deveel.Data.Block.CreateBlock ( )
inlinevirtual

Definition at line 101 of file Block.cs.

101  {
102  return new Block(this);
103  }
Block(IRequest request)
Definition: Block.cs:26
IBlockContext IRequest. Deveel.Data.Block.CreateBlockContext ( )
inlineprivate

Implements Deveel.Data.IRequest.

Definition at line 89 of file Block.cs.

89  {
90  return Context.CreateBlockContext();
91  }
IBlockContext CreateBlockContext()
IBlockContext Context
Definition: Block.cs:83
void Deveel.Data.Block.Dispose ( )
inline

Definition at line 68 of file Block.cs.

68  {
69  Dispose(true);
70  GC.SuppressFinalize(this);
71  }
void Dispose()
Definition: Block.cs:68
virtual void Deveel.Data.Block.Dispose ( bool  disposing)
inlineprotectedvirtual

Definition at line 73 of file Block.cs.

73  {
74  if (disposing) {
75  if (Context != null)
76  Context.Dispose();
77  }
78 
79  Context = null;
80  query = null;
81  }
IBlockContext Context
Definition: Block.cs:83
IQuery query
Definition: Block.cs:24
void IBlock. Deveel.Data.Block.Execute ( BlockExecuteContext  context)
inlineprivate

Implements Deveel.Data.IBlock.

Definition at line 93 of file Block.cs.

93  {
94  ExecuteBlock(context);
95  }
virtual void ExecuteBlock(BlockExecuteContext context)
Definition: Block.cs:97
virtual void Deveel.Data.Block.ExecuteBlock ( BlockExecuteContext  context)
inlineprotectedvirtual

Definition at line 97 of file Block.cs.

97  {
98  // default implementation is an empty block, that does nothing
99  }
virtual IEnumerable<KeyValuePair<string, object> > Deveel.Data.Block.GetEventMetadata ( )
inlineprotectedvirtual

Definition at line 64 of file Block.cs.

64  {
65  return new KeyValuePair<string, object>[0];
66  }

Member Data Documentation

IQuery Deveel.Data.Block.query
private

Definition at line 24 of file Block.cs.

Property Documentation

IBlockContext Deveel.Data.Block.Context
getprivate set

Definition at line 83 of file Block.cs.

IContext IEventSource. Deveel.Data.Block.Context
getprivate

Definition at line 85 of file Block.cs.

IEnumerable<KeyValuePair<string, object> > IEventSource. Deveel.Data.Block.Metadata
getprivate

Definition at line 60 of file Block.cs.

IBlock Deveel.Data.Block.Next
getset

Definition at line 45 of file Block.cs.

IBlock Deveel.Data.Block.Parent
getprivate set

Definition at line 43 of file Block.cs.

IEventSource IEventSource. Deveel.Data.Block.ParentSource
getprivate

Definition at line 56 of file Block.cs.

IQuery Deveel.Data.Block.Query
get

Definition at line 47 of file Block.cs.


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