<Sound Dev> [10] Review Request: 8181566 JavaSound javadoc clarification
Alex Menkov
alexey.menkov at oracle.com
Tue Aug 29 20:57:10 UTC 2017
The fix looks good.
I've added myself as a reviewer at the CSR.
--alex
On 08/21/2017 16:02, Sergey Bylokhov wrote:
> Hi, Alex.
> Here is an updated webrev:
> http://cr.openjdk.java.net/~serb/8181566/webrev.03
>
> The new CSR:
> https://bugs.openjdk.java.net/browse/JDK-8185020
>
> On 17.08.2017 9:48, Alex Menkov wrote:
>> Hi Sergey,
>>
>> I'm fine with this ("the same" (for 2nd case) looks more clear to me,
>> but "identical" is also ok)
>>
>> --alex
>>
>> On 07/30/2017 16:07, Sergey Bylokhov wrote:
>>> Hi, Alex.
>>> Thank you for review!
>>> I would like to propose and discuss other text:
>>>
>>> If the "equals()" method is overridden to not use "==":
>>>
>>> /**
>>> * Indicates whether the specified object is equal to this info
>>> object,
>>> * returning {@code true} if the objects are equal.
>>> *
>>> * @param obj the reference object with which to compare
>>> * @return {@code true} the specified object is equal to this info
>>> * object; {@code false} otherwise
>>> */
>>> public final boolean equals(Object obj) {
>>>
>>>
>>> And two versions if the "==" from Object is used:
>>>
>>> /**
>>> * Indicates whether the specified object is equal to this info
>>> object,
>>> * returning {@code true} if the objects are identical.
>>> *
>>> * @param obj the reference object with which to compare
>>> * @return {@code true} the specified object is equal to this info
>>> * object; {@code false} otherwise
>>> */
>>> public final boolean equals(Object obj) {
>>>
>>> or:
>>>
>>> /**
>>> * Indicates whether the specified object is equal to this info
>>> object,
>>> * returning {@code true} if the objects are the same.
>>> *
>>> * @param obj the reference object with which to compare
>>> * @return {@code true} the specified object is equal to this info
>>> * object; {@code false} otherwise
>>> */
>>> public final boolean equals(Object obj) {
>>>
>>>
>>> In all versions the text in "@return " tag is short and the same. But
>>> description have different words about the objects:
>>> "identical"/"equal"/"the same".
>>>
>>> ps: The text for the current fix was copied from the Integer.java
>>> which I usually use when in doubts.
>>>
>>> ----- alexey.menkov at oracle.com wrote:
>>>
>>>> MidiSystem.java:
>>>>
>>>> @@ -1096,22 +1113,26 @@
>>>> return device;
>>>> }
>>>> }
>>>> }
>>>>
>>>> - /* Provider class not specified or cannot be found, or
>>>> - provider class specified, and no appropriate device available or
>>>> - provider class and instance specified and instance cannot be found
>>>> or
>>>> is not appropriate */
>>>> + /*
>>>> + * Provider class not specified or cannot be found, or provider
>>>> class
>>>> + * specified, and no appropriate device available or provider class
>>>> and
>>>> + * instance specified and instance cannot be found or is not
>>>> appropriate
>>>> + */
>>>>
>>>> Old comment looks better (each "or" condition in a separate line)
>>>>
>>>> - /* No default are specified, or if something is specified,
>>>> everything
>>>> - failed. */
>>>> + /*
>>>> + * No default are specified, or if something is specified,
>>>> everything
>>>> + * failed.
>>>> + */
>>>>
>>>> "No default is specified" or "No defaults are specified"
>>>>
>>>>
>>>> AudioFileFormat.java:
>>>>
>>>> - * Finalizes the equals method.
>>>> + * Indicates whether the specified object is equal to this
>>>> file
>>>> type,
>>>> + * returning {@code true} if the objects are the same.
>>>> + *
>>>> + * @param obj the reference object with which to compare
>>>> + * @return {@code true} if this file type is the same as the
>>>>
>>>> {@code obj}
>>>> + * argument; {@code false} otherwise
>>>> */
>>>> @Override
>>>> public final boolean equals(final Object obj) {
>>>>
>>>> The implementation checks if the objects are equal, not that the
>>>> objects
>>>> are the same
>>>>
>>>> The same for AudioFormat.equals()
>>>>
>>>> (Note that in most cases equals() methods of JavaSound classes just
>>>> call
>>>> super.equals(), i.e. they really test is the objects are the same)
>>>>
>>>> --alex
>>>>
>>>>
>>>> On 07/20/2017 18:46, Sergey Bylokhov wrote:
>>>>> The DRAFT version of CSR was created:
>>>>> https://bugs.openjdk.java.net/browse/JDK-8185020
>>>>>
>>>>> ----- sergey.bylokhov at oracle.com wrote:
>>>>>>
>>>>>> The fix is updated:
>>>>>> http://cr.openjdk.java.net/~serb/8181566/webrev.01
>>>>>>
>>>>>>> I don't see the point of prettying up the docs on the un-used,
>>>> commented out constants.
>>>>>>> Can't we just delete them ? Seems like the decision was made
>>>> years ago not to include them in the API
>>>>>>
>>>>>
>>>>> It could be removed, but I still consider them as kind of todo, I
>>>> hope
>>>>> to check them one by one at some point.
>>>>>
>
>
More information about the sound-dev
mailing list