Add MarketDataServer
This commit is contained in:
68
MarketDataServer/Program.cs
Executable file
68
MarketDataServer/Program.cs
Executable file
@@ -0,0 +1,68 @@
|
||||
using System.Diagnostics;
|
||||
using MarketData;
|
||||
using MarketData.Configuration;
|
||||
using MarketData.Utils;
|
||||
using MarketDataServer.Authorization;
|
||||
|
||||
namespace MarketDataServer
|
||||
{
|
||||
class Program
|
||||
{
|
||||
static void Main(string[] args)
|
||||
{
|
||||
String logFileName="marketdataserver";
|
||||
Authorizations.GetInstance().IsEnabled=false;
|
||||
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
|
||||
|
||||
// Add services to the container.
|
||||
GlobalConfig.Instance.Configuration = builder.Configuration;
|
||||
String baseAddress = GlobalConfig.Instance.Configuration["server_address"];
|
||||
CreateLogging(logFileName);
|
||||
|
||||
MDTrace.WriteLine(MarketData.LogLevel.DEBUG,$"Server Address:{baseAddress}");
|
||||
|
||||
builder.Services.AddControllers();
|
||||
builder.Services.AddEndpointsApiExplorer();
|
||||
builder.Services.AddSwaggerGen( config =>
|
||||
{
|
||||
config.ResolveConflictingActions (apiDescriptions => apiDescriptions.First ());
|
||||
});
|
||||
|
||||
WebApplication webApplication = builder.Build();
|
||||
|
||||
// Configure the HTTP request pipeline.
|
||||
if (webApplication.Environment.IsDevelopment()||webApplication.Environment.IsProduction() )
|
||||
{
|
||||
webApplication.UseSwagger();
|
||||
webApplication.UseSwaggerUI();
|
||||
}
|
||||
|
||||
webApplication.UseHttpsRedirection();
|
||||
webApplication.UseAuthorization();
|
||||
webApplication.MapControllers();
|
||||
webApplication.MapControllerRoute(name: "default",pattern: "api/{controller}/{action}/{id?}");
|
||||
webApplication.Run(baseAddress);
|
||||
}
|
||||
|
||||
private static bool CreateLogging(String task)
|
||||
{
|
||||
if(String.IsNullOrEmpty(task))return false;
|
||||
task=task.ToLower();
|
||||
MDTrace.LogLevel = MarketData.LogLevel.DEBUG;
|
||||
String logFolder = "/logs";
|
||||
DateTime currentDate=DateTime.Now;
|
||||
String strLogFile = "marketdata_" + task + ".log";
|
||||
String currentWorkingDirectory = Directory.GetCurrentDirectory();
|
||||
Console.WriteLine($"Current directory is {currentWorkingDirectory}");
|
||||
Utility.EnsureLogFolder(currentWorkingDirectory+logFolder);
|
||||
Utility.ExpireLogs(currentWorkingDirectory+logFolder,1);
|
||||
Trace.Listeners.Remove("Default");
|
||||
Console.WriteLine($"Adding Trace Listener :{currentWorkingDirectory+logFolder+"/"+strLogFile}");
|
||||
Trace.Listeners.Add(new TextWriterTraceListener(currentWorkingDirectory+logFolder+"/"+strLogFile));
|
||||
MDTrace.WriteLine($"Trace Listener added.");
|
||||
Utility.ShowLogs(currentWorkingDirectory + logFolder);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user