hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebb <seb...@gmail.com>
Subject Re: SocketConfig (v5)
Date Thu, 30 Mar 2017 02:26:16 GMT
On 30 March 2017 at 02:27, Gary Gregory <garydgregory@gmail.com> wrote:
> On Mar 29, 2017 5:31 PM, "sebb" <sebbaz@gmail.com> wrote:
>
> On 29 March 2017 at 21:50, Gary Gregory <garydgregory@gmail.com> wrote:
>> 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?
>
> We keep having this discussion.
> Just because the Java 8 suits developers does not mean it suits users.
>
> There are lots of users who cannot upgrade easily (or at all) so we
> should not exclude them just because it is a bit easier for some devs.
>
>
> It feels to me like we are way too conservative here. Hibernate, Teiid,
> Jetty are on Java 8 already. How long is long enough?

Those are generally further up the dependency chain.

HC (and most of Commons) can be buried deep in systems where upgrading
Java is not an option.

> Gary
>
>
>> Gary
>>
>> On Thu, Feb 16, 2017 at 6:47 AM, sebb <sebbaz@gmail.com> wrote:
>>
>>> On 15 February 2017 at 19:10, Gary Gregory <garydgregory@gmail.com>
> wrote:
>>> > 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.
>>>
>>> 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 <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=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=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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org


Mime
View raw message