C# Class Cinchcast.Roque.Redis.RedisQueue

Redis-based implementation of a Queue
Inheritance: Cinchcast.Roque.Core.Queue, IQueueWithInProgressData
Show file Open project: BlogTalkRadio/Roque

Public Properties

Property Type Description
DefaultSubscribersCacheExpiration TimeSpan
RedisNamespace string

Protected Properties

Property Type Description
_SubscribedToSubscribersChangesChannel RedisSubscriberConnection
_SubscribersCache string[]>.IDictionary
_SubscribersCacheLastClear DateTime

Public Methods

Method Description
ClearSubscribersCache ( ) : void
GetInProgressJson ( Worker worker ) : string
GetSubscribers ( ) : string[]>.IDictionary
GetSubscribersForEvent ( string target, string eventName ) : string[]
JobCompleted ( Worker worker, Job job, bool failed ) : void
RedisQueue ( string name, string>.IDictionary setings ) : System

Protected Methods

Method Description
DequeueJson ( Worker worker, int timeoutSeconds ) : string
DoGetTimeOfLastJobCompleted ( ) : DateTime?
DoReportEventSubscription ( string sourceQueue, string target, string eventName ) : void
EnqueueJson ( string data ) : void
EnqueueJsonEvent ( string data, string target, string eventName ) : void
GetRedisKey ( string suffixFormat = null ) : string
GetRedisKeyForQueue ( string queueName, string suffixFormat = null ) : string
GetWorkerKey ( Worker worker ) : string
PeekJson ( long &length ) : string

Method Details

ClearSubscribersCache() public method

public ClearSubscribersCache ( ) : void
return void

DequeueJson() protected method

protected DequeueJson ( Worker worker, int timeoutSeconds ) : string
worker Worker
timeoutSeconds int
return string

DoGetTimeOfLastJobCompleted() protected method

protected DoGetTimeOfLastJobCompleted ( ) : DateTime?
return DateTime?

DoReportEventSubscription() protected method

protected DoReportEventSubscription ( string sourceQueue, string target, string eventName ) : void
sourceQueue string
target string
eventName string
return void

EnqueueJson() protected method

protected EnqueueJson ( string data ) : void
data string
return void

EnqueueJsonEvent() protected method

protected EnqueueJsonEvent ( string data, string target, string eventName ) : void
data string
target string
eventName string
return void

GetInProgressJson() public method

public GetInProgressJson ( Worker worker ) : string
worker Worker
return string

GetRedisKey() protected method

protected GetRedisKey ( string suffixFormat = null ) : string
suffixFormat string
return string

GetRedisKeyForQueue() protected method

protected GetRedisKeyForQueue ( string queueName, string suffixFormat = null ) : string
queueName string
suffixFormat string
return string

GetSubscribers() public method

public GetSubscribers ( ) : string[]>.IDictionary
return string[]>.IDictionary

GetSubscribersForEvent() public method

public GetSubscribersForEvent ( string target, string eventName ) : string[]
target string
eventName string
return string[]

GetWorkerKey() protected method

protected GetWorkerKey ( Worker worker ) : string
worker Worker
return string

JobCompleted() public method

public JobCompleted ( Worker worker, Job job, bool failed ) : void
worker Worker
job Job
failed bool
return void

PeekJson() protected method

protected PeekJson ( long &length ) : string
length long
return string

RedisQueue() public method

public RedisQueue ( string name, string>.IDictionary setings ) : System
name string
setings string>.IDictionary
return System

Property Details

DefaultSubscribersCacheExpiration public static property

public static TimeSpan DefaultSubscribersCacheExpiration
return TimeSpan

RedisNamespace public static property

prefix for queues names in Redis
public static string RedisNamespace
return string

_SubscribedToSubscribersChangesChannel protected property

protected RedisSubscriberConnection _SubscribedToSubscribersChangesChannel
return RedisSubscriberConnection

_SubscribersCache protected property

protected IDictionary _SubscribersCache
return string[]>.IDictionary

_SubscribersCacheLastClear protected property

protected DateTime _SubscribersCacheLastClear
return DateTime