On Tue, 2017-02-14 at 21:20 -0800, Gary Gregory wrote: > I like the idea of having at least setTimeout(long, TimeUnit), and as > a > convenience setTimeoutMillis. This is Millis because milliseconds is > the > underlying scale used by the socket API. > > The question is whether we should add a TimeValue class > setTimeout(TimeValue). The next step is to have a TimeValue subclass > called > Timeout to make the API even more strongly typed. > > We could end up with: > > setTimeout(long, TimeUnit) > setTimeoutMillis(long) > setTimeout(Timeout) > > ? > Gary >
Gary Feel free to exercise your judgment here. Please do keep SocketConfig, IOReactorConfig in core and RequestConfig in client consistent, though. Cheers Oleg > On Fri, Feb 10, 2017 at 4:15 PM, sebb <[email protected]> wrote: > > > Does it make sense to use timeout units other than seconds? > > > > If not, just use > > > > [get|set]TimeoutSeconds > > > > Or if there is a need for milliseconds, then either add > > > > [get|set]TimeoutMilliSeconds > > > > or only provide that. > > > > > > > > On 10 February 2017 at 19:51, Gary Gregory <[email protected]> > > wrote: > > > On Fri, Feb 10, 2017 at 2:10 AM, Oleg Kalnichevski <olegk@apache. > > > org> > > > > wrote: > > > > > > > On Thu, 2017-02-09 at 14:18 -0800, Gary Gregory wrote: > > > > > On Thu, Feb 9, 2017 at 1:56 PM, Bhowmik, Bindul <bindulbhowmi > > > > > k@gmail. > > > > > com> > > > > > > > > > > > > > ... > > > > > > > > > > How about getSoTimeout(TimeUnit) ? Maybe in addition to > > > > > > getSoTimeoutMillis(). > > > > > > > > > > > > > > > > I'm fine with that. My concern is mostly on the setter side. > > > > > > > > > > Gary > > > > > > > > > > > > > I find getter / setter inconsistency equally not-nice. What > > > > about using > > > > a tuple class for all time value settings > > > > > > > > class TimeValue { > > > > long value; > > > > TimeUnit unit; > > > > > > > > } > > > > > > > > Or some such? > > > > > > > > > > Maybe... this becomes wordy though: > > > > > > config.setTimeout(TimeValue.of(1, TimeUnit.SECONDS)); > > > > > > instead of > > > > > > config.setTimeout(1, TimeUnit.SECONDS); > > > > > > which is what I see in the JRE here and there. > > > > > > The nice thing about TimeValue is that the object that uses it > > > does not > > > need to worry about scale in its implementation. > > > > > > If I am coding a Socket class, I have to remember that soTimeout > > > is in > > > milliseconds. If I write the ivar as "soTimeoutMillis" I am > > > documenting > > > > the > > > scale but I am not enforcing it. > > > > > > So I can see that TimeValue, DistanceValue and so one would make > > > for > > > > safer > > > modeling. Less risk of crashing that Mars craft because one team > > > was > > > thinking in metric units and the other in imperial units. > > > > > > So from an implementer's POV I like TimeValue. But from a user's > > > POV > > > > should > > > I have the convenience of setTimeout(long, TimeUnit) AND > > > setTimeout(TimeValue). > > > > > > Gary > > > > > > > > > > Oleg > > > > > > > > > > > > > > > > > > > > > > > > Bindul > > > > > > > > > > > > > > > > > > > > Gary > > > > > > > > > > > > > > > > > > > > > > Oleg > > > > > > > > > > > > > > > > ----------------------------------------------------- > > > > > > > > -------- > > > > > > > > -------- > > > > > > > > To unsubscribe, e-mail: [email protected] > > > > > > > > For additional commands, e-mail: [email protected] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > E-Mail: [email protected] | [email protected] > > > > > > > Java Persistence with Hibernate, Second Edition > > > > > > > <https://www.amazon.com/gp/product/1617290459/ref=as_li_ > > > > > > > > > > > > tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459& > > > > > > linkCode=as2&tag=garygregory- > > > > > > 20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8> > > > > > > > > > > > > > > <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory- > > > > > > > 20&l=am2&o=1&a= > > > > > > > > > > > > 1617290459> > > > > > > > JUnit in Action, Second Edition > > > > > > > <https://www.amazon.com/gp/product/1935182021/ref=as_li_ > > > > > > > > > > > > tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021& > > > > > > linkCode=as2&tag=garygregory- > > > > > > 20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22 > > > > > > > > > > > > > > > > > > > > > <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory- > > > > > > > 20&l=am2&o=1&a= > > > > > > > > > > > > 1935182021> > > > > > > > Spring Batch in Action > > > > > > > <https://www.amazon.com/gp/product/1935182951/ref=as_li_ > > > > > > > > > > > > tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951& > > > > > > linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory- > > > > > > 20&linkId=%7B% > > > > > > 7Blink_id%7D%7D%22%3ESpring+Batch+in+Action> > > > > > > > <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory- > > > > > > > 20&l=am2&o=1&a= > > > > > > > > > > > > 1935182951> > > > > > > > Blog: http://garygregory.wordpress.com > > > > > > > Home: http://garygregory.com/ > > > > > > > Tweet! http://twitter.com/GaryGregory > > > > > > > > > > > > --------------------------------------------------------- > > > > > > -------- > > > > > > ---- > > > > > > To unsubscribe, e-mail: [email protected] > > > > > > For additional commands, e-mail: [email protected] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------- > > > > -------- > > > > To unsubscribe, e-mail: [email protected] > > > > For additional commands, e-mail: [email protected] > > > > > > > > > > > > > > > > > -- > > > E-Mail: [email protected] | [email protected] > > > Java Persistence with Hibernate, Second Edition > > > <https://www.amazon.com/gp/product/1617290459/ref=as_li_ > > > > tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459& > > linkCode=as2&tag=garygregory- > > 20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8> > > > > > > <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory- > > > 20&l=am2&o=1&a= > > > > 1617290459> > > > JUnit in Action, Second Edition > > > <https://www.amazon.com/gp/product/1935182021/ref=as_li_ > > > > tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021& > > linkCode=as2&tag=garygregory- > > 20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22 > > > > > > > > > <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory- > > > 20&l=am2&o=1&a= > > > > 1935182021> > > > Spring Batch in Action > > > <https://www.amazon.com/gp/product/1935182951/ref=as_li_ > > > > tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951& > > linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B% > > 7Blink_id%7D%7D%22%3ESpring+Batch+in+Action> > > > <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory- > > > 20&l=am2&o=1&a= > > > > 1935182951> > > > Blog: http://garygregory.wordpress.com > > > Home: http://garygregory.com/ > > > Tweet! http://twitter.com/GaryGregory > > > > ----------------------------------------------------------------- > > ---- > > To unsubscribe, e-mail: [email protected] > > For additional commands, e-mail: [email protected] > > > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
