[ 
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-21-aa-arrays.diff

Attaching derby-5840-21-aa-arrays.diff which fixes two compiler warnings and 
removes the corresponding SuppressWarnings annotations:

1) CursorNode's init() method takes a List<String> parameter. However, the 
declared type is Object because of the way NodeFactory initializes the nodes, 
so it has to do an unchecked cast back to List<String>. The patch fixes this by 
making the parser pass a String[] instance instead of List<String>, and let the 
init() method convert the String[] value to a List<String> by wrapping it with 
Arrays.asList(). Both the cast from Object to String[] and the call to 
Arrays.asList() are checked operations, so the compiler won't produce warnings.

2) TriggerEventActivator.setupExecutors() stores Vector<TriggerDescriptor> 
instances in an array. Since arrays cannot have generic types, it needs 
unchecked casts to Vector<TriggerDescriptor> each time it accesses the 
elements. The patch fixes the warning by using a List instead of an array, as 
Lists can have generic types. Also, since the Vector instances are used only in 
this methods and never leak out, they are replaced by unsynchronized ArrayLists.

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: 10.10.1.1
>            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, 
> derby-5840-17-aa-property-conglomerate.diff, derby-5840-18-aa-arrayutil.diff, 
> derby-5840-19-aa-ddutils.diff, derby-5840-20-aa-collectnodes.diff, 
> derby-5840-21-aa-arrays.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

Reply via email to