I really want to do this TimeValue thing but when I look at Java 8, I see the Duration class.
So why not move HC to Java 8? Why are we hung up on Java 7? Gary On Thu, Feb 16, 2017 at 6:47 AM, sebb <[email protected]> wrote: > 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=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
