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

            return(usernames.ToList());
        }
        public static List <Credential> credentialTypes(this ISecretData secretData, string credentialType)
        {
            var credentials = new List <Credential>();

            if (secretData.isNull())
            {
                return(credentials);
            }
            if (credentialType.valid().isFalse())
            {
                if (secretData != null && secretData.Credentials != null)
                {
                    return(secretData.Credentials);
                }
                else
                {
                    return(credentials);
                }
            }

            foreach (var credential in secretData.Credentials)
            {
                if (credential.CredentialType == credentialType)
                {
                    credentials.add(credential);
                }
            }
            return(credentials);
        }
        public static string password(this ISecretData secretData, string credentialType, int index)
        {
            var credentials = secretData.credentialTypes(credentialType);

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

            if (index < credentials.size())
            {
                return(credentials[index].UserName);
            }
            return("");
        }
 public static string password(this ISecretData secretData, string credentialType, string username)
 {
     foreach (var credential in secretData.Credentials)
     {
         if (credential.UserName == username && credential.CredentialType == credentialType)
         {
             return(credential.Password);
         }
     }
     return("");
 }
 public static ICredential get_User(this ISecretData secretData, string credentialType, string userName)
 {
     if (secretData != null && secretData.Credentials != null)
     {
         foreach (var credential in secretData.Credentials)
         {
             if (credential.UserName == userName)
             {
                 if (credentialType.valid().isFalse() || credentialType == credential.CredentialType)
                 {
                     return(credential);
                 }
             }
         }
     }
     return(null);
 }
 public static string password(this ISecretData secretData, int index)
 {
     return(secretData.password("", index));
 }
 public static string password(this ISecretData secretData, string credentialType)
 {
     return(secretData.password(credentialType, 0));
 }
 public static string password(this ISecretData secretData)
 {
     return(secretData.password("", 0));
 }
 public static ICredential get_User(this ISecretData secretData, string userName)
 {
     return(secretData.get_User("", userName));
 }
 public static List <ICredential> usernames(this ISecretData secretData)
 {
     return(secretData.usernames(""));
 }
 public static string username(this ISecretData secretData, int index)
 {
     return(secretData.username("", index));
 }
 public static string username(this ISecretData secretData, string credentialType)
 {
     return(secretData.username(credentialType, 0));
 }
 public static string username(this ISecretData secretData)
 {
     return(secretData.username("", 0));
 }