//private IAppRepositoryBase<ProjectUnit> _projectUnitRepository; //private IProjectHelper _projectHelper; public ProjectStatisticsService( IAppRepositoryBase <Project> projectRepository, IAppRepositoryBase <QualityProblem> qualityProblemRepository, IAppRepositoryBase <SafetyProblem> safetyProblemRepository, //IAppRepositoryBase<ProjectUnit> projectUnitRepository, IAuthInfoProvider authInfoProvider, IWfEngine wfEngine, IAuthorizationRepositoryBase <User> userRepository, IAuthorizationRepositoryBase <UserUnit> userUnitRepository, //IAppDbContextProvider dbContextProvider, //IMessagingProvider messagingProvider, IProjectHelper projectHelper ) { //_projectHelper = projectHelper; //_messagingProvider = messagingProvider; _authInfoProvider = authInfoProvider; _userRepository = userRepository; _userUnitRepository = userUnitRepository; //_runtimeProvider = wfEngine.GetRuntimeProvider(); //_taskProvider = wfEngine.GetTaskProvider(); //_definitionProvder = wfEngine.GetDefinitionProvider(); //_historyProvider = wfEngine.GetHistoryProvider(); //_dbContextProvider = dbContextProvider; _projectRepository = projectRepository; _qualityProblemRepository = qualityProblemRepository; _safetyProblemRepository = safetyProblemRepository; //_projectUnitRepository = projectUnitRepository; }
public ProjectService( IAppRepositoryBase <Project> projectRepository, IAppRepositoryBase <ProjectUnit> projectUnitRepository, IAuthInfoProvider authInfoProvider, IWfEngine wfEngine, IAuthorizationRepositoryBase <User> userRepository, IAuthorizationRepositoryBase <UserUnit> userUnitRepository, IAppDbContextProvider dbContextProvider, IMessagingProvider messagingProvider, IProjectHelper projectHelper ) { _projectHelper = projectHelper; _messagingProvider = messagingProvider; _authInfoProvider = authInfoProvider; _userRepository = userRepository; _userUnitRepository = userUnitRepository; _runtimeProvider = wfEngine.GetRuntimeProvider(); _taskProvider = wfEngine.GetTaskProvider(); _definitionProvder = wfEngine.GetDefinitionProvider(); _historyProvider = wfEngine.GetHistoryProvider(); _dbContextProvider = dbContextProvider; _projectRepository = projectRepository; _projectUnitRepository = projectUnitRepository; }
public QualityAccidentService( IAuthInfoProvider authInfoProvider, IAppRepositoryBase <QualityAccident> accidentRepository, IAppRepositoryBase <QualityAccidentDisposal> disposalRepository, // IAppRepositoryBase<Project> projectRepository, IAppDbContextProvider dbContextProvider, IDbOperator op, IEventBus eventBus, IWfEngine wfEngine, IProjectHelper projectHelper ) { _projectHelper = projectHelper; _authInfoProvider = authInfoProvider; _accidentRepository = accidentRepository; _disposalRepository = disposalRepository; // _projectRepository = projectRepository; _dbContextProvider = dbContextProvider; _eventBus = eventBus; _op = op; _runtimeProvider = wfEngine.GetRuntimeProvider(); _taskProvider = wfEngine.GetTaskProvider(); _definitionProvder = wfEngine.GetDefinitionProvider(); _historyProvider = wfEngine.GetHistoryProvider(); }
public QualityProblemService( IAuthInfoProvider authInfoProvider, IAppRepositoryBase <QualityProblem> problemRepository, IAppRepositoryBase <QualityProblemRectification> rectificationRepository, // IAppRepositoryBase<Project> projectRepository, IAppDbContextProvider dbContextProvider, IDbOperator op, IEventBus eventBus, IWfEngine wfEngine, IProjectHelper projectHelper ) { _projectHelper = projectHelper; _authInfoProvider = authInfoProvider; _problemRepository = problemRepository; _rectificationRepository = rectificationRepository; //_projectRepository = projectRepository; _dbContextProvider = dbContextProvider; _eventBus = eventBus; _op = op; _runtimeProvider = wfEngine.GetRuntimeProvider(); _taskProvider = wfEngine.GetTaskProvider(); _definitionProvder = wfEngine.GetDefinitionProvider(); _historyProvider = wfEngine.GetHistoryProvider(); }
public ProjectLinkService(IAppRepositoryBase <ProjectLink> linkRepository, IProjectHelper projectHelper, IAppRepositoryBase <ProjectGantt> ganttRepository ) { _ganttRepository = ganttRepository; _linkRepository = linkRepository; _projectHelper = projectHelper; }
public MonthlyPlanService( IAuthInfoProvider authInfoProvider, IAppRepositoryBase <MonthlyPlan> investmentMonthlyPlanRepository, // IAppRepositoryBase<Project> projectRepository IProjectHelper projectHelper ) { _projectHelper = projectHelper; _authInfoProvider = authInfoProvider; _planRepository = investmentMonthlyPlanRepository; // _projectRepository = projectRepository; }
/// <summary> /// Initializes a new instance of the <see cref="TeamProjectController"/> class. /// </summary> /// <param name="logger">Logs errors and information.</param> /// <param name="telemetryClient">The Application Insights telemetry client.</param> /// <param name="projectHelper">Helper for creating models and filtering projects as per criteria.</param> /// <param name="projectSearchService">Project search service for fetching project with search criteria and filters.</param> /// <param name="teamSkillStorageProvider">Provides methods for team skills operations from database.</param> public TeamProjectController( ILogger <ProjectController> logger, TelemetryClient telemetryClient, IProjectHelper projectHelper, IProjectSearchService projectSearchService, ITeamSkillStorageProvider teamSkillStorageProvider) : base(telemetryClient) { this.logger = logger; this.projectHelper = projectHelper; this.projectSearchService = projectSearchService; this.teamSkillStorageProvider = teamSkillStorageProvider; }
/// <summary> /// Initializes a new instance of the <see cref="MessagingExtensionHelper"/> class. /// </summary> /// <param name="localizer">The current cultures' string localizer.</param> /// <param name="projectSearchService">Search service instance to fetch projects based in search and filter criteria.</param> /// <param name="options">>A set of key/value application configuration properties for activity handler.</param> /// <param name="projectHelper">Project helper dependency injection.</param> /// <param name="projectStatusHelper">Instance of project status helper.</param> public MessagingExtensionHelper( IStringLocalizer <Strings> localizer, IProjectSearchService projectSearchService, IOptions <BotSettings> options, IProjectHelper projectHelper, ProjectStatusHelper projectStatusHelper) { this.localizer = localizer; this.projectSearchService = projectSearchService; this.options = options ?? throw new ArgumentNullException(nameof(options)); this.projectStatusHelper = projectStatusHelper; this.projectHelper = projectHelper; }
/// <summary> /// Initializes a new instance of the <see cref="ProjectController"/> class. /// </summary> /// <param name="logger">Logs errors and information.</param> /// <param name="telemetryClient">The Application Insights telemetry client.</param> /// <param name="projectHelper">Helper for creating models and filtering projects as per criteria.</param> /// <param name="projectStorageProvider">Provides methods for add, update and delete project operations from database.</param> /// <param name="projectSearchService">Project search service for fetching project with search criteria and filters.</param> /// <param name="notificationHelper">Provides methods to send notifications to users.</param> public ProjectController( ILogger <ProjectController> logger, TelemetryClient telemetryClient, IProjectHelper projectHelper, IProjectStorageProvider projectStorageProvider, IProjectSearchService projectSearchService, NotificationHelper notificationHelper) : base(telemetryClient) { this.logger = logger; this.projectHelper = projectHelper; this.projectStorageProvider = projectStorageProvider; this.projectSearchService = projectSearchService; this.notificationHelper = notificationHelper; }
/// <param name="isVSIX"> /// Indicates that the call /// is from Visual Studio. /// </param> protected AbstractSwitch(bool isVSIX, ReferenceType type, IPackageOption packageOption, IProjectHelper projectHelper, IMessageHelper messageHelper) { IsVSIX = isVSIX; if (IsVSIX) { DTE = Package.GetGlobalService(typeof(DTE)) as DTE; } Type = type; PackageOption = packageOption; ProjectHelper = projectHelper; MessageHelper = messageHelper; }
/// <summary> /// Initializes a new instance of the <see cref="ProjectController"/> class. /// </summary> /// <param name="logger">The ILogger object which logs errors and information.</param> /// <param name="projectHelper">The instance of project helper which helps in managing operations on project entity.</param> /// <param name="userHelper">Instance of user helper.</param> /// <param name="telemetryClient">The Application Insights telemetry client.</param> /// <param name="taskMapper">The instance of task mapper.</param> /// <param name="taskHelper">The instance of task helper.</param> /// <param name="managerDashboardHelper">Holds the instance of manager dashboard helper.</param> /// <param name="repositoryAccessors">Holds the instance of respository accessors for database operations.</param> public ProjectController( ILogger <ProjectController> logger, IProjectHelper projectHelper, IUserHelper userHelper, IManagerDashboardHelper managerDashboardHelper, TelemetryClient telemetryClient, ITaskMapper taskMapper, ITaskHelper taskHelper, IRepositoryAccessors repositoryAccessors) : base(telemetryClient) { this.projectHelper = projectHelper; this.userHelper = userHelper; this.managerDashboardHelper = managerDashboardHelper; this.logger = logger; this.taskMapper = taskMapper; this.taskHelper = taskHelper; this.repositoryAccessors = repositoryAccessors; }
public ProjectTaskService( IAppRepositoryBase <ProjectTask> taskRepository, IAppRepositoryBase <ProjectGantt> ganttRepository, IAuthInfoProvider authInfoProvider, IWfEngine wfEngine, IAuthorizationRepositoryBase <User> userRepository, IAppDbContextProvider dbContextProvider, IProjectHelper projectHelper ) { _ganttRepository = ganttRepository; _projectHelper = projectHelper; _authInfoProvider = authInfoProvider; _userRepository = userRepository; _runtimeProvider = wfEngine.GetRuntimeProvider(); _taskProvider = wfEngine.GetTaskProvider(); _definitionProvder = wfEngine.GetDefinitionProvider(); _historyProvider = wfEngine.GetHistoryProvider(); _dbContextProvider = dbContextProvider; _projectTaskRepository = taskRepository; }
public MemorabiliaRecordService( IAuthInfoProvider authInfoProvider, IWfEngine wfEngine, IAppRepositoryBase <MemorabiliaRecord> recordRepository, //IAppRepositoryBase<Project> projectRepository, IAppDbContextProvider dbContextProvider, IProjectHelper projectHelper ) { _projectHelper = projectHelper; _authInfoProvider = authInfoProvider; _recordRepository = recordRepository; // _projectRepository = projectRepository; _dbContextProvider = dbContextProvider; _runtimeProvider = wfEngine.GetRuntimeProvider(); _taskProvider = wfEngine.GetTaskProvider(); _definitionProvder = wfEngine.GetDefinitionProvider(); _historyProvider = wfEngine.GetHistoryProvider(); }
/// <summary> /// Initializes a new instance of the <see cref="ProjectSearchService"/> class. /// </summary> /// <param name="optionsAccessor">A set of key/value application configuration properties.</param> /// <param name="projectStorageProvider">Project storage provider dependency injection.</param> /// <param name="logger">Logger implementation to send logs to the logger service.</param> /// <param name="searchServiceClient">Search service client dependency injection.</param> /// <param name="searchIndexClient">Search index client dependency injection.</param> /// <param name="projectHelper">Helper for creating models and filtering projects as per criteria.</param> public ProjectSearchService( IOptions <SearchServiceSetting> optionsAccessor, IProjectStorageProvider projectStorageProvider, ILogger <ProjectSearchService> logger, ISearchServiceClient searchServiceClient, ISearchIndexClient searchIndexClient, IProjectHelper projectHelper) { optionsAccessor = optionsAccessor ?? throw new ArgumentNullException(nameof(optionsAccessor)); this.options = optionsAccessor.Value; var searchServiceValue = this.options.SearchServiceName; this.initializeTask = new Lazy <Task>(() => this.InitializeAsync()); this.projectStorageProvider = projectStorageProvider; this.logger = logger; this.searchServiceClient = searchServiceClient; this.searchIndexClient = searchIndexClient; this.retryPolicy = Policy.Handle <CloudException>( ex => (int)ex.Response.StatusCode == StatusCodes.Status409Conflict || (int)ex.Response.StatusCode == StatusCodes.Status429TooManyRequests) .WaitAndRetryAsync(Backoff.LinearBackoff(TimeSpan.FromMilliseconds(2000), 2)); this.projectHelper = projectHelper; }
public PackageSwitch(bool isVSIX, ReferenceType type, IPackageOption packageOption, IProjectHelper projectHelper, IMessageHelper messageHelper) : base(isVSIX, type, packageOption, projectHelper, messageHelper) { }
/// <summary> /// Runs through a project and generates the files in it. /// </summary> /// <param name="progressHelper">The TaskProgressHelper to use to report progress and cancel the operation.</param> /// <param name="projectInfo">The Project we are generating files from.</param> /// <param name="folderName">The name of the root folder to generate into. Not the full path, just the relative path to the /// current folder.</param> /// <param name="folder"></param> /// <param name="parentNode"></param> /// <param name="thisLevelRootObject"></param> /// <returns></returns> /// <param name="loader"></param> /// <param name="controller"></param> public int GenerateAllFiles(ITaskProgressHelper <GenerateFilesProgress> progressHelper, IProjectHelper projectInfo, string folderName, IFolder folder, ProjectFileTreeNode parentNode, IScriptBaseObject thisLevelRootObject, ILoader loader, IController controller) { if (parentNode is ProjectFileTree) { ((ProjectFileTree)parentNode).TreeRestructuring = true; ((ProjectFileTree)parentNode).Clear(); } int fileCount = 0; try { _Controller = controller; _Loader = loader; _ProgressHelper = progressHelper; project = projectInfo; CurrentRootObject = thisLevelRootObject; absoluteBasePath = controller.GetTempFilePathForComponent(ComponentKey.WorkbenchFileGenerator); { Version version = new Version(loader.GetAssemblyVersionNumber()); Version expectedVersion = new Version(1, 1, 9, 49); if (version < expectedVersion) { throw new OldVersionException("The template was compiled with an old version of ArchAngel, and cannot be used in this version of Workbench"); } } foreach (IFolder subFolder in folder.SubFolders) { if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return(fileCount); } ProjectFileTreeNode folderNode = null; if (parentNode != null && subFolder.Name != "ROOT") { folderNode = parentNode.AddChildNode(subFolder.Name); folderNode.IsFolder = true; } if (!string.IsNullOrEmpty(subFolder.IteratorName)) { // The folder has an iterator ProviderInfo provider; Type iteratorType = project.GetTypeFromProviders(subFolder.IteratorName, out provider); if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return(fileCount); } if (iteratorType != null) { IEnumerable <IScriptBaseObject> iteratorObjects; if (thisLevelRootObject == null) { iteratorObjects = provider.GetAllObjectsOfType(iteratorType.FullName); } else if (iteratorType.IsInstanceOfType(thisLevelRootObject)) { iteratorObjects = new[] { thisLevelRootObject }; } else { iteratorObjects = provider.GetAllObjectsOfType(iteratorType.FullName, thisLevelRootObject); } if (iteratorObjects != null) { foreach (IScriptBaseObject iteratorObject in iteratorObjects) { if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return(fileCount); } CurrentRootObject = iteratorObject; string subFolderName = UpdateScriptName(iteratorObject, subFolder); if (folderNode != null) { folderNode.Text = subFolderName; } subFolderName = Path.Combine(folderName, subFolderName); //Directory.CreateDirectory(Path.Combine(Controller.Instance.GetTempFilePathForComponent(ComponentKey.WorkbenchFileGenerator), subFolderName)); fileCount += GenerateAllFiles(progressHelper, project, subFolderName, subFolder, folderNode, CurrentRootObject, loader, controller); } } } else { throw new Exception(string.Format("The IteratorType could not be found: {0}. Are you missing an assembly?", subFolder.IteratorName)); } } else { // The folder doesn't have an iterator if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return(fileCount); } string subFolderName = UpdateScriptName(null, subFolder); if (folderNode != null) { folderNode.Text = subFolderName; } subFolderName = Path.Combine(folderName, subFolderName); //Directory.CreateDirectory(Path.Combine(Controller.Instance.GetTempFilePathForComponent(ComponentKey.WorkbenchFileGenerator), subFolderName)); fileCount += GenerateAllFiles(progressHelper, projectInfo, subFolderName, subFolder, folderNode, thisLevelRootObject, loader, controller); } //progressHelper.ReportProgress(20, new GenerateFilesProgress(fileCount)); } //progressHelper.ReportProgress(50, new GenerateFilesProgress(fileCount)); foreach (IScript script in folder.Scripts) { if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return(fileCount); } fileCount += CreateScriptFile(progressHelper, folderName, script, parentNode); } // progressHelper.ReportProgress(80, new GenerateFilesProgress(fileCount)); foreach (IFile file in folder.Files) { if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return(fileCount); } fileCount += CreateStaticFile(progressHelper, folderName, file, parentNode); } //progressHelper.ReportProgress(95, new GenerateFilesProgress(fileCount)); //Application.DoEvents(); } catch (Exception e) { progressHelper.ReportProgress(100, new GenerateFilesProgress(fileCount, e)); return(fileCount); } finally { if (parentNode is ProjectFileTree) { ((ProjectFileTree)parentNode).TreeRestructuring = false; parentNode.RaiseNodeChangedEvent(parentNode, true); } } progressHelper.ReportProgress(50, new GenerateFilesProgress(fileCount)); return(fileCount); }
/// <summary> /// Runs through a project and generates the files in it. /// </summary> /// <param name="progressHelper">The TaskProgressHelper to use to report progress and cancel the operation.</param> /// <param name="projectInfo">The Project we are generating files from.</param> /// <param name="folderName">The name of the root folder to generate into. Not the full path, just the relative path to the /// current folder.</param> /// <param name="folder"></param> /// <param name="parentNode"></param> /// <param name="thisLevelRootObject"></param> /// <returns></returns> /// <param name="loader"></param> /// <param name="controller"></param> public int GenerateAllFiles(ITaskProgressHelper<GenerateFilesProgress> progressHelper, IProjectHelper projectInfo, string folderName, IFolder folder, ProjectFileTreeNode parentNode, IScriptBaseObject thisLevelRootObject, ILoader loader, IController controller) { if (parentNode is ProjectFileTree) { ((ProjectFileTree)parentNode).TreeRestructuring = true; ((ProjectFileTree)parentNode).Clear(); } int fileCount = 0; try { _Controller = controller; _Loader = loader; _ProgressHelper = progressHelper; project = projectInfo; CurrentRootObject = thisLevelRootObject; absoluteBasePath = controller.GetTempFilePathForComponent(ComponentKey.WorkbenchFileGenerator); { Version version = new Version(loader.GetAssemblyVersionNumber()); Version expectedVersion = new Version(1, 1, 9, 49); if (version < expectedVersion) { throw new OldVersionException("The template was compiled with an old version of ArchAngel, and cannot be used in this version of Workbench"); } } foreach (IFolder subFolder in folder.SubFolders) { if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return fileCount; } ProjectFileTreeNode folderNode = null; if (parentNode != null && subFolder.Name != "ROOT") { folderNode = parentNode.AddChildNode(subFolder.Name); folderNode.IsFolder = true; } if (!string.IsNullOrEmpty(subFolder.IteratorName)) { // The folder has an iterator ProviderInfo provider; Type iteratorType = project.GetTypeFromProviders(subFolder.IteratorName, out provider); if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return fileCount; } if (iteratorType != null) { IEnumerable<IScriptBaseObject> iteratorObjects; if (thisLevelRootObject == null) { iteratorObjects = provider.GetAllObjectsOfType(iteratorType.FullName); } else if (iteratorType.IsInstanceOfType(thisLevelRootObject)) { iteratorObjects = new[] { thisLevelRootObject }; } else { iteratorObjects = provider.GetAllObjectsOfType(iteratorType.FullName, thisLevelRootObject); } if (iteratorObjects != null) { foreach (IScriptBaseObject iteratorObject in iteratorObjects) { if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return fileCount; } CurrentRootObject = iteratorObject; string subFolderName = UpdateScriptName(iteratorObject, subFolder); if (folderNode != null) { folderNode.Text = subFolderName; } subFolderName = Path.Combine(folderName, subFolderName); //Directory.CreateDirectory(Path.Combine(Controller.Instance.GetTempFilePathForComponent(ComponentKey.WorkbenchFileGenerator), subFolderName)); fileCount += GenerateAllFiles(progressHelper, project, subFolderName, subFolder, folderNode, CurrentRootObject, loader, controller); } } } else { throw new Exception(string.Format("The IteratorType could not be found: {0}. Are you missing an assembly?", subFolder.IteratorName)); } } else { // The folder doesn't have an iterator if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return fileCount; } string subFolderName = UpdateScriptName(null, subFolder); if (folderNode != null) { folderNode.Text = subFolderName; } subFolderName = Path.Combine(folderName, subFolderName); //Directory.CreateDirectory(Path.Combine(Controller.Instance.GetTempFilePathForComponent(ComponentKey.WorkbenchFileGenerator), subFolderName)); fileCount += GenerateAllFiles(progressHelper, projectInfo, subFolderName, subFolder, folderNode, thisLevelRootObject, loader, controller); } //progressHelper.ReportProgress(20, new GenerateFilesProgress(fileCount)); } //progressHelper.ReportProgress(50, new GenerateFilesProgress(fileCount)); foreach (IScript script in folder.Scripts) { if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return fileCount; } fileCount += CreateScriptFile(progressHelper, folderName, script, parentNode); } // progressHelper.ReportProgress(80, new GenerateFilesProgress(fileCount)); foreach (IFile file in folder.Files) { if (progressHelper.IsCancellationPending()) { progressHelper.Cancel(); return fileCount; } fileCount += CreateStaticFile(progressHelper, folderName, file, parentNode); } //progressHelper.ReportProgress(95, new GenerateFilesProgress(fileCount)); //Application.DoEvents(); } catch(Exception e) { progressHelper.ReportProgress(100, new GenerateFilesProgress(fileCount, e)); return fileCount; } finally { if (parentNode is ProjectFileTree) { ((ProjectFileTree) parentNode).TreeRestructuring = false; parentNode.RaiseNodeChangedEvent(parentNode, true); } } progressHelper.ReportProgress(50, new GenerateFilesProgress(fileCount)); return fileCount; }