private void LoadPackages([NotNull] Site site, [NotNull] List <PackageInformation> packages, [NotNull] string folder) { Debug.ArgumentNotNull(site, nameof(site)); Debug.ArgumentNotNull(packages, nameof(packages)); Debug.ArgumentNotNull(folder, nameof(folder)); foreach (var fileName in AppHost.Files.GetFiles(folder)) { if (string.Compare(Path.GetExtension(fileName), @".zip", StringComparison.InvariantCultureIgnoreCase) != 0) { continue; } try { var packageAnalyzer = new PackageAnalyzer(fileName); var package = new PackageInformation(site, packageAnalyzer); packages.Add(package); } catch (Exception ex) { AppHost.Output.LogException(ex); } } foreach (var subfolder in AppHost.Files.GetDirectories(folder)) { LoadPackages(site, packages, subfolder); } }
public void AddsCorrectFieldAnalyzers(string field, string text, TokenAttributes[] expected) { // arrange var analyzer = new PackageAnalyzer(); // act var tokenStream = analyzer.TokenStream(field, new StringReader(text)); var actual = tokenStream.Tokenize().ToArray(); // assert Assert.Equal(expected, actual); }
protected override void Ready() { Receive <AnalysisMessage>(r => { Console.WriteLine("WORKING"); var self = Self; var sender = Sender; Task.Run <AnalysisDocument>(() => { var analyzer = new PackageAnalyzer(); analyzer.UsedTypesOnly = r.UsedTypesOnly; analyzer.AllEdges = r.AllEdges; analyzer.CreateClustersForNamespaces = r.CreateClustersForNamespaces; if (r.PackagesToAnalyze != null) { analyzer.PackagesToAnalyze.AddRange(r.PackagesToAnalyze); } var spec = SpecUtils.Deserialize(SpecUtils.Unzip(r.Spec)); return(analyzer.Execute(spec, CancellationToken)); }, CancellationToken) .ContinueWith <object>(x => { if (x.IsCanceled) { return(new CanceledMessage()); } if (x.IsFaulted) { return(new FailedMessage { Error = x.Exception.Dump() }); } Console.WriteLine("Writing response ..."); var serializer = new DocumentSerializer(); serializer.Serialize(x.Result, r.OutputFile); return(new AnalysisResponse { File = r.OutputFile }); }, TaskContinuationOptions.ExecuteSynchronously) .PipeTo(self, sender); Become(Working); }); }
public PackageInformation([NotNull] Site site, [NotNull] PackageAnalyzer packageAnalyzer) { Assert.ArgumentNotNull(site, nameof(site)); Assert.ArgumentNotNull(packageAnalyzer, nameof(packageAnalyzer)); Site = site; LocalFileName = packageAnalyzer.FileName; PackageName = packageAnalyzer.Name; Author = packageAnalyzer.Author; Version = packageAnalyzer.Version; Publisher = packageAnalyzer.Publisher; License = packageAnalyzer.License; Comment = packageAnalyzer.Comment; Readme = packageAnalyzer.Readme; if (string.IsNullOrEmpty(PackageName)) { PackageName = Path.GetFileNameWithoutExtension(LocalFileName) ?? "[Unknown Package]"; } }
/// <summary> /// Click event. /// </summary> /// <param name="sender">The Sender.</param> /// <param name="e">The EventArgs.</param> protected void ButtonOk_Click(object sender, EventArgs e) { // Validate this.Validate(); if (!this.IsValid) { return; } // We are valid // Register the database using (SPLongOperation operation = new SPLongOperation(this)) { operation.LeadingHTML = HttpContext.GetGlobalResourceObject("ClubCloud.Service.ServiceAdminResources", "UsersSettingsCreateOperationLeadingHtml", CultureInfo.CurrentCulture).ToString(); operation.TrailingHTML = HttpContext.GetGlobalResourceObject("ClubCloud.Service.ServiceAdminResources", "UsersSettingsCreateOperationTrailingHtml", CultureInfo.CurrentCulture).ToString(); operation.Begin(); var name = fup_package.PostedFile.FileName.Split('\\').Last(); string[] parts = name.Split('_'); string applicationName = parts[0]; string verion = parts[1]; string cpu = parts[2]; ClubCloud.Model.ApplicationInfo applicationInfo = ServiceClient.GetApplicationInfoByName(applicationName); if (applicationInfo == null) { applicationInfo = new Model.ApplicationInfo { ApplicationName = applicationName, MajorVersion = verion, CreationDate = DateTime.Now, OperationDate = DateTime.Now, Status = ApplicationStatus.Published }; } else { applicationInfo.MajorVersion = verion; applicationInfo.OperationDate = DateTime.Now; } Stream uploadstream = fup_package.PostedFile.InputStream; fup_package.PostedFile.InputStream.Seek(0, SeekOrigin.Begin); byte[] fileData = new byte[fup_package.PostedFile.ContentLength]; uploadstream.Read(fileData, 0, fup_package.PostedFile.ContentLength); byte[] package = null; byte[] certificate = null; byte[] symbols = null; ApplicationVersion applicationVersion = new ApplicationVersion(); ApplicationProcessorArchitecture applicationProcessorArchitecture = new ApplicationProcessorArchitecture(); using (ZipArchive archive = new ZipArchive(uploadstream, ZipArchiveMode.Read)) { foreach (ZipArchiveEntry entry in archive.Entries) { byte[] buffer = null; using (BinaryReader reader = new BinaryReader(entry.Open())) { buffer = reader.ReadBytes((int)entry.Length); } if (entry.FullName.EndsWith("appx")) { package = buffer; PackageAnalyzeResult result = PackageAnalyzer.GetPackageInfo(entry.Open()); applicationVersion = result.ApplicationVersion; applicationProcessorArchitecture = result.ApplicationProcessorArchitecture; } if (entry.FullName.EndsWith("cer")) { certificate = buffer; } if (entry.FullName.EndsWith("appxsym")) { symbols = buffer; } } } applicationProcessorArchitecture.Certificate = certificate; applicationProcessorArchitecture.Package = package; applicationProcessorArchitecture.Symbols = symbols; //applicationVersion.ApplicationProcessorArchitectures.Add(applicationProcessorArchitecture); //applicationInfo.ApplicationVersions.Add(applicationVersion); applicationInfo = ServiceClient.SetApplicationInfo(applicationInfo); applicationVersion.ApplicationInfoId = applicationInfo.Id; applicationVersion = ServiceClient.SetApplicationVersion(applicationInfo.Id, applicationVersion); applicationProcessorArchitecture.ApplicationVersionId = applicationVersion.Id; applicationProcessorArchitecture = ServiceClient.SetApplicationProcessorArchitecture(applicationVersion.Id, applicationProcessorArchitecture); operation.End("/_admin/ClubCloud.Service/ManagePackage.aspx");//string.Format(CultureInfo.InvariantCulture, "/_admin/ClubCloud.Service/ManageApplication.aspx?id={0}", SPHttpUtility.UrlKeyValueEncode(this.ServiceApplication.Id))); } }