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] [Updated] (DERBY-5840) Clean up compiler warnings introduced by using Java 5 language features
Date Wed, 22 May 2013 11:08:22 GMT

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

Knut Anders Hatlen updated DERBY-5840:

    Attachment: derby-5840-16-aa-class-size-catalog.diff

The ClassSize class is annotated so that unchecked conversion warnings are suppressed in the
entire class.

The warnings are there because ClassSize cannot access ClassSizeCatalog directly, and must
access it via an unchecked cast to Hashtable<String,int[]>. ClassSizeCatalog is generated
by ClassSizeCrawler long after ClassSize is compiled, so ClassSize must use reflection to
access it.

The derby-5840-16-aa-class-size-catalog.diff patch refactors ClassSizeCatalog so that ClassSize
doesn't have to do the unchecked cast. It introduces a new abstract class called ClassSizeCatalog,
and makes ClassSizeCrawler create a ClassSizeCatalogImpl class that extends ClassSizeCatalog.
This way, it's safe for ClassSize to access the catalog via the abstract ClassSizeCatalog
class without reflection, and it doesn't need to cast it unchecked to Hashtable.

I'm running regression tests.
> Clean up compiler warnings introduced by using Java 5 language features
> -----------------------------------------------------------------------
>                 Key: DERBY-5840
>                 URL: https://issues.apache.org/jira/browse/DERBY-5840
>             Project: Derby
>          Issue Type: Improvement
>          Components: Miscellaneous
>    Affects Versions:
>            Reporter: Rick Hillegas
>         Attachments: derby-5840-01-aa-compatibilityTests.diff, derby-5840-02-aa-compatibilityTests-again.diff.txt,
derby-5840-03-aa-drda.diff, derby-5840-03-ab-drda.diff, derby-5840-04-aa-client-level.diff,
derby-5840-05-aa-client-deprecation.diff, derby-5840-06-aa-jdbc3-stubs.diff, derby-5840-07-aa-drda-for-each.diff,
derby-5840-08-aa-jdbc3-embedded.diff, derby-5840-09-aa-test-deprecation-and-unchecked.diff,
derby-5840-10-aa-derbynet-perf-system.diff, derby-5840-11-aa-engine-i18n-store-tools.diff,
derby-5840-12-aa-jdbcapi.diff, derby-5840-13-aa.diff, derby-5840-13-aa-remove-suppression.diff,
derby-5840-14-aa-bigdecimal.diff, derby-5840-15-aa-more-suppressions.diff, derby-5840-16-aa-class-size-catalog.diff
> Using Java 5 language features forces us to compile code at level 5 or higher. At this
level, the compiler raises warnings not seen at lower levels. This issue is a place to discuss
and attach cleanup to eliminate these warnings.

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

View raw message