[
https://issues.apache.org/jira/browse/PDFBOX-4723?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17165775#comment-17165775
]
Christian Appl commented on PDFBOX-4723:
----------------------------------------
Agreed. With both your statements. But especially when reading your arguments
[~msahyoun] I would prefer 2 separate, specialized methods, so that both
comparisons are possible.
I want to repeat the suggestion to differentiate "equals()" and
"contentEquals()"... why loose one, if both are possible at the same time?
I never denied, that a "contentEquals()" method would be absolutely usefull!
But why must "equals()" be overridden to reach that goal?
Overriding equals is assuming that A) a naive user, such as I, knows that
equals has been overridden. And B) that all using libraries are compatible with
those changes to equals.
I don't even wanted to use equals() here in the first place, my intention was
to add COSBase instances to a list. I (again) did not expect those results.
> Add equals() and hashCode() to PDAnnotation and COS objects
> -----------------------------------------------------------
>
> Key: PDFBOX-4723
> URL: https://issues.apache.org/jira/browse/PDFBOX-4723
> Project: PDFBox
> Issue Type: Sub-task
> Components: PDModel
> Affects Versions: 2.0.18
> Reporter: Maruan Sahyoun
> Assignee: Maruan Sahyoun
> Priority: Major
> Fix For: 3.0.0 PDFBox
>
> Attachments: bird_burst.heic.pdf, screenshot-1.png
>
>
> In order to proper support removeAll/retainAll for COSArrayList we need to
> detect if entries are in fact duplicates of others. This currently fails as
> even though one might add the same instance of an annotation object multiple
> times to setAnnotations getting the annotations will have individual
> instances. See the discussion at PDFBOX-4669.
> In order to proper support removal we need to be able to detect equality
> where an object is equal if the underlying COSDictionary has the same entries.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]