Skip to content

Commit

Permalink
Improve support for OSGi
Browse files Browse the repository at this point in the history
Signed-off-by: Lukas Jungmann <lukas.jungmann@oracle.com>
  • Loading branch information
lukasj committed Dec 23, 2022
1 parent 4c09606 commit 0a68c92
Show file tree
Hide file tree
Showing 9 changed files with 298 additions and 50 deletions.
27 changes: 27 additions & 0 deletions core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -49,4 +49,31 @@
<scope>provided</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Require-Capability><![CDATA[
osgi.extender;filter:="(&(osgi.extender=osgi.serviceloader.registrar)
(version>=1.0.0)(!(version>=2.0.0)))";resolution:=optional,
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
]]>
</Require-Capability>
<Provide-Capability><![CDATA[
osgi.service;effective:=active;
objectClass="com.sun.mail.util.MailStreamProvider",
osgi.serviceloader;
register:="com.sun.mail.util.MailStreamProvider";
osgi.serviceloader="com.sun.mail.util.MailStreamProvider"
]]>
</Provide-Capability>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>
40 changes: 17 additions & 23 deletions dsn/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,29 +31,6 @@
<artifactId>dsn</artifactId>
<packaging>jar</packaging>
<name>Angus Mail dsn support</name>
<build>
<plugins>
<!--
Configure SpotBugs to run with "mvn findbugs:findbugs"
and generate XML output that can be used by the Hudson
FindBugs plugin.
-->
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<configuration>
<skip>false</skip>
<threshold>${findbugs.threshold}</threshold>
<!--
<excludeFilterFile>
${project.basedir}/exclude.xml
</excludeFilterFile>
-->
<findbugsXmlWithMessages>true</findbugsXmlWithMessages>
</configuration>
</plugin>
</plugins>
</build>

<dependencies>
<dependency>
Expand All @@ -74,4 +51,21 @@
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Require-Capability><![CDATA[
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
]]>
</Require-Capability>
</instructions>
</configuration>
</plugin>
</plugins>
</build>

</project>
17 changes: 17 additions & 0 deletions mailhandler/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,21 @@
<artifactId>angus-core</artifactId>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Require-Capability><![CDATA[
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
]]>
</Require-Capability>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>
52 changes: 52 additions & 0 deletions providers/angus-mail/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,58 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Require-Capability><![CDATA[
osgi.extender;filter:="(&(osgi.extender=osgi.serviceloader.registrar)
(version>=1.0.0)(!(version>=2.0.0)))";resolution:=optional,
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
]]>
</Require-Capability>
<Provide-Capability><![CDATA[
osgi.service;effective:=active;
objectClass="com.sun.mail.util.MailStreamProvider",
osgi.serviceloader;
register:="com.sun.mail.util.MailStreamProvider";
osgi.serviceloader="com.sun.mail.util.MailStreamProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.imap.IMAPProvider",
osgi.serviceloader;
register:="com.sun.mail.imap.IMAPProvider";
osgi.serviceloader="com.sun.mail.imap.IMAPProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.imap.IMAPSSLProvider",
osgi.serviceloader;
register:="com.sun.mail.imap.IMAPSSLProvider";
osgi.serviceloader="com.sun.mail.imap.IMAPSSLProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.smtp.SMTPProvider",
osgi.serviceloader;
register:="com.sun.mail.smtp.SMTPProvider";
osgi.serviceloader="com.sun.mail.smtp.SMTPProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.smtp.SMTPSSLProvider",
osgi.serviceloader;
register:="com.sun.mail.smtp.SMTPSSLProvider";
osgi.serviceloader="com.sun.mail.smtp.SMTPSSLProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.pop3.POP3Provider",
osgi.serviceloader;
register:="com.sun.mail.pop3.POP3Provider";
osgi.serviceloader="com.sun.mail.pop3.POP3Provider",
osgi.service;effective:=active;
objectClass="com.sun.mail.pop3.POP3SSLProvider",
osgi.serviceloader;
register:="com.sun.mail.pop3.POP3SSLProvider";
osgi.serviceloader="com.sun.mail.pop3.POP3SSLProvider"
]]>
</Provide-Capability>
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
Expand Down
57 changes: 31 additions & 26 deletions providers/gimap/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -33,32 +33,6 @@
<packaging>jar</packaging>
<name>Angus Mail Gmail IMAP provider</name>

<properties>
<findbugs.exclude>
${project.basedir}/exclude.xml
</findbugs.exclude>
</properties>

<build>
<plugins>
<!--
Configure SpotBugs to run with "mvn spotbugs:spotbugs"
and generate XML output that can be used by the Hudson
FindBugs plugin.
-->
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<configuration>
<skip>false</skip>
<threshold>${findbugs.threshold}</threshold>
<excludeFilterFile>${findbugs.exclude}</excludeFilterFile>
<findbugsXmlWithMessages>true</findbugsXmlWithMessages>
</configuration>
</plugin>
</plugins>
</build>

<dependencies>
<!-- Overwrite parent dependencies -->
<dependency>
Expand All @@ -73,4 +47,35 @@
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Require-Capability><![CDATA[
osgi.extender;filter:="(&(osgi.extender=osgi.serviceloader.registrar)
(version>=1.0.0)(!(version>=2.0.0)))";resolution:=optional,
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
]]>
</Require-Capability>
<Provide-Capability><![CDATA[
osgi.service;effective:=active;
objectClass="com.sun.mail.gimap.GmailProvider",
osgi.serviceloader;
register:="com.sun.mail.gimap.GmailProvider";
osgi.serviceloader="com.sun.mail.gimap.GmailProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.gimap.GmailSSLProvider",
osgi.serviceloader;
register:="com.sun.mail.gimap.GmailSSLProvider";
osgi.serviceloader="com.sun.mail.gimap.GmailSSLProvider"
]]>
</Provide-Capability>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>
32 changes: 32 additions & 0 deletions providers/imap/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,36 @@
<artifactId>angus-core</artifactId>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Require-Capability><![CDATA[
osgi.extender;filter:="(&(osgi.extender=osgi.serviceloader.registrar)
(version>=1.0.0)(!(version>=2.0.0)))";resolution:=optional,
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
]]>
</Require-Capability>
<Provide-Capability><![CDATA[
osgi.service;effective:=active;
objectClass="com.sun.mail.imap.IMAPProvider",
osgi.serviceloader;
register:="com.sun.mail.imap.IMAPProvider";
osgi.serviceloader="com.sun.mail.imap.IMAPProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.imap.IMAPSSLProvider",
osgi.serviceloader;
register:="com.sun.mail.imap.IMAPSSLProvider";
osgi.serviceloader="com.sun.mail.imap.IMAPSSLProvider"
]]>
</Provide-Capability>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>
59 changes: 58 additions & 1 deletion providers/jakarta.mail/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,64 @@
</executions>
</plugin>

<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Require-Capability><![CDATA[
osgi.extender;filter:="(&(osgi.extender=osgi.serviceloader.processor)
(version>=1.0.0)(!(version>=2.0.0)))";resolution:=optional,
osgi.serviceloader;filter:="(osgi.serviceloader=jakarta.mail.Provider)";
osgi.serviceloader="jakarta.mail.Provider";
cardinality:=multiple;resolution:=optional,
osgi.serviceloader;filter:="(osgi.serviceloader=jakarta.mail.util.StreamProvider)";
osgi.serviceloader="jakarta.mail.util.StreamProvider";
cardinality:=multiple;resolution:=optional,
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
]]>
</Require-Capability>
<Provide-Capability><![CDATA[
osgi.service;effective:=active;
objectClass="com.sun.mail.util.MailStreamProvider",
osgi.serviceloader;
register:="com.sun.mail.util.MailStreamProvider";
osgi.serviceloader="com.sun.mail.util.MailStreamProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.imap.IMAPProvider",
osgi.serviceloader;
register:="com.sun.mail.imap.IMAPProvider";
osgi.serviceloader="com.sun.mail.imap.IMAPProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.imap.IMAPSSLProvider",
osgi.serviceloader;
register:="com.sun.mail.imap.IMAPSSLProvider";
osgi.serviceloader="com.sun.mail.imap.IMAPSSLProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.smtp.SMTPProvider",
osgi.serviceloader;
register:="com.sun.mail.smtp.SMTPProvider";
osgi.serviceloader="com.sun.mail.smtp.SMTPProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.smtp.SMTPSSLProvider",
osgi.serviceloader;
register:="com.sun.mail.smtp.SMTPSSLProvider";
osgi.serviceloader="com.sun.mail.smtp.SMTPSSLProvider",
osgi.service;effective:=active;
objectClass="com.sun.mail.pop3.POP3Provider",
osgi.serviceloader;
register:="com.sun.mail.pop3.POP3Provider";
osgi.serviceloader="com.sun.mail.pop3.POP3Provider",
osgi.service;effective:=active;
objectClass="com.sun.mail.pop3.POP3SSLProvider",
osgi.serviceloader;
register:="com.sun.mail.pop3.POP3SSLProvider";
osgi.serviceloader="com.sun.mail.pop3.POP3SSLProvider"
]]>
</Provide-Capability>
</instructions>
</configuration>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand All @@ -170,7 +228,6 @@ Use is subject to <a href="{@docRoot}/doc-files/speclicense.html" target="_top">
</build>

<dependencies>

<dependency>
<groupId>jakarta.activation</groupId>
<artifactId>jakarta.activation-api</artifactId>
Expand Down
32 changes: 32 additions & 0 deletions providers/pop3/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,36 @@
<artifactId>angus-core</artifactId>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Require-Capability><![CDATA[
osgi.extender;filter:="(&(osgi.extender=osgi.serviceloader.registrar)
(version>=1.0.0)(!(version>=2.0.0)))";resolution:=optional,
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
]]>
</Require-Capability>
<Provide-Capability><![CDATA[
osgi.service;effective:=active;
objectClass="com.sun.mail.pop3.POP3Provider",
osgi.serviceloader;
register:="com.sun.mail.pop3.POP3Provider";
osgi.serviceloader="com.sun.mail.pop3.POP3Provider",
osgi.service;effective:=active;
objectClass="com.sun.mail.pop3.POP3SSLProvider",
osgi.serviceloader;
register:="com.sun.mail.pop3.POP3SSLProvider";
osgi.serviceloader="com.sun.mail.pop3.POP3SSLProvider"
]]>
</Provide-Capability>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>

0 comments on commit 0a68c92

Please sign in to comment.