public void SetDefaultAudioDevice(AudioDevice device, AudioDeviceRole role = AudioDeviceRole.Multimedia) { if (device == null) { throw new ArgumentNullException(nameof(device)); } var config = new PolicyConfig(); int hr; if (config is IPolicyConfig2 config2) { // Windows 7 -> Windows 8.1 hr = config2.SetDefaultEndpoint(device.Id, role); } else { // Windows 10+ hr = ((IPolicyConfig3)config).SetDefaultEndpoint(device.Id, role); } if (hr != HResult.OK) { throw Marshal.GetExceptionForHR(hr); } }
public void SetDefaultAudioDevice(AudioDevice device, AudioDeviceRole role) { if (device == null) throw new ArgumentNullException("device"); // BADNESS: The following code uses undocumented interfaces provided by the Audio SDK. This is completely // unsupported, and should be used for amusement purposes only. This is *extremely likely* to be broken // in future updates and/or versions of Windows. If Larry Osterman was dead, he would be rolling over // in his grave if he knew you were using this for nefarious purposes. var config = new PolicyConfig(); int hr; IPolicyConfig2 config2 = config as IPolicyConfig2; if (config2 != null) { // Windows 7 -> Windows 8.1 hr = config2.SetDefaultEndpoint(device.Id, role); } else { // Windows 10+ hr = ((IPolicyConfig3)config).SetDefaultEndpoint(device.Id, role); } if (hr != HResult.OK) throw Marshal.GetExceptionForHR(hr); }
void IPolicyConfigControl.ReadFromConfig(PolicyConfig config) { SkipMergesCheckBox.Checked = config.SkipMerges; SkipBranchesCheckBox.Checked = config.SkipBranches; SkipRollbacksCheckBox.Checked = config.SkipRollbacks; SkipUndeletesCheckBox.Checked = config.SkipUndeletes; }
protected override void ProcessInternal(INamedTypeSymbol symbol, PolicyConfig policyConfig, IViolationReporter violationReporter) { ClassConfig config = policyConfig.StructConfig; if (!AnyVisibilityMatches(symbol.DeclaredAccessibility, config.VisibilitiesToCheck)) { return; } IDocumentationComment classDocumentation = symbol.GetDocumentationComment(); if (config.SampleDocumentationRequired && string.IsNullOrWhiteSpace(classDocumentation.ExampleText)) { violationReporter.Report(ViolationFromSymbol(ViolationMessage.MissingSampleDocumentation, symbol)); } if (config.SummaryDocumentationRequired && string.IsNullOrWhiteSpace(classDocumentation.SummaryText)) { violationReporter.Report(ViolationFromSymbol(ViolationMessage.MissingSummaryDocumentation, symbol)); } if (!symbol.TypeParameters.IsEmpty && config.GenericParameterDocumentationRequired) { foreach (ITypeParameterSymbol typeParameter in symbol.TypeParameters) { if (string.IsNullOrWhiteSpace(classDocumentation.GetTypeParameterText(typeParameter.Name))) { violationReporter.Report(ViolationFromSymbol(string.Format(ViolationMessage.MissingTypeParameter, typeParameter.Name), symbol)); } } } ProcessChildren(symbol, policyConfig, violationReporter); }
void IPolicyConfigControl.WriteToConfig(PolicyConfig config) { config.SkipMerges = SkipMergesCheckBox.Checked; config.SkipBranches = SkipBranchesCheckBox.Checked; config.SkipRollbacks = SkipRollbacksCheckBox.Checked; config.SkipUndeletes = SkipUndeletesCheckBox.Checked; }
public void SetDefaultAudioDevice(SoundControllServer.AudioDevice device, AudioDeviceRole role) { if (device == null) { throw new ArgumentNullException("device"); } // BADNESS: The following code uses undocumented interfaces provided by the Audio SDK. This is completely // unsupported, and should be used for amusement purposes only. This is *extremely likely* to be broken // in future updates and/or versions of Windows. If Larry Osterman was dead, he would be rolling over // in his grave if he knew you were using this for nefarious purposes. var config = new PolicyConfig(); int hr; IPolicyConfig2 config2 = config as IPolicyConfig2; if (config2 != null) { // Windows 7 -> Windows 8.1 hr = config2.SetDefaultEndpoint(device.Id, role); } else { // Windows 10+ hr = ((IPolicyConfig3)config).SetDefaultEndpoint(device.Id, role); } if (hr != HResult.OK) { throw Marshal.GetExceptionForHR(hr); } }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddIdentityWithMongoStoresUsingCustomTypes <Usuario, UsuarioRole>(Configuration.GetSection("MongoConnectionStrings:ConnectionStringFull").Value) .AddDefaultTokenProviders(); services.AddAuthorization(opt => PolicyConfig.Configurar(opt)); AuthenticationConfig.Configurar(services, Configuration); NativeInjection.RegisterDependencys(services); services.AddOptions(); services.AddMvc(opt => { var policy = new AuthorizationPolicyBuilder() .AddAuthenticationSchemes(JwtBearerDefaults.AuthenticationScheme) .RequireAuthenticatedUser() .Build(); opt.Filters.Add(new AuthorizeFilter(policy)); }); services.AddSwaggerGen(s => { s.SwaggerDoc("v1", new Swashbuckle.AspNetCore.Swagger.Info { Title = "Delivery API", Version = "v1" }); }); }
protected override void Process(ISymbol symbol, PolicyConfig policyConfig, IViolationReporter violationReporter) { EventConfig config = policyConfig.EventConfig; if (symbol.IsOverride && !config.DocumentOverrides) { return; } if (symbol.ContainingType != null && symbol.ContainingType.TypeKind == TypeKind.Interface && !config.InterfaceDeclarationDocumentationRequired) { return; } if (!symbol.CanBeReferencedByName && !config.ExplicitInterfaceEventDocumentationRequired) { return; } if (!AnyVisibilityMatches(symbol.DeclaredAccessibility, config.VisibilitiesToCheck) && symbol.CanBeReferencedByName) { return; } IDocumentationComment documentation = symbol.GetDocumentationComment(); if (config.SummaryDocumentationRequired && string.IsNullOrWhiteSpace(documentation.SummaryText)) { violationReporter.Report(ViolationFromSymbol(ViolationMessage.MissingSummaryDocumentation, symbol)); } }
protected void ProcessChildren(INamespaceOrTypeSymbol namespaceOrTypeSymbol, PolicyConfig policyConfig, IViolationReporter violationReporter) { foreach (ISymbol childSymbol in namespaceOrTypeSymbol.GetMembers()) { new CodeCommentsFacade().GetSymbolProcessorFactory().CreateSymbolProcessor(childSymbol).Process(childSymbol, policyConfig, violationReporter); } }
public static void SetDefaultAudioDevice(MMDevice mMDevice) { try { var config = new PolicyConfig(); int hr1; int hr2; int hr3; bool? win10 = null; IPolicyConfig2 config2 = config as IPolicyConfig2; if (config2 != null) { win10 = false; hr1 = config2.SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Multimedia); hr2 = config2.SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Communications); hr3 = config2.SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Console); } else { win10 = true; hr1 = ((IPolicyConfig3)config).SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Multimedia); hr2 = ((IPolicyConfig3)config).SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Communications); hr3 = ((IPolicyConfig3)config).SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Console); } Toolbox.uAddDebugLog($"NAudio HResult Definitions: s_OK({HResult.S_OK}) | s_FALSE({HResult.S_FALSE}) | e_INVALIDARG({HResult.E_INVALIDARG})"); Toolbox.uAddDebugLog($"SetAudioDefaultResults: win10({win10}) | hr1({hr1}) | hr2({hr2}) | hr3({hr3})"); } catch (Exception ex) { Toolbox.LogException(ex); } }
public bool SetDefaultCommunicationsDevice(SystemAudioDevice dev) { if (dev == null) { return(false); } try { if (Environment.OSVersion.Version.Major > 6 || (Environment.OSVersion.Version.Major == 6 && Environment.OSVersion.Version.Minor >= 1) ) { PolicyConfig.SetDefaultEndpoint(dev.Device.ID, Role.Communications); } else { PolicyConfigVista.SetDefaultEndpoint(dev.Device.ID, Role.Communications); } return(true); } catch { return(false); } }
private static List <PolicyConfig> PolicyConfigs(List <Type> types) { var policies = new List <PolicyConfig>(); foreach (var type in types) { var policyObject = policies.FirstOrDefault(x => x.ControllerName.Equals(type.Name.ToLower())); if (policyObject == null) { policyObject = new PolicyConfig() { ControllerName = type.Name.ToLower().Replace("controller", "") }; } var ControllerAttributes = type.GetMethods().Select(x => x.GetCustomAttributes <AuthorizeAttribute>()).ToList(); foreach (var attr in ControllerAttributes) { var ProlicyAttributes = attr.Where(x => !string.IsNullOrWhiteSpace(x.Policy)).ToList(); if (ProlicyAttributes.Count < 1) { continue; } #region Scope var ProlicyAttributes_Scope = ProlicyAttributes .Where(x => x.Policy.IndexOf($"{PolicyKey.ClientScope}:") > -1).ToList(); if (ProlicyAttributes_Scope.Count > 0) { ProlicyAttributes_Scope.ForEach(x => { policyObject.Scopes.Add(x.Policy.Replace($"{PolicyKey.ClientScope}:", "")); }); } #endregion #region Permission var ProlicyAttributes_Permission = ProlicyAttributes .Where(x => x.Policy.IndexOf($"{PolicyKey.UserPermission}:") > -1).ToList(); if (ProlicyAttributes_Permission.Count > 0) { ProlicyAttributes_Permission.ForEach(x => { policyObject.Permissions.Add(x.Policy.Replace($"{PolicyKey.UserPermission}:", "")); }); } #endregion } policies.Add(policyObject); } return(policies); }
void IPolicyConfigControl.WriteToConfig(PolicyConfig config) { FieldConfig controlConfig = config.FieldConfig; controlConfig.VisibilitiesToCheck = Visibilities.GetVisibilites(); controlConfig.SummaryDocumentationRequired = SummaryDocumentationTagCheckBox.Checked; }
void IPolicyConfigControl.ReadFromConfig(PolicyConfig config) { FieldConfig controlConfig = config.FieldConfig; Visibilities.Bind(controlConfig.VisibilitiesToCheck); SummaryDocumentationTagCheckBox.Checked = controlConfig.SummaryDocumentationRequired; }
public void SingleClassWithFilledSummary() { string fileContent = Util.GetFileContent("Single class with filled summary.txt"); PolicyConfig config = new PolicyConfig().LoadDefaults(); ViolationStore violationStore = new CodeCommentsFacade().CheckCodeDocumentation(fileContent, config); Assert.IsFalse(violationStore.HasViolations); }
void IPolicyConfigControl.WriteToConfig(PolicyConfig config) { ClassConfig controlConfig = GetConfig(config); controlConfig.VisibilitiesToCheck = Visibilities.GetVisibilites(); controlConfig.GenericParameterDocumentationRequired = GenericParametersOptionCheckBox.Checked; controlConfig.SampleDocumentationRequired = SampleDocumentationTagCheckBox.Checked; controlConfig.SummaryDocumentationRequired = SummaryDocumentationTagCheckBox.Checked; }
void IPolicyConfigControl.ReadFromConfig(PolicyConfig config) { ClassConfig controlConfig = GetConfig(config); Visibilities.Bind(controlConfig.VisibilitiesToCheck); GenericParametersOptionCheckBox.Checked = controlConfig.GenericParameterDocumentationRequired; SampleDocumentationTagCheckBox.Checked = controlConfig.SampleDocumentationRequired; SummaryDocumentationTagCheckBox.Checked = controlConfig.SummaryDocumentationRequired; }
protected override void Process(ISymbol symbol, PolicyConfig policyConfig, IViolationReporter violationReporter) { if (symbol.Kind != SymbolKind.Namespace) { throw new ArgumentException(string.Format("symbol is not of kind: Namespace. It's of type: {0}", symbol.Kind)); } ProcessChildren((INamespaceSymbol)symbol, policyConfig, violationReporter); }
public ViolationStore CheckFileDocumentation(string filePath, PolicyConfig policyConfig) { if (!File.Exists(filePath)) { throw new FileNotFoundException($"Could not find file '{filePath}'"); } SyntaxTree tree = CSharpSyntaxTree.ParseText(File.ReadAllText(filePath), path: filePath); return(CheckFileDocumentation(tree, policyConfig)); }
public ViolationStore CheckCodeDocumentation(string csharpCode, PolicyConfig policyConfig) { if (csharpCode == null) { throw new ArgumentNullException(nameof(csharpCode)); } SyntaxTree tree = CSharpSyntaxTree.ParseText(csharpCode); return(CheckFileDocumentation(tree, policyConfig)); }
private PolicyConfig GetDeactivatedConfig() { PolicyConfig config = new PolicyConfig(); config.ToggleRuleActivation(false); config.ClassConfig.VisibilitiesToCheck = new HashSet <Visibility> { Visibility.Public }; return(config); }
void IPolicyConfigControl.WriteToConfig(PolicyConfig config) { EventConfig controlConfig = config.EventConfig; controlConfig.VisibilitiesToCheck = Visibilities.GetVisibilites(); controlConfig.DocumentOverrides = OverridesOptionCheckBox.Checked; controlConfig.ExplicitInterfaceEventDocumentationRequired = ExplicitOptionCheckBox.Checked; controlConfig.InterfaceDeclarationDocumentationRequired = InterfaceOptionCheckBox.Checked; controlConfig.SummaryDocumentationRequired = SummaryDocumentationTagCheckBox.Checked; }
void IPolicyConfigControl.ReadFromConfig(PolicyConfig config) { EventConfig controlConfig = config.EventConfig; Visibilities.Bind(controlConfig.VisibilitiesToCheck); OverridesOptionCheckBox.Checked = controlConfig.DocumentOverrides; ExplicitOptionCheckBox.Checked = controlConfig.ExplicitInterfaceEventDocumentationRequired; InterfaceOptionCheckBox.Checked = controlConfig.InterfaceDeclarationDocumentationRequired; SummaryDocumentationTagCheckBox.Checked = controlConfig.SummaryDocumentationRequired; }
void IPolicyConfigControl.ReadFromConfig(PolicyConfig config) { DelegateConfig controlConfig = config.DelegateConfig; Visibilities.Bind(controlConfig.VisibilitiesToCheck); GenericParametersOptionCheckBox.Checked = controlConfig.GenericParameterDocumentationRequired; ParametersOptionCheckBox.Checked = controlConfig.ParameterDocumentationRequired; ReturnsDocumentationTagCheckBox.Checked = controlConfig.ResultDocumentationRequired; SampleDocumentationTagCheckBox.Checked = controlConfig.SampleDocumentationRequired; SummaryDocumentationTagCheckBox.Checked = controlConfig.SummaryDocumentationRequired; }
protected override void ProcessInternal(INamedTypeSymbol symbol, PolicyConfig policyConfig, IViolationReporter violationReporter) { DelegateConfig config = policyConfig.DelegateConfig; if (!AnyVisibilityMatches(symbol.DeclaredAccessibility, config.VisibilitiesToCheck)) { return; } if (symbol.DelegateInvokeMethod == null) { return; } IDocumentationComment documentation = symbol.GetDocumentationComment(); if (config.SampleDocumentationRequired && string.IsNullOrWhiteSpace(documentation.ExampleText)) { violationReporter.Report(ViolationFromSymbol(ViolationMessage.MissingSampleDocumentation, symbol)); } if (config.SummaryDocumentationRequired && string.IsNullOrWhiteSpace(documentation.SummaryText)) { violationReporter.Report(ViolationFromSymbol(ViolationMessage.MissingSummaryDocumentation, symbol)); } if (config.ResultDocumentationRequired && !symbol.DelegateInvokeMethod.ReturnsVoid && string.IsNullOrWhiteSpace(documentation.ReturnsText)) { violationReporter.Report(ViolationFromSymbol(ViolationMessage.MissingReturnsDocumentation, symbol)); } if (config.ParameterDocumentationRequired && !symbol.DelegateInvokeMethod.Parameters.IsEmpty) { foreach (IParameterSymbol parameterSymbol in symbol.DelegateInvokeMethod.Parameters) { if (string.IsNullOrWhiteSpace(documentation.GetParameterText(parameterSymbol.Name))) { violationReporter.Report(ViolationFromSymbol(string.Format(ViolationMessage.MissingParameter, parameterSymbol.Name), symbol)); } } } if (config.GenericParameterDocumentationRequired && !symbol.TypeParameters.IsEmpty) { foreach (ITypeParameterSymbol typeParameter in symbol.TypeParameters) { if (string.IsNullOrWhiteSpace(documentation.GetTypeParameterText(typeParameter.Name))) { violationReporter.Report(ViolationFromSymbol(string.Format(ViolationMessage.MissingTypeParameter, typeParameter.Name), symbol)); } } } }
public Task Execute(IJobExecutionContext context) { var logger = new TextFileLogger(); var policyConfig = new PolicyConfig(); ITaskHandler taskHandler = new PolicyTaskHandler(logger, policyConfig); taskHandler.Process(); //logger.Log(LogLevel.Debug, "测试"); return(Task.CompletedTask); }
void IPolicyConfigControl.WriteToConfig(PolicyConfig config) { DelegateConfig controlConfig = config.DelegateConfig; controlConfig.VisibilitiesToCheck = Visibilities.GetVisibilites(); controlConfig.GenericParameterDocumentationRequired = GenericParametersOptionCheckBox.Checked; controlConfig.ParameterDocumentationRequired = ParametersOptionCheckBox.Checked; controlConfig.ResultDocumentationRequired = ReturnsDocumentationTagCheckBox.Checked; controlConfig.SampleDocumentationRequired = SampleDocumentationTagCheckBox.Checked; controlConfig.SummaryDocumentationRequired = SummaryDocumentationTagCheckBox.Checked; }
public void SingleClassWithEmptySummary() { string fileContent = Util.GetFileContent("Single class with empty summary.txt"); PolicyConfig config = new PolicyConfig().LoadDefaults(); ViolationStore violationStore = new CodeCommentsFacade().CheckCodeDocumentation(fileContent, config); List <Violation> violations = violationStore.Violations.ToList(); Assert.AreEqual(1, violations.Count); Violation classViolation = violations.First(); Assert.AreEqual(Constants.MissingSummaryMessage, classViolation.Message); Assert.AreEqual("CDCP.Tests.SampleCode.Test1", classViolation.FullSymbolName); }
void IPolicyConfigControl.ReadFromConfig(PolicyConfig config) { MethodConfig controlConfig = config.MethodConfig; Visibilities.Bind(controlConfig.VisibilitiesToCheck); GenericParametersOptionCheckBox.Checked = controlConfig.GenericParameterDocumentationRequired; ParametersOptionCheckBox.Checked = controlConfig.ParameterDocumentationRequired; OverridesOptionCheckBox.Checked = controlConfig.DocumentOverrides; ExplicitOptionCheckBox.Checked = controlConfig.ExplicitInterfaceMethodDocumentationRequired; InterfaceOptionCheckBox.Checked = controlConfig.InterfaceDeclarationDocumentationRequired; ReturnsDocumentationTagCheckBox.Checked = controlConfig.ResultDocumentationRequired; SampleDocumentationTagCheckBox.Checked = controlConfig.SampleDocumentationRequired; SummaryDocumentationTagCheckBox.Checked = controlConfig.SummaryDocumentationRequired; }
public static IHttpClientBuilder AddPolicyHandlers(this IHttpClientBuilder httpClientBuilder, string policySectionName, ILoggerFactory loggerFactory, IConfiguration configuration) { var retryLogger = loggerFactory.CreateLogger("PollyHttpRetryPoliciesLogger"); var circuitBreakerLogger = loggerFactory.CreateLogger("PollyHttpCircuitBreakerPoliciesLogger"); var policyConfig = new PolicyConfig(); configuration.Bind(policySectionName, policyConfig); var circuitBreakerPolicyConfig = (ICircuitBreakerPolicyConfig)policyConfig; var retryPolicyConfig = (IRetryPolicyConfig)policyConfig; return(httpClientBuilder.AddRetryPolicyHandler(retryLogger, retryPolicyConfig) .AddCircuitBreakerHandler(circuitBreakerLogger, circuitBreakerPolicyConfig)); }
void IPolicyConfigControl.WriteToConfig(PolicyConfig config) { MethodConfig controlConfig = config.MethodConfig; controlConfig.VisibilitiesToCheck = Visibilities.GetVisibilites(); controlConfig.GenericParameterDocumentationRequired = GenericParametersOptionCheckBox.Checked; controlConfig.ParameterDocumentationRequired = ParametersOptionCheckBox.Checked; controlConfig.DocumentOverrides = OverridesOptionCheckBox.Checked; controlConfig.ExplicitInterfaceMethodDocumentationRequired = ExplicitOptionCheckBox.Checked; controlConfig.InterfaceDeclarationDocumentationRequired = InterfaceOptionCheckBox.Checked; controlConfig.ResultDocumentationRequired = ReturnsDocumentationTagCheckBox.Checked; controlConfig.SampleDocumentationRequired = SampleDocumentationTagCheckBox.Checked; controlConfig.SummaryDocumentationRequired = SummaryDocumentationTagCheckBox.Checked; }