You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Knut Anders Hatlen (JIRA)" <ji...@apache.org> on 2012/07/25 11:53:34 UTC

[jira] [Created] (DERBY-5880) Move java.sql.Wrapper implementations to base classes in embedded driver

Knut Anders Hatlen created DERBY-5880:
-----------------------------------------

             Summary: Move java.sql.Wrapper implementations to base classes in embedded driver
                 Key: DERBY-5880
                 URL: https://issues.apache.org/jira/browse/DERBY-5880
             Project: Derby
          Issue Type: Bug
          Components: JDBC
    Affects Versions: 10.10.0.0
            Reporter: Knut Anders Hatlen
            Assignee: Knut Anders Hatlen
            Priority: Minor


Now that the JDBC 3.0 classes in the embedded driver are compiled with source level 1.5, we could move the unwrap()/isWrapperFor() methods to the base classes to enable reuse, like we did for the client driver in DERBY-5868.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (DERBY-5880) Move java.sql.Wrapper implementations to base classes in embedded driver

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-5880?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Knut Anders Hatlen updated DERBY-5880:
--------------------------------------

    Attachment: d5880-1a.diff

Attaching d5880-1a.diff which moves the Wrapper methods to super-classes where that may enable more reuse.

Unfortunately, EmbedStatement40, EmbedPreparedStatement40 and EmbedCallableStatement40 don't have a common sub-class compiled against Java 5 yet, so the had to keep their separate implementations.

In the brokered classes, however, the implementations in BrokeredStatement40, BrokeredPreparedStatement40 and BrokeredCallableStatement40 could be replaced by a single one in BrokeredStatement.

In EmbedParameterMetaData40, the Wrapper methods were moved to EmbedParameterMetaData30, which made the EmbedParameterMetaData40 class empty so it could be removed.

In the data source classes, the Wrapper methods in EmbedDataSource40, EmbeddedConnectionPoolDataSource40 and EmbeddedXADataSource40 could be replaced by a single implementation in EmbededDataSource. This change also made the data source classes that are not suffixed with "40", implement the full JDBC 4.0 interface. The javadoc comments in the classes were updated to say that.

Because the JDBC 3 data source classes are more capable than before, JDBC4FromJDBC3DataSourceTest had to be updated. It expected calls to the Wrapper methods to result in AbstractMethodErrors when using the JDBC 3 flavour of the data sources, but now they succeed.

Finally, I came across two methods (setBinaryStream() and setCharacterStream()) in EmbedCallableStatement40 that had equivalent implementations in the super-class EmbedPreparedStatement, so I removed them and let EmbedCallableStatement40 inherit them instead.

All the regression tests ran cleanly with the patch.
                
> Move java.sql.Wrapper implementations to base classes in embedded driver
> ------------------------------------------------------------------------
>
>                 Key: DERBY-5880
>                 URL: https://issues.apache.org/jira/browse/DERBY-5880
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions: 10.10.0.0
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>         Attachments: d5880-1a.diff
>
>
> Now that the JDBC 3.0 classes in the embedded driver are compiled with source level 1.5, we could move the unwrap()/isWrapperFor() methods to the base classes to enable reuse, like we did for the client driver in DERBY-5868.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Closed] (DERBY-5880) Move java.sql.Wrapper implementations to base classes in embedded driver

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-5880?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Knut Anders Hatlen closed DERBY-5880.
-------------------------------------

          Resolution: Fixed
       Fix Version/s: 10.10.0.0
    Issue & fix info:   (was: Patch Available)

Committed revision 1372403.
                
> Move java.sql.Wrapper implementations to base classes in embedded driver
> ------------------------------------------------------------------------
>
>                 Key: DERBY-5880
>                 URL: https://issues.apache.org/jira/browse/DERBY-5880
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions: 10.10.0.0
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>             Fix For: 10.10.0.0
>
>         Attachments: d5880-1a.diff
>
>
> Now that the JDBC 3.0 classes in the embedded driver are compiled with source level 1.5, we could move the unwrap()/isWrapperFor() methods to the base classes to enable reuse, like we did for the client driver in DERBY-5868.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (DERBY-5880) Move java.sql.Wrapper implementations to base classes in embedded driver

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-5880?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Knut Anders Hatlen updated DERBY-5880:
--------------------------------------

    Issue & fix info: Patch Available
    
> Move java.sql.Wrapper implementations to base classes in embedded driver
> ------------------------------------------------------------------------
>
>                 Key: DERBY-5880
>                 URL: https://issues.apache.org/jira/browse/DERBY-5880
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions: 10.10.0.0
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>         Attachments: d5880-1a.diff
>
>
> Now that the JDBC 3.0 classes in the embedded driver are compiled with source level 1.5, we could move the unwrap()/isWrapperFor() methods to the base classes to enable reuse, like we did for the client driver in DERBY-5868.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira