Roland Weber wrote: > how are we going to "unset" a parameter that is defined > somewhere higher up in the hierarchy? The example at hand > is the default proxy. An application defines a default > proxy in the client parameters, but wants a specific > request to be sent without the proxy. Setting the value > to null in the request parameters doesn't work, since > null means "look higher up in the hierarchy". > > Option A: [...] > > Option B: > Define a parameter specific Null object for those > parameters where it matters, with the appropriate > type. That would mean a specific HttpHost constant > indicating NO_PROXY. It must be a valid HttpHost, > but must also never equal a real HttpHost. > We could use an invalid port number such as -2 to > do that, but this approach breaks when HttpHost > gets better argument checking. The same applies for > invalid or otherwise special hostnames or protocols. > > Option C:
In this specific case, we could allow the parameter to be a proxy chain in form of an array, and set an empty array for NO_PROXY. But then we'd have two different types for the same parameter, or we would have to require that a single proxy is also stored as an array. The latter would make the most common use case ugly. cheers, Roland --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
