Contains classes and types to handle Space Filters.
Declaration Syntax
C# | Visual Basic | Visual C++ | J# |
namespace GigaSpaces.Core.Filters
Namespace GigaSpaces.Core.Filters
namespace GigaSpaces.Core.Filters
package GigaSpaces.Core.Filters
Types
All Types | Classes | Interfaces | Enumerations |
Icon | Type | Description |
---|---|---|
AfterAllNotifyTriggerAttribute |
Filter callback AfterAllNotifyTrigger. Indicates that all notify templates that are matched to the current entry event were triggered and returned or failed.
| |
AfterExecuteAttribute |
Filter callback AfterExecute operation.
| |
AfterNotifyTriggerAttribute |
Filter callback AfterNotifyTrigger. Indicates that a notify trigger was successful.
| |
AfterReadAttribute |
Filter callback AfterRead operation.
| |
AfterReadMultipleAttribute |
Filter callback AfterReadMultiple operation.
| |
AfterRemoveByLeaseAttribute |
Filter callback after an entry was removed due to lease expression or lease cancel.
| |
AfterTakeAttribute |
Filter callback AfterTake operation.
| |
AfterTakeMultipleAttribute |
Filter callback AfterTakeMultiple operation.
| |
AfterUpdateAttribute |
Filter callback AfterUpdate operation.
| |
AfterWriteAttribute |
Filter callback AfterWrite operation.
| |
AttributeSpaceFilterConfigFactory |
A SpaceFilterConfigFactory implementation that accepts
an object filter with attributes markers as to which filter operation to listen to. The
available annotations are the different attributes found within this namespace with
either the Before prefix or the After prefix (for example:
BeforeWriteAttribute and AfterWriteAttribute). Filter lifecycle methods can be marked
using OnFilterInitAttribute and implements IDisposable.
The methods marked with an attribute can accept different arguments. Please see
FilterOperationDelegateInvoker for all the different possibilities.
For an object filter adapter that does not use attributes please see MethodNameSpaceFilterConfigFactory.
| |
BeforeAllNotifyTriggerAttribute |
Filter callback BeforeAllNotifyTrigger. Indicates that at least one notify template is matched to the current entry event.
| |
BeforeCleanSpaceAttribute |
Filter callback BeforeCleanSpace operation.
| |
BeforeExecuteAttribute |
Filter callback BeforeExecute operation.
| |
BeforeGetAdminAttribute |
Filter callback BeforeGetAdmin operation.
| |
BeforeNotifyAttribute |
Filter callback Before notify register operation.
| |
BeforeNotifyTriggerAttribute |
Filter callback BeforeNotifyTrigger. Indicates that a matched notify template was found to the current entry event.
| |
BeforeReadAttribute |
Filter callback BeforeRead operation.
| |
BeforeReadMultipleAttribute |
Filter callback BeforeReadMultiple operation.
| |
BeforeRemoveByLeaseAttribute |
Filter callback before an entry was removed due to lease expression or lease cancel.
| |
BeforeTakeAttribute |
Filter callback BeforeTake operation.
| |
BeforeTakeMultipleAttribute |
Filter callback BeforeTakeMultiple operation.
| |
BeforeUpdateAttribute |
Filter callback BeforeUpdate operation.
| |
BeforeWriteAttribute |
Filter callback BeforeWrite operation.
| |
FilterException |
Thrown when a filter related error occurs.
| |
FilterExecutionException |
Thrown when a filter execution related error occurs.
| |
FilterOperation |
Represents the different filter operations.
| |
FilterOperationDelegateInvoker |
A filter operation delegate invoker, invoking a method associated with the given operation code.
For single ISpaceFilterEntry invocation
(see ISpaceFilter Process(SpaceContext,ISpaceFilter,FilterOperation))
support the following different structures:
A no op method callback. For example Test()
A single parameter. The parameter can either be an ISpaceFilterEntry
or the actual template object wrapped by the entry. If using actual types, this delegate will filter out
all the types that are not assignable to it. For example: Test(ISpaceFilterEntry entry) or
Test(SimpleMessage message).
Two parameters. The first one maps to the previous option, the second one is the FilterOperation.
Three parameters. The first two maps to the previous option, the third one is a SecurityContext.
For multiple ISpaceFilterEntry invocation
(see ISpaceFilter Process(SpaceContext,ISpaceFilter,ISpaceFilter,FilterOperation))
support the following different structures:
A no op method callback. For example Test()
A single parameter. The parameter can either be an ISpaceFilterEntry
or the actual template object wrapped by the entry. If using actual types, this delegate will filter out
all the types that are not assignable to it. For example: Test(ISpaceFilterEntry entry) or
Test(SimpleMessage message).
Two parameters. The first one maps to the previous option, the second is the same as the first one since
multiple entries always have two entries (mainly for update operations).
Three parameters. The first two maps to the previous option, the second one is the FilterOperation.
Four parameters. The first three maps to the previous option, the third one is a SecurityContext.
| |
FilterPriority |
Represent the filter priority.
| |
FilterValidationException |
Thrown when a filter validation related error occurs.
| |
ISpaceFilter |
A filter is a special hook point inside the engine that enables
integration with external systems or implementation of user
defined logic. The filter has a simple life-cycle: it initializes
itself in the init() method, processes events in its process()
method and finally cleans resources on close(). The process()
method is called by the engine when an event that matches the
filter's Operation Code. The possible codes are specified by the
FilterOperation. Filters are grouped by priorities.
Filters with higher priorities
are activated closer to the hook point. This means:
* Before filters - filters with lower priorities will be activated first.
* After filters - filters with higher priorities will be activated first.
Since filters are activated in sensitive hook points in the engine,
they should be careful with performing long blocking calls,
such as connecting to databases.
| |
ISpaceFilterEntry |
Represents an object instance passed to the ISpaceFilter with additional relevent information.
| |
MethodNameSpaceFilterConfigFactory |
A SpaceFilterConfigFactory implementation that accepts
an object filter with different operation callbacks that are marked using this configurer.
For each available operation there is a property that accepts the method name to be invoked if the operation happend.
Not setting a callback means that this filter will not listen to the mentioned operation. For example, if the filter has
a method called DoSomethingBeforeWrite, the property BeforeWrite will need to be set with DoSomethingBeforeWrite.
The methods marked with an attribute can accept different arguments. Please see
FilterOperationDelegateInvoker for all the different possibilities.
For an object filter adapter that uses attributes please see AttributeSpaceFilterConfigFactory.
| |
OnFilterInitAttribute |
Method name for filter lifecycle init callback. Can either have no arguments or a single
argument that accepts ISpaceProxy.
| |
SetSecurityAttribute |
Filter callback SetSecurity operation.
| |
SpaceFilterConfig |
Defines configurations for a SpaceFilter.
| |
SpaceFilterConfigFactory |
A base class for config creators that creates a fully configured ready to use SpaceFilterConfig that uses SpaceFilterOperationDelegate
to delegate filter operations to a custom instance of a filter that doesn't implement the ISpaceFilter interface directly
| |
SpaceFilterOperationDelegate |
An ISpaceFilter implementation that acts as an adapter
delegating the execution of the filter lifecycle methods and specific operation to pluggable
reflection based methods.
Holds a MethodInfo representing an init callback, its value can be null for cases where no delegation is required.
Holds a map of FilterOperationDelegateInvoker per operation code.
Once Process is called, a FilterOperationDelegateInvoker is required
based on the operation code, and if found, the invocation is delegated to it.
|