public DynamicsController(
            ILogger <DocumentController> logger,
            IOptions <AppOptions> appOptions,
            IDocumentService documentService,
            IOpportunityService opportunityService,
            IGraphClientAppContext graphClientAppContext,
            IOneDriveLinkService oneDriveLinkService,
            IConfiguration configuration,
            IDynamicsLinkService dynamicsLinkService,
            IProposalManagerClientFactory proposalManagerClientFactory) : base(logger, appOptions)
        {
            this.oneDriveLinkService          = oneDriveLinkService;
            this.graphClientAppContext        = graphClientAppContext;
            this.dynamicsLinkService          = dynamicsLinkService;
            this.opportunityService           = opportunityService;
            this.proposalManagerClientFactory = proposalManagerClientFactory;

            oneDriveConfiguration = new OneDriveConfiguration();
            configuration.Bind(OneDriveConfiguration.ConfigurationName, oneDriveConfiguration);

            dynamicsConfiguration = new Dynamics365Configuration();
            configuration.Bind(Dynamics365Configuration.ConfigurationName, dynamicsConfiguration);

            proposalManagerConfiguration = new ProposalManagerConfiguration();
            configuration.Bind(ProposalManagerConfiguration.ConfigurationName, proposalManagerConfiguration);
        }
示例#2
0
        public OneDriveLinkService(
            IGraphClientAppContext graphClientContext,
            IProposalManagerClientFactory proposalManagerClientFactory,
            IConfiguration configuration,
            IOpportunityRepository opportunityRepository,
            IDeltaLinksStorage deltaLinksStorage)
        {
            this.graphClientContext           = graphClientContext;
            this.proposalManagerClientFactory = proposalManagerClientFactory;

            oneDriveConfiguration = new OneDriveConfiguration();
            configuration.Bind(OneDriveConfiguration.ConfigurationName, oneDriveConfiguration);

            dynamics365Configuration = new Dynamics365Configuration();
            configuration.Bind(Dynamics365Configuration.ConfigurationName, dynamics365Configuration);

            azureAdOptions = new AzureAdOptions();
            configuration.Bind("AzureAd", azureAdOptions);

            appOptions = new AppOptions();
            configuration.Bind("ProposalManagement", appOptions);

            this.opportunityRepository = opportunityRepository;
            this.deltaLinksStorage     = deltaLinksStorage;

            InitializeTemporaryFolderDelta();
        }