public Tool(IPackageContext packageContext, IBuildInfo buildContext, IBuildDistributor buildDistributor, ControlViewModel viewModel) { _packageContext = packageContext; _dte = packageContext.GetDTE(); _dte2 = packageContext.GetDTE2(); if (_dte == null) { throw new InvalidOperationException("Unable to get DTE instance."); } _dteStatusBar = packageContext.GetStatusBar(); if (_dteStatusBar == null) { TraceManager.TraceError("Unable to get IVsStatusbar instance."); } _toolWindowManager = new ToolWindowManager(packageContext); _buildContext = buildContext; _buildDistributor = buildDistributor; _viewModel = viewModel; _solutionEvents = _dte.Events.SolutionEvents; Initialize(); }
public ControlViewModel(ControlModel model, IPackageContext packageContext) { _model = model; _packageContext = packageContext; _settings = packageContext.ControlSettings; _buildProgressViewModel = new BuildProgressViewModel(_settings); packageContext.ControlSettingsChanged += OnControlSettingsChanged; }
public ToolWindowManager(IPackageContext packageContext) { _dte = packageContext.GetDTE(); if (_dte == null) throw new InvalidOperationException("Unable to get DTE instance."); _windowFrame = (IVsWindowFrame)packageContext.GetToolWindow().Frame; if (_windowFrame == null) throw new InvalidOperationException("Unable to get IVsWindowFrame instance."); _window = GetWindowInstance(packageContext.GetDTE(), typeof(ToolWindow).GUID); if (_window == null) throw new InvalidOperationException("Unable to get Window instance."); }
public DefaultBackOfficeRequestContext(IRebelApplicationContext applicationContext, HttpContextBase httpContext, ComponentRegistrations components, IPackageContext packageContext, IRoutingEngine routingEngine) : base(applicationContext, components, routingEngine) { //create the IO resolvers var urlHelper = new UrlHelper(httpContext.Request.RequestContext); DocumentTypeIconResolver = new DocumentTypeIconFileResolver(httpContext.Server, applicationContext.Settings, urlHelper); DocumentTypeThumbnailResolver = new DocumentTypeThumbnailFileResolver(httpContext.Server, applicationContext.Settings, urlHelper); ApplicationIconResolver = new ApplicationIconFileResolver(httpContext.Server, applicationContext.Settings, urlHelper); PackageContext = packageContext; }
private void ToolInitialize() { try { ControlSettings = LoadSettings(this); var toolWindow = GetToolWindow(); IPackageContext packageContext = this; var viewModel = ToolWindow.GetViewModel(toolWindow); var buildContext = new BuildContext(packageContext, viewModel); var tool = new Tool.Tool(packageContext, buildContext, buildContext, viewModel); } catch (Exception ex) { ex.TraceUnknownException(); } }
public async Task Upload([FromServices] IPackageContext packageContext, CancellationToken cancellationToken) { try { using var uploadStream = await Request.GetUploadStreamOrNullAsync(cancellationToken); if (uploadStream == null) { HttpContext.Response.StatusCode = 400; return; } var result = await _indexer.IndexAsync(uploadStream, cancellationToken); switch (result.Status) { case PackageIndexingStatus.InvalidPackage: HttpContext.Response.StatusCode = 400; break; case PackageIndexingStatus.PackageAlreadyExists: HttpContext.Response.StatusCode = 409; break; case PackageIndexingStatus.Success: HttpContext.Response.StatusCode = 201; packageContext.PackageId = result.PackageId; packageContext.PackageVersion = result.PackageVersion; break; } } catch (ArgumentException ae) when(ae.Message.StartsWith("An item with the same key has already been added")) { // This probably means that package already exists in the database but there is no content stored. HttpContext.Response.StatusCode = 410; } catch (Exception e) { _logger.LogError(e, "Exception thrown during package upload"); HttpContext.Response.StatusCode = 500; } }
/// <summary> /// Constructor /// </summary> /// <param name="settings"></param> /// <param name="packageContext"></param> public PluginViewEngine(UmbracoSettings settings, IPackageContext packageContext) { _settings = settings; _packageContext = packageContext; // TODO: Resolve TwoLevelViewCache problems in release builds, as it seems to cache views without taking parent folder into account ViewLocationCache = DefaultViewLocationCache.Null; //if (HttpContext.Current == null || HttpContext.Current.IsDebuggingEnabled) //{ // ViewLocationCache = DefaultViewLocationCache.Null; //} //else //{ // //override the view location cache with our 2 level view location cache // ViewLocationCache = new TwoLevelViewCache(ViewLocationCache); //} SetViewLocations(); }
public ToolWindowManager(IPackageContext packageContext) { _dte = packageContext.GetDTE(); if (_dte == null) { throw new InvalidOperationException("Unable to get DTE instance."); } _windowFrame = (IVsWindowFrame)packageContext.GetToolWindow().Frame; if (_windowFrame == null) { throw new InvalidOperationException("Unable to get IVsWindowFrame instance."); } _window = GetWindowInstance(packageContext.GetDTE(), typeof(ToolWindow).GUID); if (_window == null) { throw new InvalidOperationException("Unable to get Window instance."); } }
/// <summary> /// Constructor /// </summary> /// <param name="settings"></param> /// <param name="packageContext"></param> public PluginViewEngine(RebelSettings settings, IPackageContext packageContext) { _settings = settings; _packageContext = packageContext; // TODO: Resolve TwoLevelViewCache problems in release builds, as it seems to cache views without taking parent folder into account ViewLocationCache = DefaultViewLocationCache.Null; //if (HttpContext.Current == null || HttpContext.Current.IsDebuggingEnabled) //{ // ViewLocationCache = DefaultViewLocationCache.Null; //} //else //{ // //override the view location cache with our 2 level view location cache // ViewLocationCache = new TwoLevelViewCache(ViewLocationCache); //} SetViewLocations(); }
public async Task Upload([FromServices] IPackageContext packageContext, CancellationToken cancellationToken) { try { using var uploadStream = await Request.GetUploadStreamOrNullAsync(cancellationToken); if (uploadStream == null) { HttpContext.Response.StatusCode = 400; return; } var result = await _indexer.IndexAsync(uploadStream, cancellationToken); switch (result.Status) { case SymbolIndexingStatus.InvalidSymbolPackage: HttpContext.Response.StatusCode = 400; break; case SymbolIndexingStatus.PackageNotFound: HttpContext.Response.StatusCode = 404; break; case SymbolIndexingStatus.Success: HttpContext.Response.StatusCode = 201; packageContext.PackageId = result.PackageId; packageContext.PackageVersion = result.PackageVersion; break; } } catch (Exception e) { _logger.LogError(e, "Exception thrown during symbol upload"); HttpContext.Response.StatusCode = 500; } }
public BuildContext(IPackageContext packageContext, ControlViewModel viewModel) { _viewModel = viewModel; BuildedProjects = new BuildedProjectsCollection(); BuildingProjects = new List <ProjectItem>(); _buildingProjectsLockObject = ((ICollection)BuildingProjects).SyncRoot; _packageContext = packageContext; Events dteEvents = packageContext.GetDTE().Events; _buildEvents = dteEvents.BuildEvents; _windowEvents = dteEvents.WindowEvents; _commandEvents = dteEvents.CommandEvents; _buildEvents.OnBuildBegin += BuildEvents_OnBuildBegin; _buildEvents.OnBuildDone += (s, e) => BuildEvents_OnBuildDone(); _buildEvents.OnBuildProjConfigBegin += BuildEvents_OnBuildProjectBegin; _buildEvents.OnBuildProjConfigDone += BuildEvents_OnBuildProjectDone; _windowEvents.WindowActivated += WindowEvents_WindowActivated; _commandEvents.AfterExecute += CommandEvents_AfterExecute; }
public Tool( IPackageContext packageContext, BuildInfo buildContext, IBuildDistributor buildDistributor, ControlViewModel viewModel) { _dte = packageContext.GetDTE(); if (_dte == null) throw new InvalidOperationException("Unable to get DTE instance."); _dteStatusBar = packageContext.GetStatusBar(); if (_dteStatusBar == null) TraceManager.TraceError("Unable to get IVsStatusbar instance."); _toolWindowManager = new ToolWindowManager(packageContext); _buildContext = buildContext; _buildDistributor = buildDistributor; _viewModel = viewModel; _solutionEvents = _dte.Events.SolutionEvents; Initialize(); }
public BuildContext(IPackageContext packageContext, FindProjectItemDelegate findProjectItem) { _buildedProjects = new BuildedProjectsCollection(); _buildingProjects = new List<ProjectItem>(); _buildingProjectsLockObject = ((ICollection)_buildingProjects).SyncRoot; _packageContext = packageContext; _findProjectItem = findProjectItem; Events dteEvents = packageContext.GetDTE().Events; _buildEvents = dteEvents.BuildEvents; _windowEvents = dteEvents.WindowEvents; _commandEvents = dteEvents.CommandEvents; _buildEvents.OnBuildBegin += BuildEvents_OnBuildBegin; _buildEvents.OnBuildDone += (s, e) => BuildEvents_OnBuildDone(); _buildEvents.OnBuildProjConfigBegin += BuildEvents_OnBuildProjectBegin; _buildEvents.OnBuildProjConfigDone += BuildEvents_OnBuildProjectDone; _windowEvents.WindowActivated += WindowEvents_WindowActivated; _commandEvents.AfterExecute += CommandEvents_AfterExecute; }
public async Task <IActionResult> DownloadPackageAsync(string id, string version, [FromServices] IPackageContext packageContext, CancellationToken cancellationToken) { if (!NuGetVersion.TryParse(version, out var nugetVersion)) { return(NotFound()); } using var packageStream = await _content.GetPackageContentStreamOrNullAsync(id, nugetVersion, cancellationToken); if (packageStream == null) { return(NotFound()); } packageContext.PackageId = id; packageContext.PackageVersion = version; return(new FileContentResult(packageStream.AsMemoryStream().ToArray(), "application/octet-stream") { FileDownloadName = $"{id}.nupkg" }); }