Commit dfd3ec46 authored by mohammad.salama's avatar mohammad.salama

Client LoadBalancing internally , Renamed Queuer to Scheduler , some...

Client LoadBalancing internally , Renamed Queuer to Scheduler , some enhancements on Redis Writes ops
parent 91f6480a
......@@ -33,12 +33,12 @@
},
"494712ab-c5a0-4525-81ae-dd203f249cb9": {
"ProjectGuid": "494712ab-c5a0-4525-81ae-dd203f249cb9",
"DisplayName": "MessageGeneratorGRPC",
"DisplayName": "GRPCMessageGenerator",
"ColorIndex": 5
},
"676d9604-4597-4935-826a-7f054fd5936a": {
"ProjectGuid": "676d9604-4597-4935-826a-7f054fd5936a",
"DisplayName": "QueuerNode",
"DisplayName": "Scheduler",
"ColorIndex": 6
},
"79a276e9-da51-4434-9241-a0f8e6771232": {
......@@ -70,7 +70,17 @@
"ProjectGuid": "8f51b680-f3b6-4892-b854-2e2af840cd71",
"DisplayName": "SimpleStreamConsumerTest",
"ColorIndex": 12
},
"1bf34fa7-e2a8-4fac-a7a5-d57264b98b98": {
"ProjectGuid": "1bf34fa7-e2a8-4fac-a7a5-d57264b98b98",
"DisplayName": "ManualStreamConsumer",
"ColorIndex": 13
},
"4f286608-7770-4511-bf37-2b94f5351d42": {
"ProjectGuid": "4f286608-7770-4511-bf37-2b94f5351d42",
"DisplayName": "PriorityStream",
"ColorIndex": 14
}
},
"NextColorIndex": 13
"NextColorIndex": 15
}
\ No newline at end of file
using GrpcMessageNode.Services;
using Steeltoe.Discovery;
namespace GrpcMessageNode.LoadBalancer
{
public class AddressResolver
{
private static Random random = new Random();
private static int offset = random.Next(200000,int.MaxValue);
public static string getAddressOfInstance(string instanceName , ref IDiscoveryClient discoveryClient)
{
string address = "";
try
{
// instanceName = "Validator" or "QueuerNode" ... etc
var y = discoveryClient.GetInstances(instanceName); /// write names to config file
int element = offset % y.Count;
address = y[element].Uri.ToString();
offset = 1 + (offset % y.Count);
return address;
}
catch (Exception ex)
{
return SendMessageService.ErrorConnection;
}
}
}
}
......@@ -9,12 +9,12 @@ namespace GrpcMessageNode.Services
public class SendMessageService : Send.SendBase
{
private readonly ILogger<SendMessageService> _logger;
private readonly IDiscoveryClient discoveryClient;
private IDiscoveryClient discoveryClient;
private static readonly string ErrorValidation = "Error When Validating Request";
private static readonly string ErrorDBConnection = "Error Connecting to DataBase";
private static readonly string ErrorConnection = "Error Connecting to Servers";
public static readonly string ErrorConnection = "Error Connecting to Servers";
private static readonly string ErrorGRPCConnection = "Error Connecting to GRPC Servers";
private static readonly string QueuerNode = "QueuerNode";
private static readonly string Scheduler = "SchedulerNode";
private static readonly string Validator = "Validator";
......@@ -26,7 +26,7 @@ namespace GrpcMessageNode.Services
public override Task<Acknowledgement> SendMessage(Message message, ServerCallContext context)
{
string validator = getAddressOfInstance(Validator);
string validator = LoadBalancer.AddressResolver.getAddressOfInstance(Validator , ref discoveryClient);
if (validator == ErrorConnection)
{
return Task.FromResult(new Acknowledgement
......@@ -61,7 +61,7 @@ namespace GrpcMessageNode.Services
private Acknowledgement sendToCoordinator(Message message)
{
string address = getAddressOfInstance(QueuerNode);
string address = LoadBalancer.AddressResolver.getAddressOfInstance(Scheduler , ref discoveryClient);
if (address == ErrorConnection)
{
return (new Acknowledgement
......@@ -94,14 +94,14 @@ namespace GrpcMessageNode.Services
}
//not working -- causing unknown exception with nullable parameter http2
private Queue.QueueClient getQueueClient()
/*private Queue.QueueClient getQueueClient()
{
string address = getAddressOfInstance(QueuerNode);
string address = LoadBalancer.AddressResolver.getAddressOfInstance(Scheduler , ref discoveryClient);
using var channel = GrpcChannel.ForAddress(address);
//Console.WriteLine("QueuerNode Address = " + address);
//Console.WriteLine("Scheduler Address = " + address);
var client = new Queue.QueueClient(channel);
return client;
}
}*/
private Message2 copyMessage(Message message)
{
......@@ -117,12 +117,12 @@ namespace GrpcMessageNode.Services
}
private string getAddressOfInstance(string instanceName)
/*private string getAddressOfInstance(string instanceName)
{
string address = "";
try
{
// instanceName = "Validator" or "QueuerNode" ... etc
// instanceName = "Validator" or "Scheduler" ... etc
var y = discoveryClient.GetInstances(instanceName); /// write names to config file
address = y[0].Uri.ToString();
......@@ -133,6 +133,6 @@ namespace GrpcMessageNode.Services
{
return ErrorConnection;
}
}
}*/
}
}
......@@ -5,9 +5,9 @@ VisualStudioVersion = 17.0.31903.59
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrpcMessageNode", "GrpcMessage\GrpcMessageNode.csproj", "{E55ED87C-0EE4-4A4C-BBBB-76CBF482188D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MessageGeneratorGRPC", "MessageGeneratorGRPC\MessageGeneratorGRPC.csproj", "{494712AB-C5A0-4525-81AE-DD203F249CB9}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GRPCMessageGenerator", "MessageGeneratorGRPC\GRPCMessageGenerator.csproj", "{494712AB-C5A0-4525-81AE-DD203F249CB9}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "QueuerNode", "QueuerNode\QueuerNode.csproj", "{676D9604-4597-4935-826A-7F054FD5936A}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Scheduler", "QueuerNode\Scheduler.csproj", "{676D9604-4597-4935-826A-7F054FD5936A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HTTPMessageNode", "HTTPMessageNode\HTTPMessageNode.csproj", "{79828C38-A68B-4340-9F93-D55C5DCC203A}"
EndProject
......@@ -15,7 +15,11 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HTTPMessageGenerator", "HTT
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Validator", "Validator\Validator.csproj", "{D2C3ADDD-BA47-473C-A761-1CE5B1EE6407}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleStreamConsumerTest", "SimpleStreamConsumerTest\SimpleStreamConsumerTest.csproj", "{8F51B680-F3B6-4892-B854-2E2AF840CD71}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SimpleStreamConsumerTest", "SimpleStreamConsumerTest\SimpleStreamConsumerTest.csproj", "{8F51B680-F3B6-4892-B854-2E2AF840CD71}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ManualStreamConsumer", "ManualStreamConsumer\ManualStreamConsumer.csproj", "{1BF34FA7-E2A8-4FAC-A7A5-D57264B98B98}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PriorityStream", "PriorityStream\PriorityStream.csproj", "{4F286608-7770-4511-BF37-2B94F5351D42}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
......@@ -51,6 +55,14 @@ Global
{8F51B680-F3B6-4892-B854-2E2AF840CD71}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8F51B680-F3B6-4892-B854-2E2AF840CD71}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8F51B680-F3B6-4892-B854-2E2AF840CD71}.Release|Any CPU.Build.0 = Release|Any CPU
{1BF34FA7-E2A8-4FAC-A7A5-D57264B98B98}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1BF34FA7-E2A8-4FAC-A7A5-D57264B98B98}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1BF34FA7-E2A8-4FAC-A7A5-D57264B98B98}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1BF34FA7-E2A8-4FAC-A7A5-D57264B98B98}.Release|Any CPU.Build.0 = Release|Any CPU
{4F286608-7770-4511-BF37-2B94F5351D42}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4F286608-7770-4511-BF37-2B94F5351D42}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4F286608-7770-4511-BF37-2B94F5351D42}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4F286608-7770-4511-BF37-2B94F5351D42}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......
......@@ -10,9 +10,9 @@ namespace HTTPMessageNode.Controllers
{
private readonly ILogger<QueueMessageController> _logger;
private readonly IDiscoveryClient discoveryClient;
private static readonly string ErrorConnection = "Error Connecting to Servers";
private static readonly string QueuerNode = "QueuerNode"; //put them in files!
private IDiscoveryClient discoveryClient;
public static readonly string ErrorConnection = "Error Connecting to Servers";
private static readonly string Scheduler = "SchedulerNode"; //put them in files!
private static readonly string Validator = "Validator";
private static readonly string ErrorDBConnection = "Error Connecting to DataBase";
private static readonly string ErrorValidation = "Error When Validating Request";
......@@ -31,7 +31,7 @@ namespace HTTPMessageNode.Controllers
{
//Console.WriteLine("Msg from : " + messageDTO.clientID + " pr = " + messageDTO.localPriority);
string validator = getAddressOfInstance(Validator);
string validator = LoadBalancer.AddressResolver.getAddressOfInstance(Validator, ref discoveryClient);
if (validator == ErrorConnection)
{
return (new Acknowledgement
......@@ -60,7 +60,7 @@ namespace HTTPMessageNode.Controllers
Console.WriteLine("new prio = " + message.LocalPriority);
string address = getAddressOfInstance(QueuerNode);
string address = LoadBalancer.AddressResolver.getAddressOfInstance(Scheduler, ref discoveryClient);
if (address == ErrorConnection)
{
return (new Acknowledgement
......@@ -111,12 +111,12 @@ namespace HTTPMessageNode.Controllers
}
private string getAddressOfInstance(string instanceName)
/*private string getAddressOfInstance(string instanceName)
{
string address = "";
try
{
// instanceName = "Validator" or "QueuerNode" ... etc
// instanceName = "Validator" or "Scheduler" ... etc
var y = discoveryClient.GetInstances(instanceName); /// write names to config file
address = y[0].Uri.ToString();
......@@ -127,6 +127,6 @@ namespace HTTPMessageNode.Controllers
{
return ErrorConnection;
}
}
}*/
}
}
\ No newline at end of file

using HTTPMessageNode.Controllers;
using Steeltoe.Discovery;
namespace HTTPMessageNode.LoadBalancer
{
public class AddressResolver
{
private static Random random = new Random();
private static int offset = random.Next(200000,int.MaxValue);
public static string getAddressOfInstance(string instanceName , ref IDiscoveryClient discoveryClient)
{
string address = "";
try
{
// instanceName = "Validator" or "QueuerNode" ... etc
var y = discoveryClient.GetInstances(instanceName); /// write names to config file
int element = offset % y.Count;
address = y[element].Uri.ToString();
offset = 1 + (offset % y.Count);
return address;
}
catch (Exception ex)
{
return QueueMessageController.ErrorConnection;
}
}
}
}
4cfc54818bac6f68e42c2cdebb5e9d540dad794f
6f8efc80d26826db09c37cfadc07ee5cd0181d02
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CSRedisCore" Version="3.8.803" />
<PackageReference Include="StackExchange.Redis" Version="2.8.0" />
</ItemGroup>
</Project>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SimpleStreamConsumerTest
{
public class MessageDTO
{
public string? clientID { get; set; }
public string? apiKey { get; set; }
public string? msgId { get; set; }
public string? phoneNumber { get; set; }
public int localPriority { get; set; }
public string? text { get; set; }
public string? tag { get; set; }
}
}
using CSRedis;
using SimpleStreamConsumerTest;
using StackExchange.Redis;
using Newtonsoft.Json;
var tokenSource = new CancellationTokenSource();
var token = tokenSource.Token;
string SYR = "localhost:6374";
var muxer = ConnectionMultiplexer.Connect(SYR);
var db = muxer.GetDatabase();
const string streamName3 = "3";
const string groupName = "SYS_MSGS";
const string myConsumerID = "some-id";
const int count = 1554; // at most reads (count) messages from a stream
var readManual = Task.Run(async () =>
{
/*TimeSpan blockTime = TimeSpan.FromSeconds(0.2);
string rest = "GROUP " + groupName + " id "
+ "BLOCK " + blockTime.TotalMilliseconds + " "
+ "COUNT " + count
+ " STREAMS " + streamName3 + " >";
string[] rest2 = { "GROUP "
, groupName
, myConsumerID
, "COUNT "
, count.ToString()
, "BLOCK "
, blockTime.TotalMilliseconds.ToString()
, "STREAMS "
, streamName3
,">"};
string[] rest3 = {groupName
, myConsumerID
, count.ToString()
, blockTime.TotalMilliseconds.ToString()
, streamName3
,">"};*/
string cmd = "XREADGROUP";
/*
items = r.xreadgroup("GROUP",GroupName,ConsumerName,"BLOCK","2000","COUNT","10","STREAMS",:my_stream_key,myid)
*/
// var res = db.Execute(cmd , rest3);
while (!token.IsCancellationRequested)
{
var res = await db.ExecuteAsync(cmd, "GROUP", groupName, myConsumerID, "BLOCK", 2000, "COUNT", 10, "STREAMS", streamName3, ">");
Console.WriteLine("length = " + res.Length);
if (res.Length <= 0) continue;
/*var temp = res[0].ToDictionary();
foreach (var r in temp)
{
Console.WriteLine(r.GetType());
Console.WriteLine(r.Value);
}*/
///
/// mesg -> Value -> [0] -> [1] -> [1]
///
var messages = res[0].ToDictionary();
foreach (var message in messages)
{
Console.WriteLine(message.Key);
Console.WriteLine(message.Value.GetType());
//Console.WriteLine(message.Value[0][1][1]);
MessageDTO? messaged = JsonConvert.DeserializeObject<MessageDTO>(message.Value[0][1][1]);
//Console.WriteLine(messaged);
}
Console.WriteLine("*******************************************************");
await Task.Delay(1000);
}
});
tokenSource.CancelAfter(TimeSpan.FromSeconds(300));
await Task.WhenAll(readManual);
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"ManualStreamConsumer/1.0.0": {
"dependencies": {
"CSRedisCore": "3.8.803",
"StackExchange.Redis": "2.8.0"
},
"runtime": {
"ManualStreamConsumer.dll": {}
}
},
"CSRedisCore/3.8.803": {
"dependencies": {
"Newtonsoft.Json": "13.0.1",
"System.ValueTuple": "4.5.0"
},
"runtime": {
"lib/netstandard2.0/CSRedisCore.dll": {
"assemblyVersion": "3.8.803.0",
"fileVersion": "3.8.803.0"
}
}
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"runtime": {
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.21.52210"
}
}
},
"Newtonsoft.Json/13.0.1": {
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {
"assemblyVersion": "13.0.0.0",
"fileVersion": "13.0.1.25517"
}
}
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"dependencies": {
"System.IO.Pipelines": "5.0.1"
},
"runtime": {
"lib/net5.0/Pipelines.Sockets.Unofficial.dll": {
"assemblyVersion": "1.0.0.0",
"fileVersion": "2.2.8.1080"
}
}
},
"StackExchange.Redis/2.8.0": {
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Pipelines.Sockets.Unofficial": "2.2.8"
},
"runtime": {
"lib/net6.0/StackExchange.Redis.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.8.0.27420"
}
}
},
"System.IO.Pipelines/5.0.1": {
"runtime": {
"lib/netcoreapp3.0/System.IO.Pipelines.dll": {
"assemblyVersion": "5.0.0.1",
"fileVersion": "5.0.120.57516"
}
}
},
"System.ValueTuple/4.5.0": {}
}
},
"libraries": {
"ManualStreamConsumer/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"CSRedisCore/3.8.803": {
"type": "package",
"serviceable": true,
"sha512": "sha512-+tCmvsJy0f69WMARgRT9nmTtIiwJDkTl9g5H32r7mJ003IxeZKFhLkvjO6MIm/6o79wM+s0lLW4fYlBvWP8C8Q==",
"path": "csrediscore/3.8.803",
"hashPath": "csrediscore.3.8.803.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-/HggWBbTwy8TgebGSX5DBZ24ndhzi93sHUBDvP1IxbZD7FDokYzdAr6+vbWGjw2XAfR2EJ1sfKUotpjHnFWPxA==",
"path": "microsoft.extensions.logging.abstractions/6.0.0",
"hashPath": "microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512"
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==",
"path": "newtonsoft.json/13.0.1",
"hashPath": "newtonsoft.json.13.0.1.nupkg.sha512"
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"type": "package",
"serviceable": true,
"sha512": "sha512-zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==",
"path": "pipelines.sockets.unofficial/2.2.8",
"hashPath": "pipelines.sockets.unofficial.2.2.8.nupkg.sha512"
},
"StackExchange.Redis/2.8.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-MjAJ0ejH8zLhtuN5+Z+/I07NmPGdVuGEvE2+4xONQoFwgl+7vbQ/A6jlUgH9UkZb4s9Mu9QDyBq1TkRqQcOgTQ==",
"path": "stackexchange.redis/2.8.0",
"hashPath": "stackexchange.redis.2.8.0.nupkg.sha512"
},
"System.IO.Pipelines/5.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-qEePWsaq9LoEEIqhbGe6D5J8c9IqQOUuTzzV6wn1POlfdLkJliZY3OlB0j0f17uMWlqZYjH7txj+2YbyrIA8Yg==",
"path": "system.io.pipelines/5.0.1",
"hashPath": "system.io.pipelines.5.0.1.nupkg.sha512"
},
"System.ValueTuple/4.5.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ==",
"path": "system.valuetuple/4.5.0",
"hashPath": "system.valuetuple.4.5.0.nupkg.sha512"
}
}
}
\ No newline at end of file
{
"runtimeOptions": {
"tfm": "net6.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
}
}
}
\ No newline at end of file
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = "")]
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("ManualStreamConsumer")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("ManualStreamConsumer")]
[assembly: System.Reflection.AssemblyTitleAttribute("ManualStreamConsumer")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = ManualStreamConsumer
build_property.ProjectDir = D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\ManualStreamConsumer.exe
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\ManualStreamConsumer.deps.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\ManualStreamConsumer.runtimeconfig.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\ManualStreamConsumer.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\ref\ManualStreamConsumer.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\ManualStreamConsumer.pdb
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\CSRedisCore.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\Microsoft.Extensions.Logging.Abstractions.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\Newtonsoft.Json.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\Pipelines.Sockets.Unofficial.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\StackExchange.Redis.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\bin\Debug\net6.0\System.IO.Pipelines.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.csproj.AssemblyReference.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.GeneratedMSBuildEditorConfig.editorconfig
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.AssemblyInfoInputs.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.AssemblyInfo.cs
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.csproj.CoreCompileInputs.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.csproj.CopyComplete
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ref\ManualStreamConsumer.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.pdb
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\ManualStreamConsumer\obj\Debug\net6.0\ManualStreamConsumer.genruntimeconfig.cache
{
"format": 1,
"restore": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\ManualStreamConsumer.csproj": {}
},
"projects": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\ManualStreamConsumer.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\ManualStreamConsumer.csproj",
"projectName": "ManualStreamConsumer",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\ManualStreamConsumer.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\moham\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"dependencies": {
"CSRedisCore": {
"target": "Package",
"version": "[3.8.803, )"
},
"StackExchange.Redis": {
"target": "Package",
"version": "[2.8.0, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.100\\RuntimeIdentifierGraph.json"
}
}
}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\moham\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.0.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\moham\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
\ No newline at end of file
{
"version": 3,
"targets": {
"net6.0": {
"CSRedisCore/3.8.803": {
"type": "package",
"dependencies": {
"Newtonsoft.Json": "13.0.1",
"System.ValueTuple": "4.5.0"
},
"compile": {
"lib/netstandard2.0/CSRedisCore.dll": {}
},
"runtime": {
"lib/netstandard2.0/CSRedisCore.dll": {}
}
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"type": "package",
"compile": {
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {}
},
"runtime": {
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {}
},
"build": {
"buildTransitive/netcoreapp3.1/_._": {}
}
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"compile": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {}
},
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {}
}
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"type": "package",
"dependencies": {
"System.IO.Pipelines": "5.0.1"
},
"compile": {
"lib/net5.0/Pipelines.Sockets.Unofficial.dll": {}
},
"runtime": {
"lib/net5.0/Pipelines.Sockets.Unofficial.dll": {}
}
},
"StackExchange.Redis/2.8.0": {
"type": "package",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Pipelines.Sockets.Unofficial": "2.2.8"
},
"compile": {
"lib/net6.0/StackExchange.Redis.dll": {}
},
"runtime": {
"lib/net6.0/StackExchange.Redis.dll": {}
}
},
"System.IO.Pipelines/5.0.1": {
"type": "package",
"compile": {
"ref/netcoreapp2.0/System.IO.Pipelines.dll": {}
},
"runtime": {
"lib/netcoreapp3.0/System.IO.Pipelines.dll": {}
}
},
"System.ValueTuple/4.5.0": {
"type": "package",
"compile": {
"ref/netcoreapp2.0/_._": {}
},
"runtime": {
"lib/netcoreapp2.0/_._": {}
}
}
}
},
"libraries": {
"CSRedisCore/3.8.803": {
"sha512": "+tCmvsJy0f69WMARgRT9nmTtIiwJDkTl9g5H32r7mJ003IxeZKFhLkvjO6MIm/6o79wM+s0lLW4fYlBvWP8C8Q==",
"type": "package",
"path": "csrediscore/3.8.803",
"files": [
".nupkg.metadata",
".signature.p7s",
"csrediscore.3.8.803.nupkg.sha512",
"csrediscore.nuspec",
"lib/net40/CSRedisCore.dll",
"lib/net40/CSRedisCore.xml",
"lib/net45/CSRedisCore.dll",
"lib/net45/CSRedisCore.xml",
"lib/netstandard2.0/CSRedisCore.dll",
"lib/netstandard2.0/CSRedisCore.xml"
]
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"sha512": "/HggWBbTwy8TgebGSX5DBZ24ndhzi93sHUBDvP1IxbZD7FDokYzdAr6+vbWGjw2XAfR2EJ1sfKUotpjHnFWPxA==",
"type": "package",
"path": "microsoft.extensions.logging.abstractions/6.0.0",
"files": [
".nupkg.metadata",
".signature.p7s",
"Icon.png",
"LICENSE.TXT",
"THIRD-PARTY-NOTICES.TXT",
"analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll",
"analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll",
"analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
"build/Microsoft.Extensions.Logging.Abstractions.targets",
"buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets",
"buildTransitive/netcoreapp3.1/_._",
"lib/net461/Microsoft.Extensions.Logging.Abstractions.dll",
"lib/net461/Microsoft.Extensions.Logging.Abstractions.xml",
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll",
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml",
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll",
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml",
"microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512",
"microsoft.extensions.logging.abstractions.nuspec",
"useSharedDesignerContext.txt"
]
},
"Newtonsoft.Json/13.0.1": {
"sha512": "ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==",
"type": "package",
"path": "newtonsoft.json/13.0.1",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE.md",
"lib/net20/Newtonsoft.Json.dll",
"lib/net20/Newtonsoft.Json.xml",
"lib/net35/Newtonsoft.Json.dll",
"lib/net35/Newtonsoft.Json.xml",
"lib/net40/Newtonsoft.Json.dll",
"lib/net40/Newtonsoft.Json.xml",
"lib/net45/Newtonsoft.Json.dll",
"lib/net45/Newtonsoft.Json.xml",
"lib/netstandard1.0/Newtonsoft.Json.dll",
"lib/netstandard1.0/Newtonsoft.Json.xml",
"lib/netstandard1.3/Newtonsoft.Json.dll",
"lib/netstandard1.3/Newtonsoft.Json.xml",
"lib/netstandard2.0/Newtonsoft.Json.dll",
"lib/netstandard2.0/Newtonsoft.Json.xml",
"newtonsoft.json.13.0.1.nupkg.sha512",
"newtonsoft.json.nuspec",
"packageIcon.png"
]
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"sha512": "zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==",
"type": "package",
"path": "pipelines.sockets.unofficial/2.2.8",
"files": [
".nupkg.metadata",
".signature.p7s",
"lib/net461/Pipelines.Sockets.Unofficial.dll",
"lib/net461/Pipelines.Sockets.Unofficial.xml",
"lib/net472/Pipelines.Sockets.Unofficial.dll",
"lib/net472/Pipelines.Sockets.Unofficial.xml",
"lib/net5.0/Pipelines.Sockets.Unofficial.dll",
"lib/net5.0/Pipelines.Sockets.Unofficial.xml",
"lib/netcoreapp3.1/Pipelines.Sockets.Unofficial.dll",
"lib/netcoreapp3.1/Pipelines.Sockets.Unofficial.xml",
"lib/netstandard2.0/Pipelines.Sockets.Unofficial.dll",
"lib/netstandard2.0/Pipelines.Sockets.Unofficial.xml",
"lib/netstandard2.1/Pipelines.Sockets.Unofficial.dll",
"lib/netstandard2.1/Pipelines.Sockets.Unofficial.xml",
"pipelines.sockets.unofficial.2.2.8.nupkg.sha512",
"pipelines.sockets.unofficial.nuspec"
]
},
"StackExchange.Redis/2.8.0": {
"sha512": "MjAJ0ejH8zLhtuN5+Z+/I07NmPGdVuGEvE2+4xONQoFwgl+7vbQ/A6jlUgH9UkZb4s9Mu9QDyBq1TkRqQcOgTQ==",
"type": "package",
"path": "stackexchange.redis/2.8.0",
"files": [
".nupkg.metadata",
".signature.p7s",
"lib/net461/StackExchange.Redis.dll",
"lib/net461/StackExchange.Redis.xml",
"lib/net472/StackExchange.Redis.dll",
"lib/net472/StackExchange.Redis.xml",
"lib/net6.0/StackExchange.Redis.dll",
"lib/net6.0/StackExchange.Redis.xml",
"lib/netcoreapp3.1/StackExchange.Redis.dll",
"lib/netcoreapp3.1/StackExchange.Redis.xml",
"lib/netstandard2.0/StackExchange.Redis.dll",
"lib/netstandard2.0/StackExchange.Redis.xml",
"stackexchange.redis.2.8.0.nupkg.sha512",
"stackexchange.redis.nuspec"
]
},
"System.IO.Pipelines/5.0.1": {
"sha512": "qEePWsaq9LoEEIqhbGe6D5J8c9IqQOUuTzzV6wn1POlfdLkJliZY3OlB0j0f17uMWlqZYjH7txj+2YbyrIA8Yg==",
"type": "package",
"path": "system.io.pipelines/5.0.1",
"files": [
".nupkg.metadata",
".signature.p7s",
"Icon.png",
"LICENSE.TXT",
"THIRD-PARTY-NOTICES.TXT",
"lib/net461/System.IO.Pipelines.dll",
"lib/net461/System.IO.Pipelines.xml",
"lib/netcoreapp3.0/System.IO.Pipelines.dll",
"lib/netcoreapp3.0/System.IO.Pipelines.xml",
"lib/netstandard1.3/System.IO.Pipelines.dll",
"lib/netstandard1.3/System.IO.Pipelines.xml",
"lib/netstandard2.0/System.IO.Pipelines.dll",
"lib/netstandard2.0/System.IO.Pipelines.xml",
"ref/netcoreapp2.0/System.IO.Pipelines.dll",
"ref/netcoreapp2.0/System.IO.Pipelines.xml",
"system.io.pipelines.5.0.1.nupkg.sha512",
"system.io.pipelines.nuspec",
"useSharedDesignerContext.txt",
"version.txt"
]
},
"System.ValueTuple/4.5.0": {
"sha512": "okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ==",
"type": "package",
"path": "system.valuetuple/4.5.0",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE.TXT",
"THIRD-PARTY-NOTICES.TXT",
"lib/MonoAndroid10/_._",
"lib/MonoTouch10/_._",
"lib/net461/System.ValueTuple.dll",
"lib/net461/System.ValueTuple.xml",
"lib/net47/System.ValueTuple.dll",
"lib/net47/System.ValueTuple.xml",
"lib/netcoreapp2.0/_._",
"lib/netstandard1.0/System.ValueTuple.dll",
"lib/netstandard1.0/System.ValueTuple.xml",
"lib/netstandard2.0/_._",
"lib/portable-net40+sl4+win8+wp8/System.ValueTuple.dll",
"lib/portable-net40+sl4+win8+wp8/System.ValueTuple.xml",
"lib/uap10.0.16299/_._",
"lib/xamarinios10/_._",
"lib/xamarinmac20/_._",
"lib/xamarintvos10/_._",
"lib/xamarinwatchos10/_._",
"ref/MonoAndroid10/_._",
"ref/MonoTouch10/_._",
"ref/net461/System.ValueTuple.dll",
"ref/net47/System.ValueTuple.dll",
"ref/netcoreapp2.0/_._",
"ref/netstandard2.0/_._",
"ref/portable-net40+sl4+win8+wp8/System.ValueTuple.dll",
"ref/uap10.0.16299/_._",
"ref/xamarinios10/_._",
"ref/xamarinmac20/_._",
"ref/xamarintvos10/_._",
"ref/xamarinwatchos10/_._",
"system.valuetuple.4.5.0.nupkg.sha512",
"system.valuetuple.nuspec",
"useSharedDesignerContext.txt",
"version.txt"
]
}
},
"projectFileDependencyGroups": {
"net6.0": [
"CSRedisCore >= 3.8.803",
"StackExchange.Redis >= 2.8.0"
]
},
"packageFolders": {
"C:\\Users\\moham\\.nuget\\packages\\": {},
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {}
},
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\ManualStreamConsumer.csproj",
"projectName": "ManualStreamConsumer",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\ManualStreamConsumer.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\moham\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"dependencies": {
"CSRedisCore": {
"target": "Package",
"version": "[3.8.803, )"
},
"StackExchange.Redis": {
"target": "Package",
"version": "[2.8.0, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.100\\RuntimeIdentifierGraph.json"
}
}
}
}
\ No newline at end of file
{
"version": 2,
"dgSpecHash": "6cENbdzNq8kT6/MlTWGw5Q0+MWX12aoV2sPjjfcu5+rOITIeeJ/byAYfge6HWDqZgh2RetSCaiWbDD9/Cjs8qA==",
"success": true,
"projectFilePath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\ManualStreamConsumer\\ManualStreamConsumer.csproj",
"expectedPackageFiles": [
"C:\\Users\\moham\\.nuget\\packages\\csrediscore\\3.8.803\\csrediscore.3.8.803.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\6.0.0\\microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\newtonsoft.json\\13.0.1\\newtonsoft.json.13.0.1.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\pipelines.sockets.unofficial\\2.2.8\\pipelines.sockets.unofficial.2.2.8.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\stackexchange.redis\\2.8.0\\stackexchange.redis.2.8.0.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\system.io.pipelines\\5.0.1\\system.io.pipelines.5.0.1.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\system.valuetuple\\4.5.0\\system.valuetuple.4.5.0.nupkg.sha512"
],
"logs": []
}
\ No newline at end of file
using MessageGeneratorGRPC;
using GGRPCMessageGenerator;
using Steeltoe.Discovery.Client;
IHost host = Host.CreateDefaultBuilder(args)
......
syntax = "proto3";
option csharp_namespace = "MessageGeneratorGRPC";
option csharp_namespace = "GGRPCMessageGenerator";
package Tranmitter;
......
using Grpc.Net.Client;
using Steeltoe.Discovery;
namespace MessageGeneratorGRPC
namespace GGRPCMessageGenerator
{
public class Worker : BackgroundService
{
......
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: Microsoft.Extensions.Configuration.UserSecrets.UserSecretsIdAttribute("dotnet-MessageGeneratorGRPC-685F4B88-9109-41BE-B200-D1916D3E7EAB")]
[assembly: System.Reflection.AssemblyCompanyAttribute("GRPCMessageGenerator")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("GRPCMessageGenerator")]
[assembly: System.Reflection.AssemblyTitleAttribute("GRPCMessageGenerator")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = GRPCMessageGenerator
build_property.ProjectDir = D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\MessageGeneratorGRPC\
// <auto-generated/>
global using global::Microsoft.Extensions.Configuration;
global using global::Microsoft.Extensions.DependencyInjection;
global using global::Microsoft.Extensions.Hosting;
global using global::Microsoft.Extensions.Logging;
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
......@@ -9,7 +9,7 @@ using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace MessageGeneratorGRPC {
namespace GGRPCMessageGenerator {
/// <summary>Holder for reflection information generated from Protos/schema.proto</summary>
public static partial class SchemaReflection {
......@@ -30,13 +30,13 @@ namespace MessageGeneratorGRPC {
"ASgFEgwKBHRleHQYBiABKAkSCwoDdGFnGAcgASgJIjcKD0Fja25vd2xlZGdl",
"bWVudBIRCglyZXBseUNvZGUYASABKAkSEQoJcmVxdWVzdElEGAIgASgJMkcK",
"BFNlbmQSPwoLU2VuZE1lc3NhZ2USEy5UcmFubWl0dGVyLk1lc3NhZ2UaGy5U",
"cmFubWl0dGVyLkFja25vd2xlZGdlbWVudEIXqgIUTWVzc2FnZUdlbmVyYXRv",
"ckdSUENiBnByb3RvMw=="));
"cmFubWl0dGVyLkFja25vd2xlZGdlbWVudEIYqgIVR0dSUENNZXNzYWdlR2Vu",
"ZXJhdG9yYgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { },
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::MessageGeneratorGRPC.Message), global::MessageGeneratorGRPC.Message.Parser, new[]{ "ClientID", "ApiKey", "MsgId", "PhoneNumber", "LocalPriority", "Text", "Tag" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::MessageGeneratorGRPC.Acknowledgement), global::MessageGeneratorGRPC.Acknowledgement.Parser, new[]{ "ReplyCode", "RequestID" }, null, null, null, null)
new pbr::GeneratedClrTypeInfo(typeof(global::GGRPCMessageGenerator.Message), global::GGRPCMessageGenerator.Message.Parser, new[]{ "ClientID", "ApiKey", "MsgId", "PhoneNumber", "LocalPriority", "Text", "Tag" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::GGRPCMessageGenerator.Acknowledgement), global::GGRPCMessageGenerator.Acknowledgement.Parser, new[]{ "ReplyCode", "RequestID" }, null, null, null, null)
}));
}
#endregion
......@@ -58,7 +58,7 @@ namespace MessageGeneratorGRPC {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::MessageGeneratorGRPC.SchemaReflection.Descriptor.MessageTypes[0]; }
get { return global::GGRPCMessageGenerator.SchemaReflection.Descriptor.MessageTypes[0]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
......@@ -470,7 +470,7 @@ namespace MessageGeneratorGRPC {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::MessageGeneratorGRPC.SchemaReflection.Descriptor.MessageTypes[1]; }
get { return global::GGRPCMessageGenerator.SchemaReflection.Descriptor.MessageTypes[1]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
......
......@@ -7,7 +7,7 @@
using grpc = global::Grpc.Core;
namespace MessageGeneratorGRPC {
namespace GGRPCMessageGenerator {
public static partial class Send
{
static readonly string __ServiceName = "Tranmitter.Send";
......@@ -46,12 +46,12 @@ namespace MessageGeneratorGRPC {
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::MessageGeneratorGRPC.Message> __Marshaller_Tranmitter_Message = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::MessageGeneratorGRPC.Message.Parser));
static readonly grpc::Marshaller<global::GGRPCMessageGenerator.Message> __Marshaller_Tranmitter_Message = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::GGRPCMessageGenerator.Message.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::MessageGeneratorGRPC.Acknowledgement> __Marshaller_Tranmitter_Acknowledgement = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::MessageGeneratorGRPC.Acknowledgement.Parser));
static readonly grpc::Marshaller<global::GGRPCMessageGenerator.Acknowledgement> __Marshaller_Tranmitter_Acknowledgement = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::GGRPCMessageGenerator.Acknowledgement.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Method<global::MessageGeneratorGRPC.Message, global::MessageGeneratorGRPC.Acknowledgement> __Method_SendMessage = new grpc::Method<global::MessageGeneratorGRPC.Message, global::MessageGeneratorGRPC.Acknowledgement>(
static readonly grpc::Method<global::GGRPCMessageGenerator.Message, global::GGRPCMessageGenerator.Acknowledgement> __Method_SendMessage = new grpc::Method<global::GGRPCMessageGenerator.Message, global::GGRPCMessageGenerator.Acknowledgement>(
grpc::MethodType.Unary,
__ServiceName,
"SendMessage",
......@@ -61,7 +61,7 @@ namespace MessageGeneratorGRPC {
/// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::MessageGeneratorGRPC.SchemaReflection.Descriptor.Services[0]; }
get { return global::GGRPCMessageGenerator.SchemaReflection.Descriptor.Services[0]; }
}
/// <summary>Client for Send</summary>
......@@ -92,22 +92,22 @@ namespace MessageGeneratorGRPC {
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::MessageGeneratorGRPC.Acknowledgement SendMessage(global::MessageGeneratorGRPC.Message request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
public virtual global::GGRPCMessageGenerator.Acknowledgement SendMessage(global::GGRPCMessageGenerator.Message request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return SendMessage(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::MessageGeneratorGRPC.Acknowledgement SendMessage(global::MessageGeneratorGRPC.Message request, grpc::CallOptions options)
public virtual global::GGRPCMessageGenerator.Acknowledgement SendMessage(global::GGRPCMessageGenerator.Message request, grpc::CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_SendMessage, null, options, request);
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::MessageGeneratorGRPC.Acknowledgement> SendMessageAsync(global::MessageGeneratorGRPC.Message request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
public virtual grpc::AsyncUnaryCall<global::GGRPCMessageGenerator.Acknowledgement> SendMessageAsync(global::GGRPCMessageGenerator.Message request, grpc::Metadata headers = null, global::System.DateTime? deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
{
return SendMessageAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken));
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual grpc::AsyncUnaryCall<global::MessageGeneratorGRPC.Acknowledgement> SendMessageAsync(global::MessageGeneratorGRPC.Message request, grpc::CallOptions options)
public virtual grpc::AsyncUnaryCall<global::GGRPCMessageGenerator.Acknowledgement> SendMessageAsync(global::GGRPCMessageGenerator.Message request, grpc::CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_SendMessage, null, options, request);
}
......
{
"format": 1,
"restore": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\GRPCMessageGenerator.csproj": {}
},
"projects": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\GRPCMessageGenerator.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\GRPCMessageGenerator.csproj",
"projectName": "GRPCMessageGenerator",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\GRPCMessageGenerator.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\moham\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"dependencies": {
"Google.Protobuf": {
"target": "Package",
"version": "[3.27.2, )"
},
"Grpc.Net.Client": {
"target": "Package",
"version": "[2.63.0, )"
},
"Grpc.Tools": {
"include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
"suppressParent": "All",
"target": "Package",
"version": "[2.64.0, )"
},
"Microsoft.Extensions.Hosting": {
"target": "Package",
"version": "[6.0.0, )"
},
"Steeltoe.Connector.ConnectorCore": {
"target": "Package",
"version": "[3.2.6, )"
},
"Steeltoe.Discovery.Eureka": {
"target": "Package",
"version": "[3.2.6, )"
},
"Swashbuckle.AspNetCore": {
"target": "Package",
"version": "[6.4.*, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.100\\RuntimeIdentifierGraph.json"
}
}
}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\moham\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.0.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\moham\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.props" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.props')" />
<Import Project="$(NuGetPackageRoot)swashbuckle.aspnetcore\6.4.0\build\Swashbuckle.AspNetCore.props" Condition="Exists('$(NuGetPackageRoot)swashbuckle.aspnetcore\6.4.0\build\Swashbuckle.AspNetCore.props')" />
<Import Project="$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.props" Condition="Exists('$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.props')" />
</ImportGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_Extensions_ApiDescription_Server Condition=" '$(PkgMicrosoft_Extensions_ApiDescription_Server)' == '' ">C:\Users\moham\.nuget\packages\microsoft.extensions.apidescription.server\6.0.5</PkgMicrosoft_Extensions_ApiDescription_Server>
<PkgGrpc_Tools Condition=" '$(PkgGrpc_Tools)' == '' ">C:\Users\moham\.nuget\packages\grpc.tools\2.64.0</PkgGrpc_Tools>
</PropertyGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.targets')" />
<Import Project="$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.targets" Condition="Exists('$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.targets')" />
</ImportGroup>
</Project>
\ No newline at end of file
......@@ -2299,9 +2299,9 @@
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\MessageGeneratorGRPC.csproj",
"projectName": "MessageGeneratorGRPC",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\MessageGeneratorGRPC.csproj",
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\GRPCMessageGenerator.csproj",
"projectName": "GRPCMessageGenerator",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\GRPCMessageGenerator.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\obj\\",
"projectStyle": "PackageReference",
......
{
"version": 2,
"dgSpecHash": "/RqSpcKHJ6tQrjMLOCYr1ka5c7HzNSoqnHcGFF3d0MYNnEgOhx4ZJyVq1FLi4AEM2IPvbLLFqbVwQo9lvBtLRQ==",
"dgSpecHash": "6gKkdz/XUTFH4agWGPaB6l+tLec8NuslHQFYeZm9Az0ubFd5h2z/VrnVrxjSqurEXtET6KJX2mYw4EOWV40XGg==",
"success": true,
"projectFilePath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\MessageGeneratorGRPC.csproj",
"projectFilePath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\MessageGeneratorGRPC\\GRPCMessageGenerator.csproj",
"expectedPackageFiles": [
"C:\\Users\\moham\\.nuget\\packages\\google.protobuf\\3.27.2\\google.protobuf.3.27.2.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\grpc.core.api\\2.63.0\\grpc.core.api.2.63.0.nupkg.sha512",
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PriorityStream
{
public class MessageDTO
{
public string? clientID { get; set; }
public string? apiKey { get; set; }
public string? msgId { get; set; }
public string? phoneNumber { get; set; }
public int localPriority { get; set; }
public string? text { get; set; }
public string? tag { get; set; }
}
}
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CSRedisCore" Version="3.8.803" />
<PackageReference Include="StackExchange.Redis" Version="2.8.0" />
</ItemGroup>
</Project>
using CSRedis;
using StackExchange.Redis;
using Newtonsoft.Json;
using PriorityStream;
var tokenSource = new CancellationTokenSource();
var token = tokenSource.Token;
string REDIS = "localhost:6379";
var muxer = ConnectionMultiplexer.Connect(REDIS);
var db = muxer.GetDatabase();
var server = muxer.GetServers();
const string streamName = "SYR_3";
const string groupName = "SYS_MSGS";
const string myConsumerID = "some-id";
const int count = 1554; // at most reads (count) messages from a stream
Console.WriteLine(server[0].DatabaseSize());
/*
var readManual = Task.Run(async () =>
{
List<RedisValue> msgsID = new List<RedisValue>();
while (!token.IsCancellationRequested)
{
var messages = await db.StreamReadGroupAsync(streamName, groupName, myConsumerID, ">", count, true); ;
//db.StreamDeleteAsync(streamName, msgsID);
foreach (var entry in messages)
{
// Get the message ID
var messageId = entry.Id;
msgsID.Add(messageId);
Console.WriteLine(messageId);
// Access the message data (serialized JSON)
string? serializedMessage = entry.Values[0].Value.ToString();
Console.WriteLine(serializedMessage);
if (serializedMessage == null) continue;
// Deserialize the JSON back to a Message object (if needed)
MessageDTO? message = JsonConvert.DeserializeObject<MessageDTO>(serializedMessage);
if (message == null) continue;
// Process the message data
Console.WriteLine($"Message ID: {messageId}, Text: {message.msgId}, tag: {message.tag}");
}
StreamInfo res32 = db.StreamInfo(streamName);
Console.WriteLine(res32.Length);
//Console.WriteLine($"length: {res32.Length}, radix-tree-keys: {res32.RadixTreeKeys}, radix-tree-nodes: {res32.RadixTreeNodes}, last-generated-id: {res32.LastGeneratedId}, first-entry: {$"{res32.FirstEntry.Id}: [{string.Join(", ", res32.FirstEntry.Values.Select(b => $"{b.Name}: {b.Value}"))}]"}, last-entry: {$"{res32.LastEntry.Id}: [{string.Join(", ", res32.LastEntry.Values.Select(b => $"{b.Name}: {b.Value}"))}]"}");
Console.WriteLine("*******************************************************\n\n\n\n\n\n");
try
{
var x = res32.FirstEntry.Id;
var y = res32.LastEntry.Id;
await db.StreamDeleteAsync(streamName, msgsID.ToArray());
}
catch (Exception ex)
{
}
finally
{
await Task.Delay(1000);
}
}
});
tokenSource.CancelAfter(TimeSpan.FromSeconds(300));
await Task.WhenAll(readManual);
/*StreamInfo res32 = db.StreamInfo(streamName);
Console.WriteLine($"length: {res32.Length}, radix-tree-keys: {res32.RadixTreeKeys}, radix-tree-nodes: {res32.RadixTreeNodes}, last-generated-id: {res32.LastGeneratedId}, first-entry: {$"{res32.FirstEntry.Id}: [{string.Join(", ", res32.FirstEntry.Values.Select(b => $"{b.Name}: {b.Value}"))}]"}, last-entry: {$"{res32.LastEntry.Id}: [{string.Join(", ", res32.LastEntry.Values.Select(b => $"{b.Name}: {b.Value}"))}]"}");
var x = res32.FirstEntry.Id;
var y = res32.LastEntry.Id;
RedisValue[] redisValues = new RedisValue[2];
redisValues[0] = x;
redisValues[1] = y;
await db.StreamDeleteAsync(streamName , redisValues);*/
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"PriorityStream/1.0.0": {
"dependencies": {
"CSRedisCore": "3.8.803",
"StackExchange.Redis": "2.8.0"
},
"runtime": {
"PriorityStream.dll": {}
}
},
"CSRedisCore/3.8.803": {
"dependencies": {
"Newtonsoft.Json": "13.0.1",
"System.ValueTuple": "4.5.0"
},
"runtime": {
"lib/netstandard2.0/CSRedisCore.dll": {
"assemblyVersion": "3.8.803.0",
"fileVersion": "3.8.803.0"
}
}
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"runtime": {
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.21.52210"
}
}
},
"Newtonsoft.Json/13.0.1": {
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {
"assemblyVersion": "13.0.0.0",
"fileVersion": "13.0.1.25517"
}
}
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"dependencies": {
"System.IO.Pipelines": "5.0.1"
},
"runtime": {
"lib/net5.0/Pipelines.Sockets.Unofficial.dll": {
"assemblyVersion": "1.0.0.0",
"fileVersion": "2.2.8.1080"
}
}
},
"StackExchange.Redis/2.8.0": {
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Pipelines.Sockets.Unofficial": "2.2.8"
},
"runtime": {
"lib/net6.0/StackExchange.Redis.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.8.0.27420"
}
}
},
"System.IO.Pipelines/5.0.1": {
"runtime": {
"lib/netcoreapp3.0/System.IO.Pipelines.dll": {
"assemblyVersion": "5.0.0.1",
"fileVersion": "5.0.120.57516"
}
}
},
"System.ValueTuple/4.5.0": {}
}
},
"libraries": {
"PriorityStream/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"CSRedisCore/3.8.803": {
"type": "package",
"serviceable": true,
"sha512": "sha512-+tCmvsJy0f69WMARgRT9nmTtIiwJDkTl9g5H32r7mJ003IxeZKFhLkvjO6MIm/6o79wM+s0lLW4fYlBvWP8C8Q==",
"path": "csrediscore/3.8.803",
"hashPath": "csrediscore.3.8.803.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-/HggWBbTwy8TgebGSX5DBZ24ndhzi93sHUBDvP1IxbZD7FDokYzdAr6+vbWGjw2XAfR2EJ1sfKUotpjHnFWPxA==",
"path": "microsoft.extensions.logging.abstractions/6.0.0",
"hashPath": "microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512"
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==",
"path": "newtonsoft.json/13.0.1",
"hashPath": "newtonsoft.json.13.0.1.nupkg.sha512"
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"type": "package",
"serviceable": true,
"sha512": "sha512-zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==",
"path": "pipelines.sockets.unofficial/2.2.8",
"hashPath": "pipelines.sockets.unofficial.2.2.8.nupkg.sha512"
},
"StackExchange.Redis/2.8.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-MjAJ0ejH8zLhtuN5+Z+/I07NmPGdVuGEvE2+4xONQoFwgl+7vbQ/A6jlUgH9UkZb4s9Mu9QDyBq1TkRqQcOgTQ==",
"path": "stackexchange.redis/2.8.0",
"hashPath": "stackexchange.redis.2.8.0.nupkg.sha512"
},
"System.IO.Pipelines/5.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-qEePWsaq9LoEEIqhbGe6D5J8c9IqQOUuTzzV6wn1POlfdLkJliZY3OlB0j0f17uMWlqZYjH7txj+2YbyrIA8Yg==",
"path": "system.io.pipelines/5.0.1",
"hashPath": "system.io.pipelines.5.0.1.nupkg.sha512"
},
"System.ValueTuple/4.5.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ==",
"path": "system.valuetuple/4.5.0",
"hashPath": "system.valuetuple.4.5.0.nupkg.sha512"
}
}
}
\ No newline at end of file
{
"runtimeOptions": {
"tfm": "net6.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
}
}
}
\ No newline at end of file
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = "")]
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("PriorityStream")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("PriorityStream")]
[assembly: System.Reflection.AssemblyTitleAttribute("PriorityStream")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = PriorityStream
build_property.ProjectDir = D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\PriorityStream.exe
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\PriorityStream.deps.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\PriorityStream.runtimeconfig.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\PriorityStream.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\ref\PriorityStream.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\PriorityStream.pdb
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\CSRedisCore.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\Microsoft.Extensions.Logging.Abstractions.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\Newtonsoft.Json.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\Pipelines.Sockets.Unofficial.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\StackExchange.Redis.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\bin\Debug\net6.0\System.IO.Pipelines.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.csproj.AssemblyReference.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.GeneratedMSBuildEditorConfig.editorconfig
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.AssemblyInfoInputs.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.AssemblyInfo.cs
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.csproj.CoreCompileInputs.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.csproj.CopyComplete
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\ref\PriorityStream.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.pdb
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\PriorityStream\obj\Debug\net6.0\PriorityStream.genruntimeconfig.cache
{
"format": 1,
"restore": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\PriorityStream.csproj": {}
},
"projects": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\PriorityStream.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\PriorityStream.csproj",
"projectName": "PriorityStream",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\PriorityStream.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\moham\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"dependencies": {
"CSRedisCore": {
"target": "Package",
"version": "[3.8.803, )"
},
"StackExchange.Redis": {
"target": "Package",
"version": "[2.8.0, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.100\\RuntimeIdentifierGraph.json"
}
}
}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\moham\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.0.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\moham\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
\ No newline at end of file
{
"version": 3,
"targets": {
"net6.0": {
"CSRedisCore/3.8.803": {
"type": "package",
"dependencies": {
"Newtonsoft.Json": "13.0.1",
"System.ValueTuple": "4.5.0"
},
"compile": {
"lib/netstandard2.0/CSRedisCore.dll": {}
},
"runtime": {
"lib/netstandard2.0/CSRedisCore.dll": {}
}
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"type": "package",
"compile": {
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {}
},
"runtime": {
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll": {}
},
"build": {
"buildTransitive/netcoreapp3.1/_._": {}
}
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"compile": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {}
},
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {}
}
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"type": "package",
"dependencies": {
"System.IO.Pipelines": "5.0.1"
},
"compile": {
"lib/net5.0/Pipelines.Sockets.Unofficial.dll": {}
},
"runtime": {
"lib/net5.0/Pipelines.Sockets.Unofficial.dll": {}
}
},
"StackExchange.Redis/2.8.0": {
"type": "package",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Pipelines.Sockets.Unofficial": "2.2.8"
},
"compile": {
"lib/net6.0/StackExchange.Redis.dll": {}
},
"runtime": {
"lib/net6.0/StackExchange.Redis.dll": {}
}
},
"System.IO.Pipelines/5.0.1": {
"type": "package",
"compile": {
"ref/netcoreapp2.0/System.IO.Pipelines.dll": {}
},
"runtime": {
"lib/netcoreapp3.0/System.IO.Pipelines.dll": {}
}
},
"System.ValueTuple/4.5.0": {
"type": "package",
"compile": {
"ref/netcoreapp2.0/_._": {}
},
"runtime": {
"lib/netcoreapp2.0/_._": {}
}
}
}
},
"libraries": {
"CSRedisCore/3.8.803": {
"sha512": "+tCmvsJy0f69WMARgRT9nmTtIiwJDkTl9g5H32r7mJ003IxeZKFhLkvjO6MIm/6o79wM+s0lLW4fYlBvWP8C8Q==",
"type": "package",
"path": "csrediscore/3.8.803",
"files": [
".nupkg.metadata",
".signature.p7s",
"csrediscore.3.8.803.nupkg.sha512",
"csrediscore.nuspec",
"lib/net40/CSRedisCore.dll",
"lib/net40/CSRedisCore.xml",
"lib/net45/CSRedisCore.dll",
"lib/net45/CSRedisCore.xml",
"lib/netstandard2.0/CSRedisCore.dll",
"lib/netstandard2.0/CSRedisCore.xml"
]
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"sha512": "/HggWBbTwy8TgebGSX5DBZ24ndhzi93sHUBDvP1IxbZD7FDokYzdAr6+vbWGjw2XAfR2EJ1sfKUotpjHnFWPxA==",
"type": "package",
"path": "microsoft.extensions.logging.abstractions/6.0.0",
"files": [
".nupkg.metadata",
".signature.p7s",
"Icon.png",
"LICENSE.TXT",
"THIRD-PARTY-NOTICES.TXT",
"analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll",
"analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll",
"analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
"analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
"build/Microsoft.Extensions.Logging.Abstractions.targets",
"buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets",
"buildTransitive/netcoreapp3.1/_._",
"lib/net461/Microsoft.Extensions.Logging.Abstractions.dll",
"lib/net461/Microsoft.Extensions.Logging.Abstractions.xml",
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll",
"lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml",
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll",
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml",
"microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512",
"microsoft.extensions.logging.abstractions.nuspec",
"useSharedDesignerContext.txt"
]
},
"Newtonsoft.Json/13.0.1": {
"sha512": "ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==",
"type": "package",
"path": "newtonsoft.json/13.0.1",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE.md",
"lib/net20/Newtonsoft.Json.dll",
"lib/net20/Newtonsoft.Json.xml",
"lib/net35/Newtonsoft.Json.dll",
"lib/net35/Newtonsoft.Json.xml",
"lib/net40/Newtonsoft.Json.dll",
"lib/net40/Newtonsoft.Json.xml",
"lib/net45/Newtonsoft.Json.dll",
"lib/net45/Newtonsoft.Json.xml",
"lib/netstandard1.0/Newtonsoft.Json.dll",
"lib/netstandard1.0/Newtonsoft.Json.xml",
"lib/netstandard1.3/Newtonsoft.Json.dll",
"lib/netstandard1.3/Newtonsoft.Json.xml",
"lib/netstandard2.0/Newtonsoft.Json.dll",
"lib/netstandard2.0/Newtonsoft.Json.xml",
"newtonsoft.json.13.0.1.nupkg.sha512",
"newtonsoft.json.nuspec",
"packageIcon.png"
]
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"sha512": "zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==",
"type": "package",
"path": "pipelines.sockets.unofficial/2.2.8",
"files": [
".nupkg.metadata",
".signature.p7s",
"lib/net461/Pipelines.Sockets.Unofficial.dll",
"lib/net461/Pipelines.Sockets.Unofficial.xml",
"lib/net472/Pipelines.Sockets.Unofficial.dll",
"lib/net472/Pipelines.Sockets.Unofficial.xml",
"lib/net5.0/Pipelines.Sockets.Unofficial.dll",
"lib/net5.0/Pipelines.Sockets.Unofficial.xml",
"lib/netcoreapp3.1/Pipelines.Sockets.Unofficial.dll",
"lib/netcoreapp3.1/Pipelines.Sockets.Unofficial.xml",
"lib/netstandard2.0/Pipelines.Sockets.Unofficial.dll",
"lib/netstandard2.0/Pipelines.Sockets.Unofficial.xml",
"lib/netstandard2.1/Pipelines.Sockets.Unofficial.dll",
"lib/netstandard2.1/Pipelines.Sockets.Unofficial.xml",
"pipelines.sockets.unofficial.2.2.8.nupkg.sha512",
"pipelines.sockets.unofficial.nuspec"
]
},
"StackExchange.Redis/2.8.0": {
"sha512": "MjAJ0ejH8zLhtuN5+Z+/I07NmPGdVuGEvE2+4xONQoFwgl+7vbQ/A6jlUgH9UkZb4s9Mu9QDyBq1TkRqQcOgTQ==",
"type": "package",
"path": "stackexchange.redis/2.8.0",
"files": [
".nupkg.metadata",
".signature.p7s",
"lib/net461/StackExchange.Redis.dll",
"lib/net461/StackExchange.Redis.xml",
"lib/net472/StackExchange.Redis.dll",
"lib/net472/StackExchange.Redis.xml",
"lib/net6.0/StackExchange.Redis.dll",
"lib/net6.0/StackExchange.Redis.xml",
"lib/netcoreapp3.1/StackExchange.Redis.dll",
"lib/netcoreapp3.1/StackExchange.Redis.xml",
"lib/netstandard2.0/StackExchange.Redis.dll",
"lib/netstandard2.0/StackExchange.Redis.xml",
"stackexchange.redis.2.8.0.nupkg.sha512",
"stackexchange.redis.nuspec"
]
},
"System.IO.Pipelines/5.0.1": {
"sha512": "qEePWsaq9LoEEIqhbGe6D5J8c9IqQOUuTzzV6wn1POlfdLkJliZY3OlB0j0f17uMWlqZYjH7txj+2YbyrIA8Yg==",
"type": "package",
"path": "system.io.pipelines/5.0.1",
"files": [
".nupkg.metadata",
".signature.p7s",
"Icon.png",
"LICENSE.TXT",
"THIRD-PARTY-NOTICES.TXT",
"lib/net461/System.IO.Pipelines.dll",
"lib/net461/System.IO.Pipelines.xml",
"lib/netcoreapp3.0/System.IO.Pipelines.dll",
"lib/netcoreapp3.0/System.IO.Pipelines.xml",
"lib/netstandard1.3/System.IO.Pipelines.dll",
"lib/netstandard1.3/System.IO.Pipelines.xml",
"lib/netstandard2.0/System.IO.Pipelines.dll",
"lib/netstandard2.0/System.IO.Pipelines.xml",
"ref/netcoreapp2.0/System.IO.Pipelines.dll",
"ref/netcoreapp2.0/System.IO.Pipelines.xml",
"system.io.pipelines.5.0.1.nupkg.sha512",
"system.io.pipelines.nuspec",
"useSharedDesignerContext.txt",
"version.txt"
]
},
"System.ValueTuple/4.5.0": {
"sha512": "okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ==",
"type": "package",
"path": "system.valuetuple/4.5.0",
"files": [
".nupkg.metadata",
".signature.p7s",
"LICENSE.TXT",
"THIRD-PARTY-NOTICES.TXT",
"lib/MonoAndroid10/_._",
"lib/MonoTouch10/_._",
"lib/net461/System.ValueTuple.dll",
"lib/net461/System.ValueTuple.xml",
"lib/net47/System.ValueTuple.dll",
"lib/net47/System.ValueTuple.xml",
"lib/netcoreapp2.0/_._",
"lib/netstandard1.0/System.ValueTuple.dll",
"lib/netstandard1.0/System.ValueTuple.xml",
"lib/netstandard2.0/_._",
"lib/portable-net40+sl4+win8+wp8/System.ValueTuple.dll",
"lib/portable-net40+sl4+win8+wp8/System.ValueTuple.xml",
"lib/uap10.0.16299/_._",
"lib/xamarinios10/_._",
"lib/xamarinmac20/_._",
"lib/xamarintvos10/_._",
"lib/xamarinwatchos10/_._",
"ref/MonoAndroid10/_._",
"ref/MonoTouch10/_._",
"ref/net461/System.ValueTuple.dll",
"ref/net47/System.ValueTuple.dll",
"ref/netcoreapp2.0/_._",
"ref/netstandard2.0/_._",
"ref/portable-net40+sl4+win8+wp8/System.ValueTuple.dll",
"ref/uap10.0.16299/_._",
"ref/xamarinios10/_._",
"ref/xamarinmac20/_._",
"ref/xamarintvos10/_._",
"ref/xamarinwatchos10/_._",
"system.valuetuple.4.5.0.nupkg.sha512",
"system.valuetuple.nuspec",
"useSharedDesignerContext.txt",
"version.txt"
]
}
},
"projectFileDependencyGroups": {
"net6.0": [
"CSRedisCore >= 3.8.803",
"StackExchange.Redis >= 2.8.0"
]
},
"packageFolders": {
"C:\\Users\\moham\\.nuget\\packages\\": {},
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {}
},
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\PriorityStream.csproj",
"projectName": "PriorityStream",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\PriorityStream.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\moham\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"dependencies": {
"CSRedisCore": {
"target": "Package",
"version": "[3.8.803, )"
},
"StackExchange.Redis": {
"target": "Package",
"version": "[2.8.0, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.100\\RuntimeIdentifierGraph.json"
}
}
}
}
\ No newline at end of file
{
"version": 2,
"dgSpecHash": "nrikCYbqkP1puXDCqasVxIua8veboAq6YvYa+Oh5JHOH9ikGwolxXTFsKThKdvqAvUkD8hOpjFPeBJIMgWkGQw==",
"success": true,
"projectFilePath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\PriorityStream\\PriorityStream.csproj",
"expectedPackageFiles": [
"C:\\Users\\moham\\.nuget\\packages\\csrediscore\\3.8.803\\csrediscore.3.8.803.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\6.0.0\\microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\newtonsoft.json\\13.0.1\\newtonsoft.json.13.0.1.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\pipelines.sockets.unofficial\\2.2.8\\pipelines.sockets.unofficial.2.2.8.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\stackexchange.redis\\2.8.0\\stackexchange.redis.2.8.0.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\system.io.pipelines\\5.0.1\\system.io.pipelines.5.0.1.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\system.valuetuple\\4.5.0\\system.valuetuple.4.5.0.nupkg.sha512"
],
"logs": []
}
\ No newline at end of file

