db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] [Reopened] (DERBY-2920) Share code between readExternal() and readExternalFromArray()
Date Sun, 11 Nov 2012 17:03:12 GMT

     [ https://issues.apache.org/jira/browse/DERBY-2920?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Knut Anders Hatlen reopened DERBY-2920:
---------------------------------------


Reopening since I found more duplication that I didn't address in the first patch. The classes
FormatArrayHolder, FormatableHashtable, FormatableIntHolder, FormatableLongHolder, FormatableProperties
and B2IUndo all have two readExternal() methods; one that takes ObjectInput and one that takes
ArrayInputStream.

In these classes, the variants that take ArrayInputStream are not called readExternalFromArray(),
which is why they didn't show up in my original search. However, as far as I can see, none
of the readExternal(ArrayInputStream) methods have any callers, so removing them should be
harmless.
                
> Share code between readExternal() and readExternalFromArray()
> -------------------------------------------------------------
>
>                 Key: DERBY-2920
>                 URL: https://issues.apache.org/jira/browse/DERBY-2920
>             Project: Derby
>          Issue Type: Improvement
>          Components: Services, SQL
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>              Labels: derby_triage10_10
>             Fix For: 10.10.0.0
>
>         Attachments: d2920-1a.diff, ReadInts2.java, ReadInts.java
>
>
> Most of the implementations of DataValueDescriptor.readExternalFromArray(ArrayInputStream)
are identical to their corresponding Externalizable.readExternal(ObjectInput) methods. Since
ArrayInputStream implements ObjectInput, readExternalFromArray() could in those cases just
have forwarded calls to readExternal() instead of duplicating the code. A default forwarding
implementation of readExternalFromArray() could be placed in org.apache.derby.iapi.types.DataType,
and all the existing implementations, except those with optimizations for ArrayInputStream,
could be removed.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message