hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Gregory <garydgreg...@gmail.com>
Subject Re: SocketConfig (v5)
Date Wed, 15 Feb 2017 05:20:22 GMT
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

On Fri, Feb 10, 2017 at 4:15 PM, sebb <sebbaz@gmail.com> 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 <garydgregory@gmail.com> 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 <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: dev-unsubscribe@hc.apache.org
> >> > > > > For additional commands, e-mail: dev-help@hc.apache.org
> >> > > > >
> >> > > > >
> >> > > >
> >> > > >
> >> > > > --
> >> > > > E-Mail: garydgregory@gmail.com | ggregory@apache.org
> >> > > > 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: dev-unsubscribe@hc.apache.org
> >> > > For additional commands, e-mail: dev-help@hc.apache.org
> >> > >
> >> > >
> >> >
> >> >
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
> >> For additional commands, e-mail: dev-help@hc.apache.org
> >>
> >>
> >
> >
> > --
> > E-Mail: garydgregory@gmail.com | ggregory@apache.org
> > 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: dev-unsubscribe@hc.apache.org
> For additional commands, e-mail: dev-help@hc.apache.org
>
>


-- 
E-Mail: garydgregory@gmail.com | ggregory@apache.org
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

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message