/// <summary> /// Build micro container with required services /// </summary> /// <returns></returns> public static MicroContainer AddRustApiServices(this MicroContainer container) { // add API options container.LoadApiOptions(); // add services container .Add(typeof(ILogger <>), typeof(UModLogger <>)) .AddSingle <IApiServer, ApiServer>() .AddSingle <ISteamConnection, SteamConnection>() .AddSingle <IAuthenticationService, AuthenticationService>() .AddSingle <RustApiPlugin>(); // add routes container .AddSingle <IApiRoutes, ApiRoutes>() .AddHookRoutes() .AddCommandRoutes() .AddSystemRoutes() .AddAuthRoutes(); return(container); }
public static MicroContainer LoadApiOptions(this MicroContainer container) => container.AddSingle(GetApiOptions(container));