/// <summary> /// Provides functionality to detect which type of the .NET Framework / .NET Core used by the running application. /// </summary> /// <returns>Detected FrameworkTypes</returns> public static FrameworkTypes DetectAppTargetNetType() { FrameworkTypes frameworkType = FrameworkTypes.Unknown; var assembly = Assembly.GetEntryAssembly(); var filteredType = typeof(System.Runtime.Versioning.TargetFrameworkAttribute); var targetAttribute = assembly.GetCustomAttribute(filteredType) as System.Runtime.Versioning.TargetFrameworkAttribute; if (targetAttribute != null) { var props = targetAttribute.FrameworkName.Split(','); var frameworkName = props.FirstOrDefault(); switch (frameworkName) { case ".NETCoreApp": frameworkType = FrameworkTypes.DotNet; break; case ".NETFramework": frameworkType = FrameworkTypes.DotNetFramework; break; } } return(frameworkType); }
/// <summary> /// Updates an application. /// </summary> /// <param name="appId">Application Id</param> /// <param name="frameworkType">FrameworkType (e.g. DETECT)</param> /// <param name="repositoryUrl">Repository URL</param> /// <returns></returns> public async Task <bool> SetApplicationParameters(int appId, FrameworkTypes frameworkType, string repositoryUrl) { NameValuePairs nvPairs = new NameValuePairs("frameworkType", frameworkType.ToString().ToUpper()); nvPairs.Add("repositoryUrl", repositoryUrl); JsonResponse response = await Post( String.Format("applications/{0}/setParameters", appId), nvPairs, typeof(Application)); return(response.Success); }
public string GetFrameworks(FrameworkTypes types) { FrameworkInfo[] frameworks = Project.GetFrameworks(types); if (frameworks.Length == 0) { return(string.Empty); } StringBuilder sb = new StringBuilder(); for (int i = 0; i < frameworks.Length; i++) { if (i > 0) { sb.Append(","); } sb.Append(frameworks [i].Name); } return(sb.ToString()); }
public SupportedFramework(string name, FrameworkTypes type) { Name = name; Type = type; }
/// <summary> /// Gets the list of supported frameworks filtered by the specified /// <see cref="FrameworkTypes" /> parameter. /// </summary> /// <param name="types">A bitwise combination of <see cref="FrameworkTypes" /> values that filter the frameworks to retrieve.</param> /// <returns> /// An array of type <see cref="FrameworkInfo" /> that contains the /// frameworks specified by the <paramref name="types" /> parameter, /// sorted on name. /// </returns> internal FrameworkInfo[] GetFrameworks(FrameworkTypes types) { ArrayList matches = new ArrayList(Frameworks.Count); foreach (FrameworkInfo framework in Frameworks.Values) { if ((types & FrameworkTypes.InstallStateMask) != 0) { if ((types & FrameworkTypes.Installed) == 0 && framework.IsValid) continue; if ((types & FrameworkTypes.NotInstalled) == 0 && !framework.IsValid) continue; } if ((types & FrameworkTypes.DeviceMask) != 0) { switch (framework.ClrType) { case ClrType.Compact: if ((types & FrameworkTypes.Compact) == 0) continue; break; case ClrType.Desktop: if ((types & FrameworkTypes.Desktop) == 0) continue; break; case ClrType.Browser: if ((types & FrameworkTypes.Browser) == 0) continue; break; default: throw new NotSupportedException(string.Format( CultureInfo.InvariantCulture, "CLR type '{0}'" + " is not supported.", framework.ClrType)); } } if ((types & FrameworkTypes.VendorMask) != 0) { switch (framework.Vendor) { case VendorType.Mono: if ((types & FrameworkTypes.Mono) == 0) continue; break; case VendorType.Microsoft: if ((types & FrameworkTypes.MS) == 0) continue; break; } } matches.Add(framework); } matches.Sort(FrameworkInfo.NameComparer); FrameworkInfo[] frameworks = new FrameworkInfo[matches.Count]; matches.CopyTo(frameworks); return frameworks; }
internal DeserializerTypes(BuiltInTypes builtIn, FrameworkTypes framework, CesilTypes ourTypes) { BuiltIn = builtIn; Framework = framework; OurTypes = ourTypes; }
public string GetFrameworks(FrameworkTypes types) { FrameworkInfo[] frameworks = Project.GetFrameworks(types); if (frameworks.Length == 0) return string.Empty; StringBuilder sb = new StringBuilder(); for (int i = 0; i < frameworks.Length; i++) { if (i > 0) sb.Append (","); sb.Append (frameworks [i].Name); } return sb.ToString(); }
/// <summary> /// Import MultiPart /// </summary> /// <param name="uri"></param> /// <param name="infoFile"></param> /// <param name="testInfoFile"></param> /// <param name="results"></param> /// <param name="type"></param> /// <returns></returns> public static async Task <String> ImportMultipart(String uri, String infoFile, String testInfoFile, List <String> results, FrameworkTypes type) { // Parsing url string url = uri + "/import/execution/" + type.ToString() + "/multipart"; using (var client = new HttpClient()) { // setting multipart var formData = new MultipartFormDataContent(); formData.Add(new StreamContent(new MemoryStream(File.ReadAllBytes(infoFile))), "testInfo", "info-test.json"); formData.Add(new StreamContent(new MemoryStream(File.ReadAllBytes(testInfoFile))), "info", "info-execution.json"); formData.Add(new StreamContent(new MemoryStream(File.ReadAllBytes(results[0]))), "results", "FcPropertiesTest.xml"); var request = new HttpRequestMessage(HttpMethod.Post, url) { Content = formData }; // adding header request.Headers.Add("accept", "application/json"); // setting token client.DefaultRequestHeaders.Add("Authorization", Authentication.GetToken()); // Request var response = await client.SendAsync(request); if (response.IsSuccessStatusCode) { return(await response.Content.ReadAsStringAsync()); } else { throw new WebException($"The remote server returned unexpcted status code: {response.StatusCode} - {response.ReasonPhrase}."); } } }