diff --git a/kscr-repo-server/Controllers/RepositoryController.cs b/kscr-repo-server/Controllers/RepositoryController.cs new file mode 100644 index 0000000..0ce7f52 --- /dev/null +++ b/kscr-repo-server/Controllers/RepositoryController.cs @@ -0,0 +1,18 @@ +using KScr.Build; +using Microsoft.AspNetCore.Mvc; +using NAutowired.Core.Attributes; + +namespace KScr.Server.Repo.Controllers; + +[ApiController] +[Route("[controller]")] +public class RepositoryController : ControllerBase +{ + [Autowired] + private readonly Repository _repository; + + [HttpGet, Route("module/{domain}/{group}/{id}/{version}")] + public IEnumerable Get(string domain, string group, string id, string version) + { + } +} \ No newline at end of file diff --git a/kscr-repo-server/Controllers/WeatherForecastController.cs b/kscr-repo-server/Controllers/WeatherForecastController.cs deleted file mode 100644 index 42e8793..0000000 --- a/kscr-repo-server/Controllers/WeatherForecastController.cs +++ /dev/null @@ -1,32 +0,0 @@ -using Microsoft.AspNetCore.Mvc; - -namespace KScr.Server.Repo.Controllers; - -[ApiController] -[Route("[controller]")] -public class WeatherForecastController : ControllerBase -{ - private static readonly string[] Summaries = new[] - { - "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" - }; - - private readonly ILogger _logger; - - public WeatherForecastController(ILogger logger) - { - _logger = logger; - } - - [HttpGet(Name = "GetWeatherForecast")] - public IEnumerable Get() - { - return Enumerable.Range(1, 5).Select(index => new WeatherForecast - { - Date = DateTime.Now.AddDays(index), - TemperatureC = Random.Shared.Next(-20, 55), - Summary = Summaries[Random.Shared.Next(Summaries.Length)] - }) - .ToArray(); - } -} \ No newline at end of file diff --git a/kscr-repo-server/KScrRepoServer.cs b/kscr-repo-server/KScrRepoServer.cs new file mode 100644 index 0000000..4b3d52d --- /dev/null +++ b/kscr-repo-server/KScrRepoServer.cs @@ -0,0 +1,35 @@ +using Microsoft.AspNetCore.Mvc.Controllers; +using Microsoft.Extensions.DependencyInjection.Extensions; +using NAutowired; + +namespace KScr.Server.Repo; + +public class KScrRepoServer +{ + public static void Main(string[] args) + { + var builder = WebApplication.CreateBuilder(args); + + builder.Services.AddControllers().AddControllersAsServices(); + + builder.Services.Replace(ServiceDescriptor.Transient()); + + builder.Services.AddScoped(); + + var app = builder.Build(); + + if (app.Environment.IsDevelopment()) + { + app.UseSwagger(); + app.UseSwaggerUI(); + } + + app.UseHttpsRedirection(); + + app.UseAuthorization(); + + app.MapControllers(); + + app.Run(); + } +} \ No newline at end of file diff --git a/kscr-repo-server/Program.cs b/kscr-repo-server/Program.cs deleted file mode 100644 index 1a71e7a..0000000 --- a/kscr-repo-server/Program.cs +++ /dev/null @@ -1,33 +0,0 @@ -namespace KScr.Server.Repo; - -public class Program -{ - public static void Main(string[] args) - { - var builder = WebApplication.CreateBuilder(args); - -// Add services to the container. - - builder.Services.AddControllers(); -// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle - builder.Services.AddEndpointsApiExplorer(); - builder.Services.AddSwaggerGen(); - - var app = builder.Build(); - -// Configure the HTTP request pipeline. - if (app.Environment.IsDevelopment()) - { - app.UseSwagger(); - app.UseSwaggerUI(); - } - - app.UseHttpsRedirection(); - - app.UseAuthorization(); - - app.MapControllers(); - - app.Run(); - } -} \ No newline at end of file diff --git a/kscr-repo-server/Repository.cs b/kscr-repo-server/Repository.cs new file mode 100644 index 0000000..9d5f7fb --- /dev/null +++ b/kscr-repo-server/Repository.cs @@ -0,0 +1,13 @@ +using System.Collections.Concurrent; + +namespace KScr.Server.Repo; + +public class Repository +{ +} + +internal interface IRepoNode {} + +internal class RepoGroupNode : ConcurrentDictionary, IRepoNode +{ +} diff --git a/kscr-repo-server/kscr-repo-server.csproj b/kscr-repo-server/kscr-repo-server.csproj index 0a19d7f..da388c9 100644 --- a/kscr-repo-server/kscr-repo-server.csproj +++ b/kscr-repo-server/kscr-repo-server.csproj @@ -8,6 +8,7 @@ +