using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
namespace RobotNet10.CANOpen;
///
/// Extension methods để register CANOpen services vào DI container
///
public static class CanOpenExtensions
{
///
/// Thêm CanOpenManager vào DI container như Singleton service và IHostedService
/// CanOpenManager sẽ tự động tạo SocketCanBus từ interface name
///
/// Service collection
/// Service collection để chain calls
public static IServiceCollection AddCanOpenManager(this IServiceCollection services)
{
services.AddSingleton();
services.AddSingleton(serviceProvider => serviceProvider.GetRequiredService());
services.AddHostedService(serviceProvider => serviceProvider.GetRequiredService());
return services;
}
}