57 lines
1.6 KiB
VB.net
57 lines
1.6 KiB
VB.net
Imports StackExchange
|
|
Imports StackExchange.Redis
|
|
|
|
Class RedisManager
|
|
|
|
' connessione al server Redis
|
|
Private m_RedisConnection As ConnectionMultiplexer
|
|
Public ReadOnly Property RedisConnection As ConnectionMultiplexer
|
|
Get
|
|
Return m_RedisConnection
|
|
End Get
|
|
End Property
|
|
|
|
' indice del Db Redis
|
|
Private m_nRedisDbIndex As Integer = 0
|
|
Public ReadOnly Property nRedisDbIndex As Integer
|
|
Get
|
|
Return m_nRedisDbIndex
|
|
End Get
|
|
End Property
|
|
|
|
' Database Redis
|
|
Private m_RedisDb As IDatabase
|
|
Public ReadOnly Property RedisDb As IDatabase
|
|
Get
|
|
Return m_RedisDb
|
|
End Get
|
|
End Property
|
|
|
|
' gestore sottoscrizioni
|
|
Private m_Subscriber As ISubscriber
|
|
Public ReadOnly Property Subscriber As ISubscriber
|
|
Get
|
|
Return m_Subscriber
|
|
End Get
|
|
End Property
|
|
|
|
Sub New()
|
|
Try
|
|
' inizializzo connessione al server Redis
|
|
m_RedisConnection = ConnectionMultiplexer.Connect("localhost")
|
|
m_nRedisDbIndex = GetMainPrivateProfileInt(S_REDIS, K_DBINDEX, 0)
|
|
m_RedisDb = m_RedisConnection.GetDatabase(m_nRedisDbIndex)
|
|
' inizializzo sottoscrizioni
|
|
m_Subscriber = m_RedisConnection.GetSubscriber()
|
|
m_Subscriber.Subscribe("Messages", AddressOf SubscribeHandler)
|
|
Catch ex As Exception
|
|
EgtOutLog("Redis connection error!! " & Environment.NewLine & ex.Message)
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub SubscribeHandler(RedisChannel As RedisChannel, RedisValue As RedisValue)
|
|
EgtOutLog("Ricevuto valore " & RedisValue.ToString() & " dal canale " & RedisChannel.ToString())
|
|
End Sub
|
|
|
|
End Class
|