On 15 February 2017 at 19:10, Gary Gregory <[email protected]> wrote: > On Wed, Feb 15, 2017 at 7:49 AM, sebb <[email protected]> wrote: > >> On 15 February 2017 at 05:20, Gary Gregory <[email protected]> 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. >> >> Not sure I see why a timeout period is different from any other time >> period. >> So I don't see how it helps to use a different class for the setTimeout >> method. >> >> Would there also be a SleepTime sub-class for a pause function? >> > > I do not see use cases at this time for more TimeValue subclasses. It > really depends if there is a chance of confusion from the call site's POV. > For, now, I think a TimeValue class will be enough.
I agree. However I took your mail to mean you wanted to create a subclass of TimeValue called TimeOut: <quote> 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) </quote> Do you still think a TimeOut subclass is needed? > Gary > > >> >> > We could end up with: >> > >> > setTimeout(long, TimeUnit) >> > setTimeoutMillis(long) >> > setTimeout(Timeout) >> > >> > ? >> > Gary >> > >> > 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 <[email protected]> >> >> wrote: >> >> > >> >> >> On Thu, 2017-02-09 at 14:18 -0800, Gary Gregory wrote: >> >> >> > On Thu, Feb 9, 2017 at 1:56 PM, Bhowmik, Bindul >> <bindulbhowmik@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=cadb800f39946ec62ea2b1af9fe6a2 >> b8> >> >> > >> >> > <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=31ecd1f6b6d1eaf8886ac902a24de4 >> 18%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] >> >> >> >> >> > >> > >> > -- >> > 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] >> >> > > > -- > 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]
