Keyczar.MutableKeySet.Demote C# (CSharp) Méthode

Demote() public méthode

Demotes the specified version.
public Demote ( int version ) : KeyStatus
version int The version.
Résultat KeyStatus
        public KeyStatus Demote(int version)
        {
            var ver = Metadata.Versions.FirstOrDefault(it => it.VersionNumber == version);
            if (ver == null)
                return null;

            if (ver.Status == KeyStatus.Primary)
            {
                ver.Status = KeyStatus.Active;
            }
            else if (ver.Status == KeyStatus.Active)
            {
                ver.Status = KeyStatus.Inactive;
            }

            return ver.Status;
        }

Usage Example

Exemple #1
0
        public override int Run(string[] remainingArguments)
        {
            using (var keySet = new MutableKeySet(_location))
            {
                var status = keySet.Demote(_version);
                if (status == null)
                {
                    Console.WriteLine("{0} {1}", Localized.MsgUnknownVersion, _version);
                    return -1;
                }
                try
                {
                    if (keySet.Save(new KeySetWriter(_location, overwrite: true)))
                    {
                        Console.WriteLine(Localized.MsgDemotedVersion, _version, status);
                        return 0;
                    }
                }
                catch
                {
                }
            }

            Console.WriteLine("{0} {1}", Localized.MsgCouldNotWrite, _location);
            return -1;
        }