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 19:10:09 GMT
On Wed, Feb 15, 2017 at 7:49 AM, sebb <sebbaz@gmail.com> wrote:

> On 15 February 2017 at 05:20, Gary Gregory <garydgregory@gmail.com> 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.

Gary


>
> > 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=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: 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