GetOption() public method

Get Option from OPtionId enumeration
public GetOption ( OptionId optionId ) : Option
optionId OptionId
return Option
Exemplo n.º 1
0
        /// <summary>
        /// Get state of FileZilla server
        /// </summary>
        /// <returns>True if Success</returns>
        public bool SetSettings(Settings settings)
        {
            // Check options
            if (ProtocolVersion < ProtocolVersions.TLS
                ? settings.Options.Count != (int)OptionId.V11_OPTIONS_NUM
                : settings.Options.Count != (int)OptionId.V12_OPTIONS_NUM)
            {
                throw new ApiException("Bad option count");
            }

            // Before serializing, give Admin Password option special treatment.
            // If password is null, then set it to invalid ("*").
            // That way server can distinguish between
            //   - Not set (Null, serialized as "*")
            //   - Blank password ("")
            //   - Actual password
            var adminPassword = settings.GetOption(OptionId.ADMINPASS);

            if (adminPassword.TextValue == null)
            {
                adminPassword.TextValue = "*";
            }

            SendCommand(MessageType.Settings, writer => settings.Serialize(writer, ProtocolVersion));
            return(Receive <bool>(MessageType.Settings));
        }
        /// <summary>
        /// Get state of FileZilla server
        /// </summary>
        /// <returns>True if Success</returns>
        public bool SetSettings(Settings settings)
        {
            // Check options
            if(ProtocolVersion < ProtocolVersions.TLS 
                ? settings.Options.Count != (int)OptionId.V11_OPTIONS_NUM
                : settings.Options.Count != (int)OptionId.V12_OPTIONS_NUM)
                throw new ApiException("Bad option count");
            
            // Before serializing, give Admin Password option special treatment. 
            // If password is null, then set it to invalid ("*").
            // That way server can distinguish between 
            //   - Not set (Null, serialized as "*")
            //   - Blank password ("")
            //   - Actual password
            var adminPassword = settings.GetOption(OptionId.ADMINPASS);
            if (adminPassword.TextValue == null) adminPassword.TextValue = "*";

            SendCommand(MessageType.Settings, writer => settings.Serialize(writer, ProtocolVersion));
            return Receive<bool>(MessageType.Settings);
        }