public static List <Credential> usernames(this SecretData secretData, string credentialType)
        {
            var usernames = from credential in secretData.credentialTypes(credentialType)
                            select credential;

            return(usernames.ToList());
        }
        public static string password(this SecretData secretData, string credentialType, int index)
        {
            var credentials = secretData.credentialTypes(credentialType);

            if (index < credentials.size())
            {
                return(credentials[index].Password);
            }
            return("");
        }
        public static string username(this SecretData secretData, string credentialType, int index)
        {
            var credentials = secretData.credentialTypes(credentialType);

            if (index < credentials.size())
            {
                return(credentials[index].UserName);
            }
            return("");
        }
 public static Credential credential(this SecretData secretData, string credentialTypeOrName)
 {
     if (secretData != null)
     {
         var credentials = secretData.credentialTypes(credentialTypeOrName);
         if (credentials != null && credentials.size() > 0)
         {
             return(credentials[0]);
         }
         "Finding by Username".debug();
         foreach (var credential in secretData.Credentials)
         {
             if (credential.CredentialType == credentialTypeOrName || credential.UserName == credentialTypeOrName)
             {
                 "found credential.UserName: {0} with type: {1}".info(credential.UserName, credential.CredentialType);
                 return(credential);
             }
         }
     }
     return(null);
 }