On Tue, Sep 3, 2019 at 8:53 PM Gary Gregory <garydgreg...@gmail.com> wrote:

> Here is the PR with [lang]'s own call sites updated to use the new code:
>

https://github.com/apache/commons-lang/pull/450

Gary


>
> Gary
>
> On Tue, Sep 3, 2019 at 2:13 PM Gary Gregory <garydgreg...@gmail.com>
> wrote:
>
>> On Tue, Sep 3, 2019 at 1:19 PM Rob Spoor <apa...@icemanx.nl> wrote:
>>
>>> Why limit this to IllegalArgument? Why not make it more generic? For
>>> instance, in ExceptionUtils:
>>>
>>> public static <T extends Throwable> T format(final Function<? super
>>> String, ? extends T> factory, final String format, final Object... args)
>>> {
>>>      return factory.apply(String.format(format, args));
>>> }
>>>
>>> public static <T extends Throwable> T format(final BiFunction<? super
>>> String, ? super Throwable, ? extends T> factory, final Throwable t,
>>> final String format, final Object... args) {
>>>      return factory.apply(String.format(format, args), t);
>>> }
>>>
>>> These can then be called using
>>> ExceptionUtils.format(IllegalArgumentException::new, "message: %s",
>>> message) or ExceptionUtils.format(IllegalArgumentException::new, cause,
>>> "message: %s", message).
>>>
>>> It's a bit verbose though, but it gives a lot more flexibility.
>>>
>>
>> Yes, we could add these to ExceptionUtils separately IMO; but, the
>> verbosity is an issue for me. This is straightforward:
>>
>> throw IllegalArgumentExceptions.format(e, "%s: %s %s operation %s: %s",
>> source, method, pathSpec, operation.getOperationId(), e.toString());
>>
>> The following not as much:
>>
>> throw ExceptionUtils.format(IllegalArgumentException::new, e, "%s: %s %s
>> operation %s: %s", source, method, pathSpec, operation.getOperationId(),
>> e.toString());
>>
>> So it could be that IllegalArgumentExceptions.format() is implemented in
>> terms of ExceptionUtils.format but there does not seem to be much to gain
>> from that.
>>
>> Gary
>>
>>
>>>
>>> On 03/09/2019 19:04, Gary Gregory wrote:
>>> > Please read the source.
>>> >
>>> > On Tue, Sep 3, 2019, 12:27 Xeno Amess <xenoam...@gmail.com> wrote:
>>> >
>>> >> Why don't you use java.lang.IllegalArgumentException instead?
>>> >> And, why we need such a class, but not using
>>> >> java.lang.IllegalArgumentException there?
>>> >>
>>> >> Gary Gregory <garydgreg...@gmail.com> 于2019年9月3日周二 下午11:18写道:
>>> >>>
>>> >>> Hi All:
>>> >>>
>>> >>> I propose we take
>>> >>>
>>> >>
>>> https://commons.apache.org/proper/commons-text/xref/org/apache/commons/text/lookup/IllegalArgumentExceptions.html#IllegalArgumentExceptions
>>> >>> and make it a public class in [lang]. FWIW, I use a class like this
>>> in
>>> >> many
>>> >>> projects at work.
>>> >>>
>>> >>> Gary
>>> >>
>>> >> ---------------------------------------------------------------------
>>> >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
>>> >> For additional commands, e-mail: dev-h...@commons.apache.org
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
>>> For additional commands, e-mail: dev-h...@commons.apache.org
>>>
>>>

Reply via email to