[
https://issues.apache.org/jira/browse/FELIX-2280?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12863449#action_12863449
]
Christian Müller commented on FELIX-2280:
-----------------------------------------
By separating Derby out, I propose the following updates:
{code}
public class DerbyJDBCLock extends DefaultJDBCLock {
public DerbyJDBCLock(Properties props) {
super(props);
}
@Override
Connection createConnection(String driver, String url, String username,
String password) throws Exception {
url = (url.toLowerCase().contains("create=true")) ? url : url +
";create=true";
return super.createConnection(driver, url, username, password);
}
}
{code}
and we could override the createConnection() method in MySQLJDBCLock like the
following:
{code}
public class MySQLJDBCLock extends DefaultJDBCLock {
...
@Override
Connection createConnection(String driver, String url, String username,
String password) throws Exception {
url = (url.toLowerCase().contains("createDatabaseIfNotExist=true")) ?
url :
((url.contains("?")) ?
url + "&createDatabaseIfNotExist=true" :
url + "?createDatabaseIfNotExist=true");
return super.createConnection(driver, url, username, password);
}
{code}
Then, do you would also update the DefaultJDBCLock.createConnection() method to
work with derby like now?
Regards,
Christian
> To much code duplication in DefaultJDBCLock, OracleJDBCLock and MySQLJDBCLock
> -----------------------------------------------------------------------------
>
> Key: FELIX-2280
> URL: https://issues.apache.org/jira/browse/FELIX-2280
> Project: Felix
> Issue Type: Improvement
> Components: Karaf
> Affects Versions: karaf-1.4.0
> Environment: All
> Reporter: Christian Müller
> Attachments: FELIX-2280.patch, FELIX-2280.patch
>
>
> org.apache.felix.karaf.main.DefaultJDBCLock,
> org.apache.felix.karaf.main.MySQLJDBCLock and
> org.apache.felix.karaf.main.OracleJDBCLock has to much code duplications. I
> propose a solution like in ActiveMQ [package
> org.apache.activemq.store.jdbc.adapter|http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/jdbc/adapter/].
> And we should implement some unit tests for it.
> If it's fine for you, I will try to improve this part of karaf and provide a
> patch for it.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.