protected virtual void ParseTokens(XPathNavigator xPathNavigator, IList <ITokenDescription> tokens) { foreach (XPathNavigator tokenNavigator in xPathNavigator.SelectChildren("token", "")) { var selectionOptions = GetTokenSelectOptions(tokenNavigator); var tokenInputType = selectionOptions.Any() ? TokenInputForm.Selection : Enum.TryParse(tokenNavigator.GetAttribute("input", ""), out TokenInputForm inputFormat) ? inputFormat : TokenInputForm.Text; var tokenDescription = new TokenDescription { DisplayName = tokenNavigator.GetAttribute("displayName", ""), HelpText = tokenNavigator.GetAttribute("helpText", ""), Key = tokenNavigator.GetAttribute("key", ""), Default = tokenNavigator.GetAttribute("default", ""), InputType = tokenInputType, SelectionOptions = selectionOptions, IsRequired = GetBooleanAttribute("required", tokenNavigator, true) }; var validatorType = tokenNavigator.GetAttribute("validationType", ""); if (!string.IsNullOrEmpty(validatorType)) { tokenDescription.Validator = ManifestTypeInstantiator.CreateInstance <IValidateToken>(validatorType); } var suggestorType = tokenNavigator.GetAttribute("suggestType", ""); if (!string.IsNullOrEmpty(suggestorType)) { tokenDescription.Suggestor = ManifestTypeInstantiator.CreateInstance <ISuggestToken>(suggestorType); } tokens.Add(tokenDescription); } ExpandDefaultValues(0, tokens); }
public TokenFolderInput(TokenDescription tokenDescription) { InitializeComponent(); TokenValueAsPathInputBox.TextChanged += InputChangedEventHandler; TokenDescription = tokenDescription; this.SetVisualStudioThemeStyles(); }
private void ParseReplacementTokens() { var replacemenTokenNavigator = GetRequiredNodeByXPath("/templateManifest/replacementTokens"); foreach (XPathNavigator tokenNavigator in replacemenTokenNavigator.SelectChildren("token", "")) { var selectionOptions = GetTokenSelectOptions(tokenNavigator); var tokenInputType = selectionOptions.Any() ? TokenInputForm.Selection : Enum.TryParse(tokenNavigator.GetAttribute("input", ""), out TokenInputForm inputFormat) ? inputFormat : TokenInputForm.Text; var tokenDescription = new TokenDescription { DisplayName = tokenNavigator.GetAttribute("displayName", ""), Key = tokenNavigator.GetAttribute("key", ""), Default = tokenNavigator.GetAttribute("default", ""), InputType = tokenInputType, SelectionOptions = selectionOptions, IsRequired = GetBooleanAttribute("required", tokenNavigator, true) }; var validatorType = tokenNavigator.GetAttribute("validationType", ""); if (!string.IsNullOrEmpty(validatorType)) { tokenDescription.Validator = ManifestTypeInstantiator.CreateInstance <IValidateToken>(validatorType); } var suggestorType = tokenNavigator.GetAttribute("suggestType", ""); if (!string.IsNullOrEmpty(suggestorType)) { tokenDescription.Suggestor = ManifestTypeInstantiator.CreateInstance <ISuggestToken>(suggestorType); } Manifest.Tokens.Add(tokenDescription); } ExpandDefaultValues(0); }
public TokenSelectionInput(TokenDescription tokenDescription) { InitializeComponent(); TokenDescription = tokenDescription; TokenComboInput.SelectionChanged += InputChangedEventHandler; TokenComboInput.ItemsSource = TokenDescription.SelectionOptions; TokenComboInput.DisplayMemberPath = "Value"; TokenComboInput.SelectedValuePath = "Key"; }
private TokenInputControl GetTokenInputControl(TokenDescription tokenDescription) { switch (tokenDescription.InputType) { case TokenInputForm.Text: return(new TokenTextInput(tokenDescription)); case TokenInputForm.Folder: return(new TokenFolderInput(tokenDescription)); case TokenInputForm.Selection: return(new TokenSelectionInput(tokenDescription)); default: return(new TokenTextInput(tokenDescription)); } }
private TokenDescription GenerateToken(User user) { var tokenHandle = new JwtSecurityTokenHandler(); var date = DateTime.UtcNow; var expired = date.AddMinutes(20); var modules = new List <Claim>(); modules.Add(new Claim("id", user.Id.ToString())); modules.Add(new Claim("username", user.Username)); foreach (var module in user.UsersModules) { modules.Add(new Claim("module", module.Module.Module)); } try { var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(modules), Expires = expired, Audience = _appSettings.Audience, Issuer = _appSettings.Issuer, EncryptingCredentials = new X509EncryptingCredentials(new X509Certificate2(_appSettings.PublicKey)), }; var token = new TokenDescription { Value = tokenHandle.CreateEncodedJwt(tokenDescriptor), Now = date, Expired = expired }; TokenDictionary.Add(user.Id, token); return(token); } catch (System.Exception) { return(null); } }
public TokenCheckboxInput(TokenDescription tokenDescription) { InitializeComponent(); TokenDescription = tokenDescription; this.SetVisualStudioThemeStyles(); }
public TokenCheckboxInput(TokenDescription tokenDescription) { InitializeComponent(); TokenDescription = tokenDescription; }
public void AddTokenDefinition(TokenDescription token) => _availableToken.Add(token);
public TokenFolderInput(TokenDescription tokenDescription) { InitializeComponent(); TokenValueAsPathInputBox.TextChanged += InputChangedEventHandler; TokenDescription = tokenDescription; }