public SearchController( IProjectService projectService, IContentDefinitionManager contentDefinitionManager, ICRMContentOwnershipService contentOwnershipService, IProjectSearchService projectSearchService, IOrchardServices services, IContentManager contentManager, ISiteService siteService, IShapeFactory shapeFactory) { this.contentDefinitionManager = contentDefinitionManager; this.projectService = projectService; this.contentOwnershipService = contentOwnershipService; Services = services; _projectSearchService = projectSearchService; _contentManager = contentManager; _siteService = siteService; T = NullLocalizer.Instance; Logger = NullLogger.Instance; Shape = shapeFactory; searchFieldsBasedOnContentType.Add("Ticket", new[] { CRMCommentsPart.CommentsFieldName, TicketPart.DescriptionFieldName, TicketPart.TitleFieldName }); searchFieldsBasedOnContentType.Add(ContentTypes.DiscussionContentType, new[] { CRMCommentsPart.CommentsFieldName, FieldNames.BodyFieldName, FieldNames.TitleFieldName }); searchFieldsBasedOnContentType.Add(ContentTypes.WikiItemType, new[] { CRMCommentsPart.CommentsFieldName, FieldNames.BodyFieldName, FieldNames.TitleFieldName }); searchFieldsBasedOnContentType.Add(ContentTypes.FolderContentType, new[] { CRMCommentsPart.CommentsFieldName, FieldNames.TitleFieldName }); }
/// <summary> /// Initializes a new instance of the <see cref="GrowActivityHandler"/> class. /// </summary> /// <param name="logger">Logger implementation to send logs to the logger service.</param> /// <param name="localizer">The current cultures' string localizer.</param> /// <param name="telemetryClient">The Application Insights telemetry client.</param> /// <param name="messagingExtensionHelper">Helper to send cards and display projects in messaging extension.</param> /// <param name="userState">State management object for maintaining user conversation state.</param> /// <param name="userDetailProvider">Provider instance to work with user data.</param> /// <param name="botOptions">A set of key/value application configuration properties for activity handler.</param> /// <param name="teamSkillStorageProvider">Team skill storage provider dependency injection.</param> /// <param name="projectStorageProvider">Project storage provider dependency injection.</param> /// <param name="projectSearchService">Search service helper to fetch projects based on filters and search criteria.</param> /// <param name="notificationHelper">Instance to send notifications to users.</param> /// <param name="teamStorageProvider">Provider for fetching information about team details from storage table.</param> public GrowActivityHandler( ILogger <GrowActivityHandler> logger, IStringLocalizer <Strings> localizer, TelemetryClient telemetryClient, IMessagingExtensionHelper messagingExtensionHelper, UserState userState, IUserDetailProvider userDetailProvider, IOptions <BotSettings> botOptions, ITeamSkillStorageProvider teamSkillStorageProvider, IProjectStorageProvider projectStorageProvider, IProjectSearchService projectSearchService, NotificationHelper notificationHelper, ITeamStorageProvider teamStorageProvider) { this.logger = logger; this.localizer = localizer; this.telemetryClient = telemetryClient; this.messagingExtensionHelper = messagingExtensionHelper; this.userState = userState; this.userDetailProvider = userDetailProvider; this.botOptions = botOptions ?? throw new ArgumentNullException(nameof(botOptions)); this.teamSkillStorageProvider = teamSkillStorageProvider; this.projectStorageProvider = projectStorageProvider; this.projectSearchService = projectSearchService; this.notificationHelper = notificationHelper; this.teamStorageProvider = teamStorageProvider; }
/// <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="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="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; }
public ProjectBuildingService(IProjectSearchService projectSearchService, IInformationPublishingService informationPublishingService) { _projectSearchService = projectSearchService; _informationPublishingService = informationPublishingService; }