Details
-
Bug
-
Status: Stalled (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.1.18
-
None
-
CentOS 7
Description
It appears that both the JdbcInterface class and ApacheInterface class (among others) are currently in a java package called "wrappers" whereas the recommended package naming convention should contain the domain name. A correct package name would look something like this:
org.mariadb.storage.connect
This way the fully qualified Java class names would be this:
org.mariadb.storage.connect.JdbcInterface
org.mariadb.storage.connect.ApacheInterface
Further, all of these classes (JdbcInterface, ApacheInterface, etc.) could be compiled into a single JAR file, say something like MariadbStorageConnect.jar would be great. Then a single JAR file can be included with all binary distributions (RPMs etc) since it is platform independent. Java doesn't mind that certain classes in the jar require other jar files (like Apache DBCP) that might not be present if you don't try to call them.
What I am trying to do is to install a precompiled jar file containing all the existing wrappers. The generation of a binary distribution is a fairly complex CMake process and, with the help of the staff responsible to do it, I made a first try that will be included in next releases.
Because I am not sure this will work, I left the making of the JdbcInterface.jar that contains only the JdbcInterface wrapper, and added the other jar as JavaWrappers.jar.
If it works, it will be installed in the plugin directory.
When proved that this is working, only one jar file will be installed. Note that currently, CONNECT only looks by default at the JdbcInterface.jar and to use the other one its path must be specified as for the JDBC drivers.