using SchedulerNode.Services;
using Steeltoe.Discovery;
namespace Scheduler.LoadBalancer
{
public class AddressResolver
{
private static Random random = new Random();
private static int offset = random.Next(200000,int.MaxValue);
public static string getAddressOfInstance(string instanceName , ref IDiscoveryClient discoveryClient)
{
string address = "";
try
{
// instanceName = "Validator" or "QueuerNode" ... etc
var y = discoveryClient.GetInstances(instanceName); /// write names to config file
int element = offset % y.Count;
address = y[element].Uri.ToString();
offset = 1 + (offset % y.Count);
return address;
}
catch (Exception ex)
{
return QueueMessageService.ErrorConnection;
}
}
}
}
using QueuerNode.Services;
using SchedulerNode.RedisQueuer;
using SchedulerNode.Services;
using Steeltoe.Discovery.Client;
var builder = WebApplication.CreateBuilder(args);
......@@ -9,7 +10,7 @@ var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddGrpc();
builder.Services.AddDiscoveryClient();
MessageQueues.init();
var app = builder.Build();
// Configure the HTTP request pipeline.
......
syntax = "proto3";
option csharp_namespace = "QueuerNode";
option csharp_namespace = "SchedulerNode";
package Tranmitter;
......
......@@ -7,12 +7,11 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace QueuerNode.RedisQueuer
namespace SchedulerNode.RedisQueuer
{
public class MessageQueues
{
private static string MTNRedisURL = "localhost:6373";
private static string SYRRedisURL = "localhost:6374";
private static string RedisURL = "localhost:6379";
public static string RedisConnectionError = "Error Writing to Redis";
private static string Syriatel = "SYR";
......@@ -22,29 +21,35 @@ namespace QueuerNode.RedisQueuer
public static void init()
{
Console.WriteLine("Initing");
/* var redis = ConnectionMultiplexer.Connect(SYRRedisURL);
var redis = ConnectionMultiplexer.Connect(RedisURL);
var db = redis.GetDatabase();
for (int i=0; i < LEVELS; i++)
{
bool k = db.StreamCreateConsumerGroup(i.ToString(),
try
{
bool k1 = db.StreamCreateConsumerGroup(Syriatel+"_"+i.ToString(),
"SYS_MSGS",
"$",
true);
if(k)
bool k2 = db.StreamCreateConsumerGroup(MTN+"_"+i.ToString(),
"SYS_MSGS",
"$",
true);
if (k1 && k2)
{
Console.WriteLine("OK");
}
}
redis = ConnectionMultiplexer.Connect(MTNRedisURL);
db = redis.GetDatabase();
for (int i = 0; i < LEVELS; i++)
catch (Exception ex)
{
bool k = db.StreamCreateConsumerGroup(i.ToString(),
"SYS_MSGS",
"$",
true);
}*/
continue;
}
}
}
public static string addMessage(Message message , IDiscoveryClient discoveryClient)
{
......@@ -53,13 +58,7 @@ namespace QueuerNode.RedisQueuer
if (message.Tag.Contains(Syriatel, StringComparison.OrdinalIgnoreCase))
{
// get url using discovery client
var resid = addMessageRedisAsync(message, SYRRedisURL);
temp = resid.Result;
}
else if (message.Tag.Contains(MTN, StringComparison.OrdinalIgnoreCase))
{
var resid = addMessageRedisAsync(message, MTNRedisURL);
var resid = addMessageRedisAsync(message, RedisURL);
temp = resid.Result;
}
......@@ -78,7 +77,10 @@ namespace QueuerNode.RedisQueuer
{
var redis = ConnectionMultiplexer.Connect(URL);
string streamName = message.LocalPriority.ToString();
string tag = getTag(ref message);
string streamName = tag + "_" + message.LocalPriority.ToString();
Console.WriteLine("stream name = " + streamName);
var db = redis.GetDatabase();
......@@ -87,8 +89,6 @@ namespace QueuerNode.RedisQueuer
Console.WriteLine("Sending to stream : " + streamName);
//var messageId = await db.StreamAddAsync(streamName, new NameValueEntry[] { }, serializedMessage);
var messageId = await db.StreamAddAsync
(streamName,
new NameValueEntry[]
......@@ -108,5 +108,21 @@ namespace QueuerNode.RedisQueuer
return await Task.FromResult(RedisConnectionError);
}
}
private static string getTag (ref Message message)
{
if(message.Tag.Contains(Syriatel, StringComparison.OrdinalIgnoreCase))
{
return Syriatel;
}
else
{
return MTN;
}
}
}
}
......@@ -2,9 +2,9 @@
using Grpc.Core;
using Steeltoe.Common.Discovery;
using Steeltoe.Discovery;
using QueuerNode.RedisQueuer;
using SchedulerNode.RedisQueuer;
namespace QueuerNode.Services
namespace SchedulerNode.Services
{
public class QueueMessageService : Queue.QueueBase
{
......@@ -12,11 +12,12 @@ namespace QueuerNode.Services
private readonly IDiscoveryClient _client;
private readonly static string ErrorQueuing = "Error";
public readonly static string ErrorConnection = "Error Connecting to Redis";
public QueueMessageService(ILogger<QueueMessageService> logger , IDiscoveryClient client)
{
_logger = logger;
_client = client;
MessageQueues.init();
//MessageQueues.init();
}
public override Task<Acknowledgement> QueueMessage(Message message, ServerCallContext context)
......
{
"spring": {
"application": {
"name": "QueuerNode"
"name": "SchedulerNode"
}
},
"Logging": {
......
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"Scheduler/1.0.0": {
"dependencies": {
"CSRedisCore": "3.8.803",
"Google.Protobuf": "3.27.1",
"Grpc.AspNetCore": "2.40.0",
"Grpc.Net.Client": "2.63.0",
"Grpc.Tools": "2.64.0",
"StackExchange.Redis": "2.8.0",
"Steeltoe.Connector.ConnectorCore": "3.2.6",
"Steeltoe.Discovery.Eureka": "3.2.6",
"Swashbuckle.AspNetCore": "6.4.0"
},
"runtime": {
"Scheduler.dll": {}
}
},
"CSRedisCore/3.8.803": {
"dependencies": {
"Newtonsoft.Json": "13.0.1",
"System.ValueTuple": "4.5.0"
},
"runtime": {
"lib/netstandard2.0/CSRedisCore.dll": {
"assemblyVersion": "3.8.803.0",
"fileVersion": "3.8.803.0"
}
}
},
"Google.Protobuf/3.27.1": {
"runtime": {
"lib/net5.0/Google.Protobuf.dll": {
"assemblyVersion": "3.27.1.0",
"fileVersion": "3.27.1.0"
}
}
},
"Grpc.AspNetCore/2.40.0": {
"dependencies": {
"Google.Protobuf": "3.27.1",
"Grpc.AspNetCore.Server.ClientFactory": "2.40.0",
"Grpc.Tools": "2.64.0"
}
},
"Grpc.AspNetCore.Server/2.40.0": {
"dependencies": {
"Grpc.Net.Common": "2.63.0"
},
"runtime": {
"lib/net6.0/Grpc.AspNetCore.Server.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.40.0.0"
}
}
},
"Grpc.AspNetCore.Server.ClientFactory/2.40.0": {
"dependencies": {
"Grpc.AspNetCore.Server": "2.40.0",
"Grpc.Net.ClientFactory": "2.40.0"
},
"runtime": {
"lib/net6.0/Grpc.AspNetCore.Server.ClientFactory.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.40.0.0"
}
}
},
"Grpc.Core.Api/2.63.0": {
"runtime": {
"lib/netstandard2.1/Grpc.Core.Api.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.63.0.0"
}
}
},
"Grpc.Net.Client/2.63.0": {
"dependencies": {
"Grpc.Net.Common": "2.63.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.0"
},
"runtime": {
"lib/net6.0/Grpc.Net.Client.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.63.0.0"
}
}
},
"Grpc.Net.ClientFactory/2.40.0": {
"dependencies": {
"Grpc.Net.Client": "2.63.0",
"Microsoft.Extensions.Http": "3.1.0"
},
"runtime": {
"lib/net6.0/Grpc.Net.ClientFactory.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.40.0.0"
}
}
},
"Grpc.Net.Common/2.63.0": {
"dependencies": {
"Grpc.Core.Api": "2.63.0"
},
"runtime": {
"lib/net6.0/Grpc.Net.Common.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.63.0.0"
}
}
},
"Grpc.Tools/2.64.0": {},
"Microsoft.Extensions.ApiDescription.Server/6.0.5": {},
"Microsoft.Extensions.Caching.Abstractions/3.1.0": {
"dependencies": {
"Microsoft.Extensions.Primitives": "6.0.0"
}
},
"Microsoft.Extensions.Configuration/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Microsoft.Extensions.Primitives": "6.0.0"
}
},
"Microsoft.Extensions.Configuration.Abstractions/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Primitives": "6.0.0"
}
},
"Microsoft.Extensions.Configuration.Binder/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0"
}
},
"Microsoft.Extensions.Configuration.CommandLine/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration": "6.0.0",
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0"
}
},
"Microsoft.Extensions.Configuration.EnvironmentVariables/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration": "6.0.0",
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0"
}
},
"Microsoft.Extensions.Configuration.FileExtensions/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration": "6.0.0",
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Microsoft.Extensions.FileProviders.Abstractions": "6.0.0",
"Microsoft.Extensions.FileProviders.Physical": "6.0.0",
"Microsoft.Extensions.Primitives": "6.0.0"
}
},
"Microsoft.Extensions.Configuration.Json/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration": "6.0.0",
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Microsoft.Extensions.Configuration.FileExtensions": "6.0.0",
"Microsoft.Extensions.FileProviders.Abstractions": "6.0.0",
"System.Text.Json": "6.0.0"
}
},
"Microsoft.Extensions.Configuration.UserSecrets/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Microsoft.Extensions.Configuration.Json": "6.0.0",
"Microsoft.Extensions.FileProviders.Abstractions": "6.0.0",
"Microsoft.Extensions.FileProviders.Physical": "6.0.0"
}
},
"Microsoft.Extensions.DependencyInjection/6.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"System.Runtime.CompilerServices.Unsafe": "6.0.0"
}
},
"Microsoft.Extensions.DependencyInjection.Abstractions/6.0.0": {},
"Microsoft.Extensions.Diagnostics.HealthChecks/2.2.5": {
"dependencies": {
"Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions": "2.2.0",
"Microsoft.Extensions.Hosting.Abstractions": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0"
}
},
"Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/2.2.0": {},
"Microsoft.Extensions.FileProviders.Abstractions/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Primitives": "6.0.0"
}
},
"Microsoft.Extensions.FileProviders.Physical/6.0.0": {
"dependencies": {
"Microsoft.Extensions.FileProviders.Abstractions": "6.0.0",
"Microsoft.Extensions.FileSystemGlobbing": "6.0.0",
"Microsoft.Extensions.Primitives": "6.0.0"
}
},
"Microsoft.Extensions.FileSystemGlobbing/6.0.0": {},
"Microsoft.Extensions.Hosting/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration": "6.0.0",
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Microsoft.Extensions.Configuration.Binder": "6.0.0",
"Microsoft.Extensions.Configuration.CommandLine": "6.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "6.0.0",
"Microsoft.Extensions.Configuration.FileExtensions": "6.0.0",
"Microsoft.Extensions.Configuration.Json": "6.0.0",
"Microsoft.Extensions.Configuration.UserSecrets": "6.0.0",
"Microsoft.Extensions.DependencyInjection": "6.0.0",
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.FileProviders.Abstractions": "6.0.0",
"Microsoft.Extensions.FileProviders.Physical": "6.0.0",
"Microsoft.Extensions.Hosting.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging": "6.0.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging.Configuration": "6.0.0",
"Microsoft.Extensions.Logging.Console": "6.0.0",
"Microsoft.Extensions.Logging.Debug": "6.0.0",
"Microsoft.Extensions.Logging.EventLog": "6.0.0",
"Microsoft.Extensions.Logging.EventSource": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0"
}
},
"Microsoft.Extensions.Hosting.Abstractions/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.FileProviders.Abstractions": "6.0.0"
}
},
"Microsoft.Extensions.Http/3.1.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0"
}
},
"Microsoft.Extensions.Logging/6.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "6.0.0",
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0",
"System.Diagnostics.DiagnosticSource": "6.0.0"
}
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {},
"Microsoft.Extensions.Logging.Configuration/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration": "6.0.0",
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Microsoft.Extensions.Configuration.Binder": "6.0.0",
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging": "6.0.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "6.0.0"
}
},
"Microsoft.Extensions.Logging.Console/6.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging": "6.0.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging.Configuration": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0",
"System.Text.Json": "6.0.0"
}
},
"Microsoft.Extensions.Logging.Debug/6.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging": "6.0.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.0"
}
},
"Microsoft.Extensions.Logging.EventLog/6.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging": "6.0.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0",
"System.Diagnostics.EventLog": "6.0.0"
}
},
"Microsoft.Extensions.Logging.EventSource/6.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Logging": "6.0.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0",
"Microsoft.Extensions.Primitives": "6.0.0",
"System.Runtime.CompilerServices.Unsafe": "6.0.0",
"System.Text.Json": "6.0.0"
}
},
"Microsoft.Extensions.Options/6.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Primitives": "6.0.0"
}
},
"Microsoft.Extensions.Options.ConfigurationExtensions/6.0.0": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Microsoft.Extensions.Configuration.Binder": "6.0.0",
"Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
"Microsoft.Extensions.Options": "6.0.0",
"Microsoft.Extensions.Primitives": "6.0.0"
}
},
"Microsoft.Extensions.Primitives/6.0.0": {
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0"
}
},
"Microsoft.OpenApi/1.2.3": {
"runtime": {
"lib/netstandard2.0/Microsoft.OpenApi.dll": {
"assemblyVersion": "1.2.3.0",
"fileVersion": "1.2.3.0"
}
}
},
"Newtonsoft.Json/13.0.1": {
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {
"assemblyVersion": "13.0.0.0",
"fileVersion": "13.0.1.25517"
}
}
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"dependencies": {
"System.IO.Pipelines": "5.0.1"
},
"runtime": {
"lib/net5.0/Pipelines.Sockets.Unofficial.dll": {
"assemblyVersion": "1.0.0.0",
"fileVersion": "2.2.8.1080"
}
}
},
"StackExchange.Redis/2.8.0": {
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "6.0.0",
"Pipelines.Sockets.Unofficial": "2.2.8"
},
"runtime": {
"lib/net6.0/StackExchange.Redis.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.8.0.27420"
}
}
},
"Steeltoe.Common/3.2.6": {
"dependencies": {
"Microsoft.Extensions.Caching.Abstractions": "3.1.0",
"Microsoft.Extensions.Configuration.Binder": "6.0.0",
"Microsoft.Extensions.Configuration.CommandLine": "6.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "6.0.0",
"Microsoft.Extensions.DependencyInjection": "6.0.0",
"Microsoft.Extensions.Logging.Console": "6.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "6.0.0",
"Steeltoe.Common.Abstractions": "3.2.6",
"System.Diagnostics.DiagnosticSource": "6.0.0",
"System.Reflection.MetadataLoadContext": "4.6.0",
"System.Text.Json": "6.0.0"
},
"runtime": {
"lib/netstandard2.0/Steeltoe.Common.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Common.Abstractions/3.2.6": {
"dependencies": {
"Microsoft.Extensions.Configuration.Binder": "6.0.0"
},
"runtime": {
"lib/netstandard2.0/Steeltoe.Common.Abstractions.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Common.Http/3.2.6": {
"dependencies": {
"Microsoft.Extensions.Http": "3.1.0",
"Steeltoe.Common": "3.2.6",
"Steeltoe.Discovery.Abstractions": "3.2.6",
"System.Text.Json": "6.0.0"
},
"runtime": {
"lib/netstandard2.0/Steeltoe.Common.Http.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Connector.Abstractions/3.2.6": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Steeltoe.Common.Abstractions": "3.2.6",
"Steeltoe.Extensions.Configuration.Abstractions": "3.2.6"
},
"runtime": {
"lib/net6.0/Steeltoe.Connector.Abstractions.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Connector.ConnectorBase/3.2.6": {
"dependencies": {
"Steeltoe.Common": "3.2.6",
"Steeltoe.Connector.Abstractions": "3.2.6"
},
"runtime": {
"lib/netstandard2.0/Steeltoe.Connector.ConnectorBase.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Connector.ConnectorCore/3.2.6": {
"dependencies": {
"Microsoft.Extensions.Diagnostics.HealthChecks": "2.2.5",
"Steeltoe.Connector.ConnectorBase": "3.2.6"
},
"runtime": {
"lib/netstandard2.0/Steeltoe.Connector.ConnectorCore.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Discovery.Abstractions/3.2.6": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
"Steeltoe.Common.Abstractions": "3.2.6"
},
"runtime": {
"lib/netstandard2.0/Steeltoe.Discovery.Abstractions.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Discovery.ClientBase/3.2.6": {
"dependencies": {
"Microsoft.Extensions.Hosting": "6.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "6.0.0",
"Steeltoe.Common.Http": "3.2.6",
"Steeltoe.Connector.ConnectorBase": "3.2.6",
"Steeltoe.Discovery.Abstractions": "3.2.6"
},
"runtime": {
"lib/net6.0/Steeltoe.Discovery.ClientBase.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Discovery.Eureka/3.2.6": {
"dependencies": {
"Steeltoe.Common.Http": "3.2.6",
"Steeltoe.Connector.Abstractions": "3.2.6",
"Steeltoe.Discovery.ClientBase": "3.2.6",
"System.Net.Http.Json": "3.2.1"
},
"runtime": {
"lib/netstandard2.0/Steeltoe.Discovery.Eureka.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Steeltoe.Extensions.Configuration.Abstractions/3.2.6": {
"dependencies": {
"Microsoft.Extensions.Configuration": "6.0.0",
"Microsoft.Extensions.Configuration.Binder": "6.0.0",
"Microsoft.Extensions.DependencyInjection": "6.0.0",
"Steeltoe.Common.Abstractions": "3.2.6"
},
"runtime": {
"lib/net6.0/Steeltoe.Extensions.Configuration.Abstractions.dll": {
"assemblyVersion": "3.2.6.0",
"fileVersion": "3.2.6.0"
}
}
},
"Swashbuckle.AspNetCore/6.4.0": {
"dependencies": {
"Microsoft.Extensions.ApiDescription.Server": "6.0.5",
"Swashbuckle.AspNetCore.Swagger": "6.4.0",
"Swashbuckle.AspNetCore.SwaggerGen": "6.4.0",
"Swashbuckle.AspNetCore.SwaggerUI": "6.4.0"
}
},
"Swashbuckle.AspNetCore.Swagger/6.4.0": {
"dependencies": {
"Microsoft.OpenApi": "1.2.3"
},
"runtime": {
"lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll": {
"assemblyVersion": "6.4.0.0",
"fileVersion": "6.4.0.0"
}
}
},
"Swashbuckle.AspNetCore.SwaggerGen/6.4.0": {
"dependencies": {
"Swashbuckle.AspNetCore.Swagger": "6.4.0"
},
"runtime": {
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
"assemblyVersion": "6.4.0.0",
"fileVersion": "6.4.0.0"
}
}
},
"Swashbuckle.AspNetCore.SwaggerUI/6.4.0": {
"runtime": {
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
"assemblyVersion": "6.4.0.0",
"fileVersion": "6.4.0.0"
}
}
},
"System.Diagnostics.DiagnosticSource/6.0.0": {
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0"
}
},
"System.Diagnostics.EventLog/6.0.0": {},
"System.IO.Pipelines/5.0.1": {},
"System.Net.Http.Json/3.2.1": {
"dependencies": {
"System.Text.Json": "6.0.0"
}
},
"System.Reflection.MetadataLoadContext/4.6.0": {
"runtime": {
"lib/netcoreapp3.0/System.Reflection.MetadataLoadContext.dll": {
"assemblyVersion": "4.0.0.0",
"fileVersion": "4.700.19.46214"
}
}
},
"System.Runtime.CompilerServices.Unsafe/6.0.0": {},
"System.Text.Encodings.Web/6.0.0": {
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0"
}
},
"System.Text.Json/6.0.0": {
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0",
"System.Text.Encodings.Web": "6.0.0"
}
},
"System.ValueTuple/4.5.0": {}
}
},
"libraries": {
"Scheduler/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"CSRedisCore/3.8.803": {
"type": "package",
"serviceable": true,
"sha512": "sha512-+tCmvsJy0f69WMARgRT9nmTtIiwJDkTl9g5H32r7mJ003IxeZKFhLkvjO6MIm/6o79wM+s0lLW4fYlBvWP8C8Q==",
"path": "csrediscore/3.8.803",
"hashPath": "csrediscore.3.8.803.nupkg.sha512"
},
"Google.Protobuf/3.27.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-7IVz9TzhYCZ8qY0rPhXUnyJSXYdshUqmmxmTI763XmDDSJJFnyfKH43FFcMJu/CZgBcE98xlFztrKwhzcRkiPg==",
"path": "google.protobuf/3.27.1",
"hashPath": "google.protobuf.3.27.1.nupkg.sha512"
},
"Grpc.AspNetCore/2.40.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-UdyFzZZbzugtoGfjGAY9bVq/1l7m3SvGGXd5VCqw7xr4QA4BVEozr1Vr6FFxUOPVvg91g5dwssbsM/Xl1MpecQ==",
"path": "grpc.aspnetcore/2.40.0",
"hashPath": "grpc.aspnetcore.2.40.0.nupkg.sha512"
},
"Grpc.AspNetCore.Server/2.40.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-cBSpT42syKkVnTBEehk+Sc2dX5sDO2lP+5o4ylFnup+JHPntbewTx5QHHizWPRTKTwWDe4EXR4rR1ilgf6eTnQ==",
"path": "grpc.aspnetcore.server/2.40.0",
"hashPath": "grpc.aspnetcore.server.2.40.0.nupkg.sha512"
},
"Grpc.AspNetCore.Server.ClientFactory/2.40.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-U+Cp5Mt7/xjFRIJhChjLXn0oUDisaBg3XzFkAUZE32dAa/dQN2gs9Qd9Gl51deStbci3J+W7CcfHgZ0y2Fwblw==",
"path": "grpc.aspnetcore.server.clientfactory/2.40.0",
"hashPath": "grpc.aspnetcore.server.clientfactory.2.40.0.nupkg.sha512"
},
"Grpc.Core.Api/2.63.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-t3+/MF8AxIqKq5UmPB9EWAnM9C/+lXOB8TRFfeVMDntf6dekfJmjpKDebaT4t2bbuwVwwvthxxox9BuGr59kYA==",
"path": "grpc.core.api/2.63.0",
"hashPath": "grpc.core.api.2.63.0.nupkg.sha512"
},
"Grpc.Net.Client/2.63.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-847zG24daOP1242OpbnjhbKtplH/EfV/76QReQA3cbS5SL78uIXsWMe9IN9JlIb4+kT3eE4fjMCXTn8BAQ91Ng==",
"path": "grpc.net.client/2.63.0",
"hashPath": "grpc.net.client.2.63.0.nupkg.sha512"
},
"Grpc.Net.ClientFactory/2.40.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-B2ZzZpkaSH7AvTeu3jF3PAbumWEtHvB9qHX/ULU4AuN4lZwXiQF+G6jatZerXpVqTb4mzQ2wFhKkThYyVMN4uw==",
"path": "grpc.net.clientfactory/2.40.0",
"hashPath": "grpc.net.clientfactory.2.40.0.nupkg.sha512"
},
"Grpc.Net.Common/2.63.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-RLt6p31ZMsXRcHNeu1dQuIFLYZvnwP6LUzoDPlV3KoR4w9btmwrXIvz9Jbp1SOmxW7nXw9zShAeIt5LsqFAx5w==",
"path": "grpc.net.common/2.63.0",
"hashPath": "grpc.net.common.2.63.0.nupkg.sha512"
},
"Grpc.Tools/2.64.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-W5RrhDFHUhioASktxfuDs5fTjWUxwegljZAig9zFL8nWNskeyQA6OXN2choWKYxGrljer25VqCJCMbWz7XHvqg==",
"path": "grpc.tools/2.64.0",
"hashPath": "grpc.tools.2.64.0.nupkg.sha512"
},
"Microsoft.Extensions.ApiDescription.Server/6.0.5": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==",
"path": "microsoft.extensions.apidescription.server/6.0.5",
"hashPath": "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512"
},
"Microsoft.Extensions.Caching.Abstractions/3.1.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-+R7REEI+Pks1/ITjDdvey+QJzIG3tIYOtrv4RT40UVVe2Y1Sa8pIjJy3MzPZbyXVgOFN3JHFz1UZH8kz04aa5A==",
"path": "microsoft.extensions.caching.abstractions/3.1.0",
"hashPath": "microsoft.extensions.caching.abstractions.3.1.0.nupkg.sha512"
},
"Microsoft.Extensions.Configuration/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-tq2wXyh3fL17EMF2bXgRhU7JrbO3on93MRKYxzz4JzzvuGSA1l0W3GI9/tl8EO89TH+KWEymP7bcFway6z9fXg==",
"path": "microsoft.extensions.configuration/6.0.0",
"hashPath": "microsoft.extensions.configuration.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.Abstractions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-qWzV9o+ZRWq+pGm+1dF+R7qTgTYoXvbyowRoBxQJGfqTpqDun2eteerjRQhq5PQ/14S+lqto3Ft4gYaRyl4rdQ==",
"path": "microsoft.extensions.configuration.abstractions/6.0.0",
"hashPath": "microsoft.extensions.configuration.abstractions.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.Binder/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-b3ErKzND8LIC7o08QAVlKfaEIYEvLJbtmVbFZVBRXeu9YkKfSSzLZfR1SUfQPBIy9mKLhEtJgGYImkcMNaKE0A==",
"path": "microsoft.extensions.configuration.binder/6.0.0",
"hashPath": "microsoft.extensions.configuration.binder.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.CommandLine/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-3nL1qCkZ1Oxx14ZTzgo4MmlO7tso7F+TtMZAY2jUAtTLyAcDp+EDjk3RqafoKiNaePyPvvlleEcBxh3b2Hzl1g==",
"path": "microsoft.extensions.configuration.commandline/6.0.0",
"hashPath": "microsoft.extensions.configuration.commandline.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.EnvironmentVariables/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-DjYkzqvhiHCq38LW71PcIxXk6nhtV6VySP9yDcSO0goPl7YCU1VG1f2Wbgy58lkA10pWkjHCblZPUyboCB93ZA==",
"path": "microsoft.extensions.configuration.environmentvariables/6.0.0",
"hashPath": "microsoft.extensions.configuration.environmentvariables.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.FileExtensions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-V4Dth2cYMZpw3HhGw9XUDIijpI6gN+22LDt0AhufIgOppCUfpWX4483OmN+dFXRJkJLc8Tv0Q8QK+1ingT2+KQ==",
"path": "microsoft.extensions.configuration.fileextensions/6.0.0",
"hashPath": "microsoft.extensions.configuration.fileextensions.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.Json/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-GJGery6QytCzS/BxJ96klgG9in3uH26KcUBbiVG/coNDXCRq6LGVVlUT4vXq34KPuM+R2av+LeYdX9h4IZOCUg==",
"path": "microsoft.extensions.configuration.json/6.0.0",
"hashPath": "microsoft.extensions.configuration.json.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.UserSecrets/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-lB0Hb2V4+RUHy+LjEcqEr4EcV4RWc9EnjAV2GdtWQEdljQX+R4hGREftI7sInU9okP93pDrJiaj6QUJ6ZsslOA==",
"path": "microsoft.extensions.configuration.usersecrets/6.0.0",
"hashPath": "microsoft.extensions.configuration.usersecrets.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.DependencyInjection/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-k6PWQMuoBDGGHOQTtyois2u4AwyVcIwL2LaSLlTZQm2CYcJ1pxbt6jfAnpWmzENA/wfrYRI/X9DTLoUkE4AsLw==",
"path": "microsoft.extensions.dependencyinjection/6.0.0",
"hashPath": "microsoft.extensions.dependencyinjection.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.DependencyInjection.Abstractions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-xlzi2IYREJH3/m6+lUrQlujzX8wDitm4QGnUu6kUXTQAWPuZY8i+ticFJbzfqaetLA6KR/rO6Ew/HuYD+bxifg==",
"path": "microsoft.extensions.dependencyinjection.abstractions/6.0.0",
"hashPath": "microsoft.extensions.dependencyinjection.abstractions.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Diagnostics.HealthChecks/2.2.5": {
"type": "package",
"serviceable": true,
"sha512": "sha512-/Il+nqw4dgR0b01qJnE9e99bnF8JpZQye1dTlTn9OSKFkdPXJsNZj9uzaJJIhd+Bc17saIqRW8gUUSLqlayqKg==",
"path": "microsoft.extensions.diagnostics.healthchecks/2.2.5",
"hashPath": "microsoft.extensions.diagnostics.healthchecks.2.2.5.nupkg.sha512"
},
"Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/2.2.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-cO6f4csTakJXuLWnU/p5mfQInyNq5sSi4mS2YtQZcGoHynU6P/TD6gjqt1TRnVfwuZLw3tmmw2ipFrHbBUqWew==",
"path": "microsoft.extensions.diagnostics.healthchecks.abstractions/2.2.0",
"hashPath": "microsoft.extensions.diagnostics.healthchecks.abstractions.2.2.0.nupkg.sha512"
},
"Microsoft.Extensions.FileProviders.Abstractions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-0pd4/fho0gC12rQswaGQxbU34jOS1TPS8lZPpkFCH68ppQjHNHYle9iRuHeev1LhrJ94YPvzcRd8UmIuFk23Qw==",
"path": "microsoft.extensions.fileproviders.abstractions/6.0.0",
"hashPath": "microsoft.extensions.fileproviders.abstractions.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.FileProviders.Physical/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-QvkL7l0nM8udt3gfyu0Vw8bbCXblxaKOl7c2oBfgGy4LCURRaL9XWZX1FWJrQc43oMokVneVxH38iz+bY1sbhg==",
"path": "microsoft.extensions.fileproviders.physical/6.0.0",
"hashPath": "microsoft.extensions.fileproviders.physical.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.FileSystemGlobbing/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ip8jnL1aPiaPeKINCqaTEbvBFDmVx9dXQEBZ2HOBRXPD1eabGNqP/bKlsIcp7U2lGxiXd5xIhoFcmY8nM4Hdiw==",
"path": "microsoft.extensions.filesystemglobbing/6.0.0",
"hashPath": "microsoft.extensions.filesystemglobbing.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Hosting/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-M8VzD0ni5VarIRT8njnwK4K2WSAo0kZH4Zc3mKcSGkP4CjDZ91T9ZEFmmwhmo4z7x8AFq+tW0WFi9wX+K2cxkQ==",
"path": "microsoft.extensions.hosting/6.0.0",
"hashPath": "microsoft.extensions.hosting.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Hosting.Abstractions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-GcT5l2CYXL6Sa27KCSh0TixsRfADUgth+ojQSD5EkzisZxmGFh7CwzkcYuGwvmXLjr27uWRNrJ2vuuEjMhU05Q==",
"path": "microsoft.extensions.hosting.abstractions/6.0.0",
"hashPath": "microsoft.extensions.hosting.abstractions.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Http/3.1.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-DLigdcV0nYaT6/ly0rnfP80BnXq8NNd/h8/SkfY39uio7Bd9LauVntp6RcRh1Kj23N+uf80GgL7Win6P3BCtoQ==",
"path": "microsoft.extensions.http/3.1.0",
"hashPath": "microsoft.extensions.http.3.1.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-eIbyj40QDg1NDz0HBW0S5f3wrLVnKWnDJ/JtZ+yJDFnDj90VoPuoPmFkeaXrtu+0cKm5GRAwoDf+dBWXK0TUdg==",
"path": "microsoft.extensions.logging/6.0.0",
"hashPath": "microsoft.extensions.logging.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Abstractions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-/HggWBbTwy8TgebGSX5DBZ24ndhzi93sHUBDvP1IxbZD7FDokYzdAr6+vbWGjw2XAfR2EJ1sfKUotpjHnFWPxA==",
"path": "microsoft.extensions.logging.abstractions/6.0.0",
"hashPath": "microsoft.extensions.logging.abstractions.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Configuration/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ZDskjagmBAbv+K8rYW9VhjPplhbOE63xUD0DiuydZJwt15dRyoqicYklLd86zzeintUc7AptDkHn+YhhYkYo8A==",
"path": "microsoft.extensions.logging.configuration/6.0.0",
"hashPath": "microsoft.extensions.logging.configuration.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Console/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-gsqKzOEdsvq28QiXFxagmn1oRB9GeI5GgYCkoybZtQA0IUb7QPwf1WmN3AwJeNIsadTvIFQCiVK0OVIgKfOBGg==",
"path": "microsoft.extensions.logging.console/6.0.0",
"hashPath": "microsoft.extensions.logging.console.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Debug/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-M9g/JixseSZATJE9tcMn9uzoD4+DbSglivFqVx8YkRJ7VVPmnvCEbOZ0AAaxsL1EKyI4cz07DXOOJExxNsUOHw==",
"path": "microsoft.extensions.logging.debug/6.0.0",
"hashPath": "microsoft.extensions.logging.debug.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging.EventLog/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-rlo0RxlMd0WtLG3CHI0qOTp6fFn7MvQjlrCjucA31RqmiMFCZkF8CHNbe8O7tbBIyyoLGWB1he9CbaA5iyHthg==",
"path": "microsoft.extensions.logging.eventlog/6.0.0",
"hashPath": "microsoft.extensions.logging.eventlog.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging.EventSource/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-BeDyyqt7nkm/nr+Gdk+L8n1tUT/u33VkbXAOesgYSNsxDM9hJ1NOBGoZfj9rCbeD2+9myElI6JOVVFmnzgeWQA==",
"path": "microsoft.extensions.logging.eventsource/6.0.0",
"hashPath": "microsoft.extensions.logging.eventsource.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Options/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-dzXN0+V1AyjOe2xcJ86Qbo233KHuLEY0njf/P2Kw8SfJU+d45HNS2ctJdnEnrWbM9Ye2eFgaC5Mj9otRMU6IsQ==",
"path": "microsoft.extensions.options/6.0.0",
"hashPath": "microsoft.extensions.options.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Options.ConfigurationExtensions/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-bXWINbTn0vC0FYc9GaQTISbxhQLAMrvtbuvD9N6JelEaIS/Pr62wUCinrq5bf1WRBGczt1v4wDhxFtVFNcMdUQ==",
"path": "microsoft.extensions.options.configurationextensions/6.0.0",
"hashPath": "microsoft.extensions.options.configurationextensions.6.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Primitives/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-9+PnzmQFfEFNR9J2aDTfJGGupShHjOuGw4VUv+JB044biSHrnmCIMD+mJHmb2H7YryrfBEXDurxQ47gJZdCKNQ==",
"path": "microsoft.extensions.primitives/6.0.0",
"hashPath": "microsoft.extensions.primitives.6.0.0.nupkg.sha512"
},
"Microsoft.OpenApi/1.2.3": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==",
"path": "microsoft.openapi/1.2.3",
"hashPath": "microsoft.openapi.1.2.3.nupkg.sha512"
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==",
"path": "newtonsoft.json/13.0.1",
"hashPath": "newtonsoft.json.13.0.1.nupkg.sha512"
},
"Pipelines.Sockets.Unofficial/2.2.8": {
"type": "package",
"serviceable": true,
"sha512": "sha512-zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==",
"path": "pipelines.sockets.unofficial/2.2.8",
"hashPath": "pipelines.sockets.unofficial.2.2.8.nupkg.sha512"
},
"StackExchange.Redis/2.8.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-MjAJ0ejH8zLhtuN5+Z+/I07NmPGdVuGEvE2+4xONQoFwgl+7vbQ/A6jlUgH9UkZb4s9Mu9QDyBq1TkRqQcOgTQ==",
"path": "stackexchange.redis/2.8.0",
"hashPath": "stackexchange.redis.2.8.0.nupkg.sha512"
},
"Steeltoe.Common/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Xy2dCXh8OwzOR5t6/owrDOds/NwXlHpPzfSgP74csHegtrrGXlIvjtxD9MiG6ljzgy/o4wCTEKkD8HIXfLiQ6A==",
"path": "steeltoe.common/3.2.6",
"hashPath": "steeltoe.common.3.2.6.nupkg.sha512"
},
"Steeltoe.Common.Abstractions/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-jZBFHFrbUHjQfiAjCx2dlskT/m34SQP/oOfRadVmxt+wc2d8Mh8k3A0YLP6Kr02mZtfjLhnaTcxCghJeptv/sA==",
"path": "steeltoe.common.abstractions/3.2.6",
"hashPath": "steeltoe.common.abstractions.3.2.6.nupkg.sha512"
},
"Steeltoe.Common.Http/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-btPjQdqs3FE5jV7T/ESnE7KDo718rPs2AUiAfs14FZVRpn0u2yFYDLz9DHqtLGW74PwyD2TSa5novCuBM3b+nw==",
"path": "steeltoe.common.http/3.2.6",
"hashPath": "steeltoe.common.http.3.2.6.nupkg.sha512"
},
"Steeltoe.Connector.Abstractions/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-yp1lR0J4JHe4gqAaI6SNcuzxD6/7sfCu78DQDwtekl3rPiB8nehRqxQrTNUSQrgIWsKyScXW5MX0FjmJmrHVYg==",
"path": "steeltoe.connector.abstractions/3.2.6",
"hashPath": "steeltoe.connector.abstractions.3.2.6.nupkg.sha512"
},
"Steeltoe.Connector.ConnectorBase/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-MpmNeL87sWqGxefPBPBnymjJrvYg0JTF+zjnFAXJvo2Clciuv5LnVv0G1eUepqY/gNq/YgaPMWHLN8B5zjmqaA==",
"path": "steeltoe.connector.connectorbase/3.2.6",
"hashPath": "steeltoe.connector.connectorbase.3.2.6.nupkg.sha512"
},
"Steeltoe.Connector.ConnectorCore/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-eWcSaZAVQknJqIwM0pEBHeOUZg5eD5FpujP3ZlY8reegcgDLE8stUFMnTmJA0mPQ7/Cjs5zplbZnm0f/yRJQ2A==",
"path": "steeltoe.connector.connectorcore/3.2.6",
"hashPath": "steeltoe.connector.connectorcore.3.2.6.nupkg.sha512"
},
"Steeltoe.Discovery.Abstractions/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-nZsdB5RKB1OMvCooLrvTRxGfaiFb5Pu2S3yxBc0FRDRHrLnFs7DyQhAym+ZNeiBomb9p6hT79h03Ws3hwEJpfA==",
"path": "steeltoe.discovery.abstractions/3.2.6",
"hashPath": "steeltoe.discovery.abstractions.3.2.6.nupkg.sha512"
},
"Steeltoe.Discovery.ClientBase/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-efv/lN10m+tcBBarfI9sQ9o8d+ssVkB/RZTTMKPP4U11CuaDmj4sPYHg40MoTyIUwLyn74H2nSeRYMEyRyFgMw==",
"path": "steeltoe.discovery.clientbase/3.2.6",
"hashPath": "steeltoe.discovery.clientbase.3.2.6.nupkg.sha512"
},
"Steeltoe.Discovery.Eureka/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-VWLsF0dsUdn2aXjXK2Rv5Q1AhGJOaHT1EbUrDqUPsOTZ+P+lpGB5D1Sgr3z25xQ/BEdeV/6W8/aV05GpPiZRgg==",
"path": "steeltoe.discovery.eureka/3.2.6",
"hashPath": "steeltoe.discovery.eureka.3.2.6.nupkg.sha512"
},
"Steeltoe.Extensions.Configuration.Abstractions/3.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-zeflgvXeExfsgkL3ox0/+moBWOpDZT6EgBlTZifcMuzQ9Jk6j6EgSmSp4gxQ6iyK3VtdUwBUza33CXC1PFoWow==",
"path": "steeltoe.extensions.configuration.abstractions/3.2.6",
"hashPath": "steeltoe.extensions.configuration.abstractions.3.2.6.nupkg.sha512"
},
"Swashbuckle.AspNetCore/6.4.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-eUBr4TW0up6oKDA5Xwkul289uqSMgY0xGN4pnbOIBqCcN9VKGGaPvHX3vWaG/hvocfGDP+MGzMA0bBBKz2fkmQ==",
"path": "swashbuckle.aspnetcore/6.4.0",
"hashPath": "swashbuckle.aspnetcore.6.4.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.Swagger/6.4.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-nl4SBgGM+cmthUcpwO/w1lUjevdDHAqRvfUoe4Xp/Uvuzt9mzGUwyFCqa3ODBAcZYBiFoKvrYwz0rabslJvSmQ==",
"path": "swashbuckle.aspnetcore.swagger/6.4.0",
"hashPath": "swashbuckle.aspnetcore.swagger.6.4.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.SwaggerGen/6.4.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-lXhcUBVqKrPFAQF7e/ZeDfb5PMgE8n5t6L5B6/BQSpiwxgHzmBcx8Msu42zLYFTvR5PIqE9Q9lZvSQAcwCxJjw==",
"path": "swashbuckle.aspnetcore.swaggergen/6.4.0",
"hashPath": "swashbuckle.aspnetcore.swaggergen.6.4.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.SwaggerUI/6.4.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-1Hh3atb3pi8c+v7n4/3N80Jj8RvLOXgWxzix6w3OZhB7zBGRwsy7FWr4e3hwgPweSBpwfElqj4V4nkjYabH9nQ==",
"path": "swashbuckle.aspnetcore.swaggerui/6.4.0",
"hashPath": "swashbuckle.aspnetcore.swaggerui.6.4.0.nupkg.sha512"
},
"System.Diagnostics.DiagnosticSource/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-frQDfv0rl209cKm1lnwTgFPzNigy2EKk1BS3uAvHvlBVKe5cymGyHO+Sj+NLv5VF/AhHsqPIUUwya5oV4CHMUw==",
"path": "system.diagnostics.diagnosticsource/6.0.0",
"hashPath": "system.diagnostics.diagnosticsource.6.0.0.nupkg.sha512"
},
"System.Diagnostics.EventLog/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-lcyUiXTsETK2ALsZrX+nWuHSIQeazhqPphLfaRxzdGaG93+0kELqpgEHtwWOlQe7+jSFnKwaCAgL4kjeZCQJnw==",
"path": "system.diagnostics.eventlog/6.0.0",
"hashPath": "system.diagnostics.eventlog.6.0.0.nupkg.sha512"
},
"System.IO.Pipelines/5.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-qEePWsaq9LoEEIqhbGe6D5J8c9IqQOUuTzzV6wn1POlfdLkJliZY3OlB0j0f17uMWlqZYjH7txj+2YbyrIA8Yg==",
"path": "system.io.pipelines/5.0.1",
"hashPath": "system.io.pipelines.5.0.1.nupkg.sha512"
},
"System.Net.Http.Json/3.2.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-KkevRTwX9uMYxuxG2/wSql8FIAItB89XT36zoh6hraQkFhf2yjotDswpAKzeuaEuMhAia6c50oZMkP1PJoYufQ==",
"path": "system.net.http.json/3.2.1",
"hashPath": "system.net.http.json.3.2.1.nupkg.sha512"
},
"System.Reflection.MetadataLoadContext/4.6.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-TezS9fEP9kzL5U6GYHZY6I/tqz6qiHKNgAzuT6JJXJXuP+wWvNLN03gPxBK2uLP0LrLg/QXEAF++lxBNBSYILA==",
"path": "system.reflection.metadataloadcontext/4.6.0",
"hashPath": "system.reflection.metadataloadcontext.4.6.0.nupkg.sha512"
},
"System.Runtime.CompilerServices.Unsafe/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==",
"path": "system.runtime.compilerservices.unsafe/6.0.0",
"hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512"
},
"System.Text.Encodings.Web/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Vg8eB5Tawm1IFqj4TVK1czJX89rhFxJo9ELqc/Eiq0eXy13RK00eubyU6TJE6y+GQXjyV5gSfiewDUZjQgSE0w==",
"path": "system.text.encodings.web/6.0.0",
"hashPath": "system.text.encodings.web.6.0.0.nupkg.sha512"
},
"System.Text.Json/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-zaJsHfESQvJ11vbXnNlkrR46IaMULk/gHxYsJphzSF+07kTjPHv+Oc14w6QEOfo3Q4hqLJgStUaYB9DBl0TmWg==",
"path": "system.text.json/6.0.0",
"hashPath": "system.text.json.6.0.0.nupkg.sha512"
},
"System.ValueTuple/4.5.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ==",
"path": "system.valuetuple/4.5.0",
"hashPath": "system.valuetuple.4.5.0.nupkg.sha512"
}
}
}
\ No newline at end of file
{
"runtimeOptions": {
"tfm": "net6.0",
"frameworks": [
{
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
},
{
"name": "Microsoft.AspNetCore.App",
"version": "6.0.0"
}
],
"configProperties": {
"System.GC.Server": true,
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}
\ No newline at end of file
{
"spring": {
"application": {
"name": "QueuerNode"
"name": "SchedulerNode"
}
},
"Logging": {
......
......@@ -9,7 +9,7 @@ using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace QueuerNode {
namespace SchedulerNode {
/// <summary>Holder for reflection information generated from Protos/schema.proto</summary>
public static partial class SchemaReflection {
......@@ -30,13 +30,13 @@ namespace QueuerNode {
"ASgFEgwKBHRleHQYBiABKAkSCwoDdGFnGAcgASgJIjcKD0Fja25vd2xlZGdl",
"bWVudBIRCglyZXBseUNvZGUYASABKAkSEQoJcmVxdWVzdElEGAIgASgJMkkK",
"BVF1ZXVlEkAKDFF1ZXVlTWVzc2FnZRITLlRyYW5taXR0ZXIuTWVzc2FnZRob",
"LlRyYW5taXR0ZXIuQWNrbm93bGVkZ2VtZW50Qg2qAgpRdWV1ZXJOb2RlYgZw",
"cm90bzM="));
"LlRyYW5taXR0ZXIuQWNrbm93bGVkZ2VtZW50QhCqAg1TY2hlZHVsZXJOb2Rl",
"YgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { },
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::QueuerNode.Message), global::QueuerNode.Message.Parser, new[]{ "ClientID", "ApiKey", "MsgId", "PhoneNumber", "LocalPriority", "Text", "Tag" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::QueuerNode.Acknowledgement), global::QueuerNode.Acknowledgement.Parser, new[]{ "ReplyCode", "RequestID" }, null, null, null, null)
new pbr::GeneratedClrTypeInfo(typeof(global::SchedulerNode.Message), global::SchedulerNode.Message.Parser, new[]{ "ClientID", "ApiKey", "MsgId", "PhoneNumber", "LocalPriority", "Text", "Tag" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::SchedulerNode.Acknowledgement), global::SchedulerNode.Acknowledgement.Parser, new[]{ "ReplyCode", "RequestID" }, null, null, null, null)
}));
}
#endregion
......@@ -58,7 +58,7 @@ namespace QueuerNode {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::QueuerNode.SchemaReflection.Descriptor.MessageTypes[0]; }
get { return global::SchedulerNode.SchemaReflection.Descriptor.MessageTypes[0]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
......@@ -470,7 +470,7 @@ namespace QueuerNode {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::QueuerNode.SchemaReflection.Descriptor.MessageTypes[1]; }
get { return global::SchedulerNode.SchemaReflection.Descriptor.MessageTypes[1]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
......
......@@ -7,7 +7,7 @@
using grpc = global::Grpc.Core;
namespace QueuerNode {
namespace SchedulerNode {
public static partial class Queue
{
static readonly string __ServiceName = "Tranmitter.Queue";
......@@ -46,12 +46,12 @@ namespace QueuerNode {
}
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::QueuerNode.Message> __Marshaller_Tranmitter_Message = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::QueuerNode.Message.Parser));
static readonly grpc::Marshaller<global::SchedulerNode.Message> __Marshaller_Tranmitter_Message = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::SchedulerNode.Message.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Marshaller<global::QueuerNode.Acknowledgement> __Marshaller_Tranmitter_Acknowledgement = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::QueuerNode.Acknowledgement.Parser));
static readonly grpc::Marshaller<global::SchedulerNode.Acknowledgement> __Marshaller_Tranmitter_Acknowledgement = grpc::Marshallers.Create(__Helper_SerializeMessage, context => __Helper_DeserializeMessage(context, global::SchedulerNode.Acknowledgement.Parser));
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
static readonly grpc::Method<global::QueuerNode.Message, global::QueuerNode.Acknowledgement> __Method_QueueMessage = new grpc::Method<global::QueuerNode.Message, global::QueuerNode.Acknowledgement>(
static readonly grpc::Method<global::SchedulerNode.Message, global::SchedulerNode.Acknowledgement> __Method_QueueMessage = new grpc::Method<global::SchedulerNode.Message, global::SchedulerNode.Acknowledgement>(
grpc::MethodType.Unary,
__ServiceName,
"QueueMessage",
......@@ -61,7 +61,7 @@ namespace QueuerNode {
/// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::QueuerNode.SchemaReflection.Descriptor.Services[0]; }
get { return global::SchedulerNode.SchemaReflection.Descriptor.Services[0]; }
}
/// <summary>Base class for server-side implementations of Queue</summary>
......@@ -69,7 +69,7 @@ namespace QueuerNode {
public abstract partial class QueueBase
{
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public virtual global::System.Threading.Tasks.Task<global::QueuerNode.Acknowledgement> QueueMessage(global::QueuerNode.Message request, grpc::ServerCallContext context)
public virtual global::System.Threading.Tasks.Task<global::SchedulerNode.Acknowledgement> QueueMessage(global::SchedulerNode.Message request, grpc::ServerCallContext context)
{
throw new grpc::RpcException(new grpc::Status(grpc::StatusCode.Unimplemented, ""));
}
......@@ -92,7 +92,7 @@ namespace QueuerNode {
[global::System.CodeDom.Compiler.GeneratedCode("grpc_csharp_plugin", null)]
public static void BindService(grpc::ServiceBinderBase serviceBinder, QueueBase serviceImpl)
{
serviceBinder.AddMethod(__Method_QueueMessage, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::QueuerNode.Message, global::QueuerNode.Acknowledgement>(serviceImpl.QueueMessage));
serviceBinder.AddMethod(__Method_QueueMessage, serviceImpl == null ? null : new grpc::UnaryServerMethod<global::SchedulerNode.Message, global::SchedulerNode.Acknowledgement>(serviceImpl.QueueMessage));
}
}
......
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Scheduler")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Scheduler")]
[assembly: System.Reflection.AssemblyTitleAttribute("Scheduler")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb = true
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = Scheduler
build_property.RootNamespace = Scheduler
build_property.ProjectDir = D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\
build_property.RazorLangVersion = 6.0
build_property.SupportLocalizedComponentNames =
build_property.GenerateRazorMetadataSourceChecksumAttributes =
build_property.MSBuildProjectDirectory = D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode
build_property._RazorSourceGeneratorDebug =
// <auto-generated/>
global using global::Microsoft.AspNetCore.Builder;
global using global::Microsoft.AspNetCore.Hosting;
global using global::Microsoft.AspNetCore.Http;
global using global::Microsoft.AspNetCore.Routing;
global using global::Microsoft.Extensions.Configuration;
global using global::Microsoft.Extensions.DependencyInjection;
global using global::Microsoft.Extensions.Hosting;
global using global::Microsoft.Extensions.Logging;
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Net.Http.Json;
global using global::System.Threading;
global using global::System.Threading.Tasks;
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Swashbuckle.AspNetCore.SwaggerGen")]
// Generated by the MSBuild WriteCodeFragment class.
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.GeneratedMSBuildEditorConfig.editorconfig
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.AssemblyInfoInputs.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.AssemblyInfo.cs
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.csproj.CoreCompileInputs.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.MvcApplicationPartsAssemblyInfo.cs
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.MvcApplicationPartsAssemblyInfo.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\appsettings.Development.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\appsettings.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Scheduler.exe
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Scheduler.deps.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Scheduler.runtimeconfig.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Scheduler.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\ref\Scheduler.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Scheduler.pdb
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\CSRedisCore.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Google.Protobuf.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Grpc.AspNetCore.Server.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Grpc.AspNetCore.Server.ClientFactory.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Grpc.Core.Api.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Grpc.Net.Client.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Grpc.Net.ClientFactory.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Grpc.Net.Common.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Microsoft.OpenApi.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Newtonsoft.Json.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Pipelines.Sockets.Unofficial.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\StackExchange.Redis.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Common.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Common.Abstractions.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Common.Http.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Connector.Abstractions.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Connector.ConnectorBase.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Connector.ConnectorCore.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Discovery.Abstractions.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Discovery.ClientBase.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Discovery.Eureka.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Steeltoe.Extensions.Configuration.Abstractions.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Swashbuckle.AspNetCore.Swagger.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Swashbuckle.AspNetCore.SwaggerGen.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\Swashbuckle.AspNetCore.SwaggerUI.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\bin\Debug\net6.0\System.Reflection.MetadataLoadContext.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\staticwebassets.build.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\staticwebassets.development.json
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\scopedcss\bundle\Scheduler.styles.css
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.csproj.CopyComplete
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\ref\Scheduler.dll
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.pdb
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.genruntimeconfig.cache
D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\obj\Debug\net6.0\Scheduler.csproj.AssemblyReference.cache
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Scheeduler")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Scheeduler")]
[assembly: System.Reflection.AssemblyTitleAttribute("Scheeduler")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb = true
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = Scheeduler
build_property.RootNamespace = Scheeduler
build_property.ProjectDir = D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode\
build_property.RazorLangVersion = 6.0
build_property.SupportLocalizedComponentNames =
build_property.GenerateRazorMetadataSourceChecksumAttributes =
build_property.MSBuildProjectDirectory = D:\HIAST\FIY\Project-MSGPriorityQ\GrpcMessage\message-priority-queue\QueuerNode
build_property._RazorSourceGeneratorDebug =
// <auto-generated/>
global using global::Microsoft.AspNetCore.Builder;
global using global::Microsoft.AspNetCore.Hosting;
global using global::Microsoft.AspNetCore.Http;
global using global::Microsoft.AspNetCore.Routing;
global using global::Microsoft.Extensions.Configuration;
global using global::Microsoft.Extensions.DependencyInjection;
global using global::Microsoft.Extensions.Hosting;
global using global::Microsoft.Extensions.Logging;
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Net.Http.Json;
global using global::System.Threading;
global using global::System.Threading.Tasks;
{
"Version": 1,
"Hash": "jwsHyxMcsCIhrAowi7ZmK+gfik0vlNHRNwAmNQHrcsg=",
"Source": "QueuerNode",
"BasePath": "_content/QueuerNode",
"Hash": "Gm3EdnfsjLPGjYrXFyx3NG0YPm+1XCjTjQvju9AHd3E=",
"Source": "Scheduler",
"BasePath": "_content/Scheduler",
"Mode": "Default",
"ManifestType": "Build",
"ReferencedProjectsConfiguration": [],
......
{
"format": 1,
"restore": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheduler.csproj": {}
},
"projects": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheduler.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheduler.csproj",
"projectName": "Scheduler",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheduler.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\moham\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"dependencies": {
"CSRedisCore": {
"target": "Package",
"version": "[3.8.803, )"
},
"Google.Protobuf": {
"target": "Package",
"version": "[3.27.1, )"
},
"Grpc.AspNetCore": {
"target": "Package",
"version": "[2.40.0, )"
},
"Grpc.Net.Client": {
"target": "Package",
"version": "[2.63.0, )"
},
"Grpc.Tools": {
"include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
"suppressParent": "All",
"target": "Package",
"version": "[2.64.0, )"
},
"StackExchange.Redis": {
"target": "Package",
"version": "[2.8.0, )"
},
"Steeltoe.Connector.ConnectorCore": {
"target": "Package",
"version": "[3.2.6, )"
},
"Steeltoe.Discovery.Eureka": {
"target": "Package",
"version": "[3.2.6, )"
},
"Swashbuckle.AspNetCore": {
"target": "Package",
"version": "[6.4.*, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.AspNetCore.App": {
"privateAssets": "none"
},
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.100\\RuntimeIdentifierGraph.json"
}
}
}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\moham\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.0.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\moham\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.props" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.props')" />
<Import Project="$(NuGetPackageRoot)swashbuckle.aspnetcore\6.4.0\build\Swashbuckle.AspNetCore.props" Condition="Exists('$(NuGetPackageRoot)swashbuckle.aspnetcore\6.4.0\build\Swashbuckle.AspNetCore.props')" />
<Import Project="$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.props" Condition="Exists('$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.props')" />
</ImportGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_Extensions_ApiDescription_Server Condition=" '$(PkgMicrosoft_Extensions_ApiDescription_Server)' == '' ">C:\Users\moham\.nuget\packages\microsoft.extensions.apidescription.server\6.0.5</PkgMicrosoft_Extensions_ApiDescription_Server>
<PkgGrpc_Tools Condition=" '$(PkgGrpc_Tools)' == '' ">C:\Users\moham\.nuget\packages\grpc.tools\2.64.0</PkgGrpc_Tools>
</PropertyGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.targets')" />
<Import Project="$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.targets" Condition="Exists('$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.targets')" />
</ImportGroup>
</Project>
\ No newline at end of file
{
"format": 1,
"restore": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheeduler.csproj": {}
},
"projects": {
"D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheeduler.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheeduler.csproj",
"projectName": "Scheeduler",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheeduler.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\moham\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"dependencies": {
"CSRedisCore": {
"target": "Package",
"version": "[3.8.803, )"
},
"Google.Protobuf": {
"target": "Package",
"version": "[3.27.1, )"
},
"Grpc.AspNetCore": {
"target": "Package",
"version": "[2.40.0, )"
},
"Grpc.Net.Client": {
"target": "Package",
"version": "[2.63.0, )"
},
"Grpc.Tools": {
"include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
"suppressParent": "All",
"target": "Package",
"version": "[2.64.0, )"
},
"StackExchange.Redis": {
"target": "Package",
"version": "[2.8.0, )"
},
"Steeltoe.Connector.ConnectorCore": {
"target": "Package",
"version": "[3.2.6, )"
},
"Steeltoe.Discovery.Eureka": {
"target": "Package",
"version": "[3.2.6, )"
},
"Swashbuckle.AspNetCore": {
"target": "Package",
"version": "[6.4.*, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.AspNetCore.App": {
"privateAssets": "none"
},
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.100\\RuntimeIdentifierGraph.json"
}
}
}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\moham\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.0.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\moham\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.props" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.props')" />
<Import Project="$(NuGetPackageRoot)swashbuckle.aspnetcore\6.4.0\build\Swashbuckle.AspNetCore.props" Condition="Exists('$(NuGetPackageRoot)swashbuckle.aspnetcore\6.4.0\build\Swashbuckle.AspNetCore.props')" />
<Import Project="$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.props" Condition="Exists('$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.props')" />
</ImportGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_Extensions_ApiDescription_Server Condition=" '$(PkgMicrosoft_Extensions_ApiDescription_Server)' == '' ">C:\Users\moham\.nuget\packages\microsoft.extensions.apidescription.server\6.0.5</PkgMicrosoft_Extensions_ApiDescription_Server>
<PkgGrpc_Tools Condition=" '$(PkgGrpc_Tools)' == '' ">C:\Users\moham\.nuget\packages\grpc.tools\2.64.0</PkgGrpc_Tools>
</PropertyGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.targets')" />
<Import Project="$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.targets" Condition="Exists('$(NuGetPackageRoot)grpc.tools\2.64.0\build\Grpc.Tools.targets')" />
</ImportGroup>
</Project>
\ No newline at end of file
......@@ -2663,9 +2663,9 @@
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\QueuerNode.csproj",
"projectName": "QueuerNode",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\QueuerNode.csproj",
"projectUniqueName": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheduler.csproj",
"projectName": "Scheduler",
"projectPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheduler.csproj",
"packagesPath": "C:\\Users\\moham\\.nuget\\packages\\",
"outputPath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\obj\\",
"projectStyle": "PackageReference",
......
{
"version": 2,
"dgSpecHash": "7nJeQF9PaNYmuatMaEICtBg4szZlecxtGBDyfjhVcDpqXKH3DY3oyz1ewYuFVWCXCMp7yOmZV4wnPQpkQX5pDQ==",
"dgSpecHash": "eiH7zdB20g5X6yhl2FxaNA402ThIUdgK72YjnpWwfrlXlkbR+KGMeumq66nLW7sp5nxfb8NWvdO3u6Xwuk4AFA==",
"success": true,
"projectFilePath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\QueuerNode.csproj",
"projectFilePath": "D:\\HIAST\\FIY\\Project-MSGPriorityQ\\GrpcMessage\\message-priority-queue\\QueuerNode\\Scheduler.csproj",
"expectedPackageFiles": [
"C:\\Users\\moham\\.nuget\\packages\\csrediscore\\3.8.803\\csrediscore.3.8.803.nupkg.sha512",
"C:\\Users\\moham\\.nuget\\packages\\google.protobuf\\3.27.1\\google.protobuf.3.27.1.nupkg.sha512",
......
......@@ -33,3 +33,8 @@
2.0
2.0
2.0
2.0
2.0
2.0
2.0
2.0
......@@ -6,94 +6,35 @@ using Newtonsoft.Json;
var tokenSource = new CancellationTokenSource();
var token = tokenSource.Token;
string SYR = "localhost:6374";
//string MTN = "localhost:6373";
string SYR = "localhost:6379";
var muxer = ConnectionMultiplexer.Connect(SYR);
var db = muxer.GetDatabase();
const string streamName5 = "5";
const string streamName2 = "2";
const string streamName = "SYR_3";
const string groupName = "SYS_MSGS";
const string myConsumerID = "some-id";
const string myConsumerID = "some-id-2";
const int count = 100055566; // at most reads (count) messages from a stream
/*var readTask = Task.Run(async () =>
{
string id = string.Empty;
while (!token.IsCancellationRequested)
{
var messages = await db.StreamRangeAsync(streamName, "-", "+", count, Order.Descending);
Console.WriteLine(messages.Length);
foreach (var entry in messages)
{
// Get the message ID
var messageId = entry.Id;
Console.WriteLine(messageId);
// Access the message data (serialized JSON)
string? serializedMessage = entry.Values[0].Value.ToString();
Console.WriteLine(serializedMessage);
if (serializedMessage == null) continue;
// Deserialize the JSON back to a Message object (if needed)
MessageDTO? message = JsonConvert.DeserializeObject<MessageDTO>(serializedMessage);
if (message == null) continue;
// Process the message data (message.Text, message.Timestamp, etc.)
Console.WriteLine($"Message ID: {messageId}, Text: {message.msgId}, tag: {message.tag}");
}
await Task.Delay(1000);
}
});*/
var readGroupTask2 = Task.Run(async () =>
{
string id = string.Empty;
while (!token.IsCancellationRequested)
{
var messages = await db.StreamReadGroupAsync(streamName2, groupName, myConsumerID, ">", count);
///var messages = await db.StreamReadGroupAsync(streamName, groupName, myConsumerID, "$", count);
var messages = db.StreamPendingMessages(streamName, groupName , count , myConsumerID);
//Console.WriteLine(messages.Length);
foreach (var entry in messages)
{
// Get the message ID
var messageId = entry.Id;
Console.WriteLine(messageId);
// Access the message data (serialized JSON)
string? serializedMessage = entry.Values[0].Value.ToString();
Console.WriteLine(serializedMessage);
if (serializedMessage == null) continue;
// Deserialize the JSON back to a Message object (if needed)
MessageDTO? message = JsonConvert.DeserializeObject<MessageDTO>(serializedMessage);
if (message == null) continue;
// Process the message data (message.Text, message.Timestamp, etc.)
Console.WriteLine($"Message ID: {messageId}, Text: {message.msgId}, tag: {message.tag}");
}
await Task.Delay(1000);
}
});
var readGroupTask5 = Task.Run(async () =>
{
string id = string.Empty;
while (!token.IsCancellationRequested)
{
var messages = await db.StreamReadGroupAsync(streamName5, groupName, myConsumerID, ">", count);
//Console.WriteLine(messages.Length);
foreach (var entry in messages)
foreach (var msg in messages)
{
Console.WriteLine(msg);
// Get the message ID
var messageId = entry.Id;
/*var messageId = entry.Id;
Console.WriteLine(messageId);
// Access the message data (serialized JSON)
string? serializedMessage = entry.Values[0].Value.ToString();
......@@ -104,8 +45,9 @@ var readGroupTask5 = Task.Run(async () =>
MessageDTO? message = JsonConvert.DeserializeObject<MessageDTO>(serializedMessage);
if (message == null) continue;
// Process the message data (message.Text, message.Timestamp, etc.)
// Process the message data
Console.WriteLine($"Message ID: {messageId}, Text: {message.msgId}, tag: {message.tag}");
*/
}
await Task.Delay(1000);
......@@ -114,9 +56,10 @@ var readGroupTask5 = Task.Run(async () =>
tokenSource.CancelAfter(TimeSpan.FromSeconds(300));
await Task.WhenAll(readGroupTask5, readGroupTask2);
await Task.WhenAll(readGroupTask2);
......
......@@ -17,7 +17,7 @@ namespace Validator.Services
return Task.FromResult(new Reply
{
ReplyCode = "OK ok 200 + validated !! ",
AccountPriority = 4
AccountPriority = 3
}) ;
}
......
mkdir cluster-test
cd cluster-test
mkdir 7000 7001 7002 7003 7004 7005
Create a redis.conf file inside each of the directories
-----------------------------------------------------------------------------------------
conf file:
port 7000 // change to port
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
-----------------------------------------------------------------------------------------
redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 \
127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 \
--cluster-replicas 1
create 6 nodes with replication of 1 for each node (master node)
cluster-enabled : yes
cluster-config-file : "filename"
cluster-node-timeout : "in milliseconds"
cluster-slave-validity-factor : (value) when master fails the replica waits for value*timeout to take over
cluster-require-full-coverage :
cluster-allow-reads-when-down : //set to yes
/*examples:*/
port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
best prcatice to make it 3 by 3 nodes [3 masters + 3 slaves]
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment