HCL-TECH-SOFTWARE / domino-jnx

Modern Domino Java API based on JNA access to Domino's C API
https://opensource.hcltechsw.com/domino-jnx/
Apache License 2.0
12 stars 3 forks source link

Modify Import-Package for lotus.domino to be optional #435

Open Hipcrostino opened 4 weeks ago

Hipcrostino commented 4 weeks ago

Currently lotus.domino is a required package of the jna jar. This means in non "in process" implementations of JNX you must have a note.jar on the class path, even it using jnx.skipNotesThread=true (which appears to be the only dependency). This just makes life difficult for deployment.

If the lotus.domino import-package could be marked optional this should solve that problem.

Version is 1.39.0

Thanks, Paul.

Hipcrostino commented 4 weeks ago

Also, while I'm here, can I suggest that if this is done the osgi capability information be added for the services be added? Doing so allows SPIFLY to find these services and add them as services in a DS environment.

I currently have to wrap these jars to add the following:

JNA - Require-Capability=osgi.extender; filter:=%22(osgi.extender%3Dosgi.serviceloader.registrar)%22,osgi.extender;filter:=%22(%26(osgi.extender%3Dosgi.serviceloader.processor)(version%3E%3D1.0)(!(version%3E%3D2.0)))%22&Provide-Capability=osgi.serviceloader;osgi.serviceloader=java.nio.charset.spi.CharsetProvider,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.security.CredentialValidationTokenHandler,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.richtext.structures.MemoryStructureWrapperService,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.naming.Names,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.misc.DominoClientBuilderFactory,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.formula.FormulaCompiler,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.DominoProcess,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.design.NativeDesignSupport,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.data.NativeItemCoder,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.data.DocumentValueConverter,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.commons.OSLoadStringProvider

Commons - Require-Capability=osgi.extender; filter:=%22(osgi.extender%3Dosgi.serviceloader.registrar)%22,osgi.extender;filter:=%22(%26(osgi.extender%3Dosgi.serviceloader.processor)(version%3E%3D1.0)(!(version%3E%3D2.0)))%22&Provide-Capability=osgi.serviceloader;osgi.serviceloader=com.hcl.domino.data.DocumentValueConverter,osgi.serviceloader;osgi.serviceloader=com.hcl.domino.data.CollectionEntryValueConverter