<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <packaging>bundle</packaging>

  <parent>
    <groupId>org.cache2k</groupId>
    <artifactId>cache2k-parent</artifactId>
    <version>0.24-BETA</version>
    <relativePath>../../pom.xml</relativePath>
  </parent>

  <description>
    Bundle jar including all cache2k modules for usage as runtime dependency.
    This jar also provides OSGi meta information.
    No source and JavaDoc is included in the associated jars. To access source and
    JavaDoc use the bundled jars separately.
  </description>

  <artifactId>cache2k-all</artifactId>
  <name>${project.artifactId} complete bundle</name>

  <dependencies>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>cache2k-api</artifactId>
      <version>${project.version}</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>cache2k-core</artifactId>
      <version>${project.version}</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>cache2k-ee</artifactId>
      <version>${project.version}</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>cache2k-jmx-api</artifactId>
      <version>${project.version}</version>
      <scope>provided</scope>
    </dependency>

  </dependencies>

   <build>
    <plugins>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <extensions>true</extensions>
        <configuration>
          <instructions>
            <Embed-Dependency>*;scope=provided;inline=true</Embed-Dependency>
            <Private-Package>*;-split-package:=merge-first</Private-Package>
            <Export-Package>
              org.cache2k,
              org.cache2k.spi,
              org.cache2k.storage;-split-package:=merge-first,
              org.cache2k.integration,
              org.cache2k.customization,
              org.cache2k.event,
              org.cache2k.processor
            </Export-Package>
            <Import-Package>
              javax.management,
              javax.naming,
              org.apache.commons.logging;resolution:=optional
            </Import-Package>
            <!-- TODO: link to doc? -->
            <Bundle-DocURL>http://cache2k.org</Bundle-DocURL>
            <!-- Add regular jar manifest information -->
            <Implementation-Build>${buildNumber}</Implementation-Build>
            <Implementation-Version>${project.version}</Implementation-Version>
            <Implementation-Title>${project.name}</Implementation-Title>
            <Implementation-Vendor-Id>${project.groupId}</Implementation-Vendor-Id>
            <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
          </instructions>
          <!-- nice manifest, everything with style :) -->
          <niceManifest>true</niceManifest>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
