using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.FSE.BL.Services;
namespace Tango.FSE.BL
{
///
/// Represents a unit of work for all data services.
///
public class FSEServicesContainer
{
///
/// Gets the machines service.
///
public MachinesService MachinesService { get; private set; }
///
/// Gets or sets the users service.
///
public UsersService UsersService { get; set; }
///
/// Gets or sets the gateway service.
///
public GatewayService GatewayService { get; set; }
///
/// Gets or sets the authentication service.
///
public AuthenticationService AuthenticationService { get; set; }
///
/// Gets or sets the bug reporting service.
///
public BugReportingService BugReportingService { get; set; }
///
/// Gets or sets the tango versions service.
///
public TangoVersionsService TangoVersionsService { get; set; }
///
/// Gets or sets the tango versions service.
///
public TechComponentsService TechComponentsService { get; set; }
///
/// Gets or sets the published procedure projects service.
///
public PublishedProcedureProjectsService PublishedProcedureProjectsService { get; set; }
///
/// Gets or sets the machine events service.
///
public MachineEventsService MachineEventsService { get; set; }
///
/// Gets or sets the organizations service.
///
public OrganizationsService OrganizationsService { get; set; }
///
/// Gets or sets the machine configuration service.
///
public MachineConfigurationService MachineConfigurationService { get; set; }
///
/// Gets or sets the data store service.
///
public DataStoreService DataStoreService { get; set; }
///
/// Initializes a new instance of the class.
///
/// The authentication.
public FSEServicesContainer(IAuthenticationService authentication)
{
MachinesService = new MachinesService();
UsersService = new UsersService();
GatewayService = new GatewayService();
AuthenticationService = new AuthenticationService();
BugReportingService = new BugReportingService();
TangoVersionsService = new TangoVersionsService();
TechComponentsService = new TechComponentsService();
PublishedProcedureProjectsService = new PublishedProcedureProjectsService();
MachineEventsService = new MachineEventsService();
OrganizationsService = new OrganizationsService();
MachineConfigurationService = new MachineConfigurationService();
DataStoreService = new DataStoreService();
}
}
}