} // UploadPackage() /// <summary> /// Uploads the package from URL. /// </summary> /// <param name="folderId">The folder identifier.</param> /// <param name="details">The details.</param> /// <param name="groupName">The group name to chose while uploading the package.</param> /// <param name="description">The description.</param> /// <param name="accessLevel">The access level.</param> /// <param name="ignoreScm">if set to <c>true</c> ignore SCM files.</param> /// <returns> /// An <see cref="Result" /> object. /// </returns> /// <remarks> /// The message property of the result contains the upload id /// which is needed for further operations. /// </remarks> public Result UploadPackageFromUrl( int folderId, UrlUpload details, string groupName = "", string description = "", string accessLevel = "public", bool ignoreScm = true) { Log.Debug($"Uploading package {details.Name} from URL {details.Url} to folder {folderId}..."); var request = new RestRequest(this.Url + "/uploads", Method.POST); request.RequestFormat = DataFormat.Json; request.AddHeader("folderId", folderId.ToString()); request.AddHeader("groupName", groupName); request.AddHeader("uploadDescription", description); request.AddHeader("public", accessLevel); request.AddHeader("ignoreScm", ignoreScm.ToString()); request.AddHeader("uploadType", "url"); request.JsonSerializer = new JsonSerializer(); var json = JsonConvert.SerializeObject(details); request.AddJsonBody(json); var resultRaw = this.api.Execute(request); var result = JsonConvert.DeserializeObject <Result>(resultRaw.Content); Log.Debug($"Package {result.Message} uploaded."); return(result); } // UploadPackageFromUrl()
public void TestUploadPackageFromUrl() { var client = new FossologyClient(LocalUrl, Token); var details = new UrlUpload(); details.Name = "Tethys.xml_v1.0.0.zip"; details.Url = "https://github.com/tngraf/Tethys.Xml/archive/v1.0.0.zip"; details.MaxRecursionDepth = 0; var result = client.UploadPackageFromUrl(3, details); Assert.IsNotNull(result); Assert.AreEqual("INFO", result.Type); Assert.AreEqual(201, result.Code); Debug.WriteLine($"Upload id = {result.Message}"); }