<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">
   <parent>
     <groupId>org.eclipse.jetty.toolchain</groupId>
     <artifactId>jetty-toolchain</artifactId>
     <version>1.4</version>
     <relativePath>../jetty-toolchain</relativePath>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.eclipse.jetty.toolchain</groupId>
  <artifactId>jetty-osgi-servlet-api</artifactId>
  <version>3.1.0.M3</version>
  <name>Jetty :: Servlet API and Schemas for OSGi </name>
  <packaging>jar</packaging>
  <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <scm>
      <connection>scm:git:http://git.eclipse.org/gitroot/jetty/org.eclipse.jetty.toolchain.git</connection>
      <developerConnection>scm:git:ssh://git.eclipse.org/gitroot/jetty/org.eclipse.jetty.toolchain.git</developerConnection>
      <url>http://git.eclipse.org/c/jetty/org.eclipse.jetty.toolchain.git/tree/jetty-schemas</url>
    <tag>jetty-osgi-servlet-api-3.1.0.M3</tag>
  </scm>
  <build>
    <plugins>

       <plugin>
        <artifactId>maven-release-plugin</artifactId>
        <version>2.5</version>
        <dependencies>
           <dependency>
             <groupId>org.apache.maven.scm</groupId>
             <artifactId>maven-scm-api</artifactId>
             <version>1.9.1</version>
           </dependency>
           <dependency>
             <groupId>org.apache.maven.scm</groupId>
             <artifactId>maven-scm-provider-gitexe</artifactId>
             <version>1.9.1</version>
          </dependency>
        </dependencies>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <skipMain>true</skipMain>
          <skip>true</skip>
        </configuration>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>2.8</version>
        <executions>
          <execution>
            <id>unpack-source</id>
            <phase>generate-sources</phase>
            <goals>
              <goal>unpack-dependencies</goal>
            </goals>
            <configuration>
              <classifier>sources</classifier>
              <failOnMissingClassifierArtifact>false</failOnMissingClassifierArtifact>
              <outputDirectory>${project.build.directory}/sources</outputDirectory>
              <excludes>javax/servlet/jsp/**</excludes>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>1.9</version>
        <executions>
          <execution>
            <id>set-osgi-version</id>
            <phase>validate</phase>
            <goals>
              <goal>parse-version</goal>
            </goals>
          </execution>
          <execution>
            <id>add-source</id>
            <phase>generate-sources</phase>
            <goals>
              <goal>add-source</goal>
            </goals>
            <configuration>
              <sources>
                <source>${project.build.directory}/sources</source>
              </sources>
            </configuration>
          </execution>
        </executions>
      </plugin>



      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>2.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals> 
            <configuration> 
              <createSourcesJar>false</createSourcesJar>
              <shadeSourcesContent>true</shadeSourcesContent>
              <createDependencyReducedPom>false</createDependencyReducedPom>
              <artifactSet>
                <includes>
                  <include>org.eclipse.jetty.toolchain:jetty-schemas</include>
                  <include>javax.servlet:javax.servlet-api</include>
                </includes>
              </artifactSet>
               <filters>
                <filter>
                  <artifact>*:*</artifact>
                  <excludes>
                    <exclude>javax/servlet/jsp/**</exclude>
                    <exclude>META-INF/services/**</exclude>
                    <exclude>META-INF/web-fragment.xml</exclude>
                    <exclude>META-INF/*.DSA</exclude>
                    <exclude>META-INF/*.RSA</exclude>
                    <exclude>META-INF/MANIFEST.MF</exclude>
                  </excludes>
                </filter>
               </filters>
               <transformers>
                <transformer implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
                  <resource>META-INF/MANIFEST.MF</resource>
                  <file>target/classes/META-INF/MANIFEST.MF</file>
                </transformer>
              </transformers>
            </configuration>
          </execution>
        </executions>
      </plugin>


     <!-- source maven plugin creates the source bundle and adds manifest -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.1.2</version>
        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>process-classes</phase>
            <goals>
              <goal>jar</goal>
            </goals>
            <configuration>
              <archive>
                <manifestEntries>
                  <Bundle-ManifestVersion>2</Bundle-ManifestVersion>
                  <Bundle-Name>${project.name}</Bundle-Name>
                  <Bundle-SymbolicName>org.eclipse.jetty.osgi-servlet-api.source</Bundle-SymbolicName>
                  <Bundle-Vendor>Eclipse.org - Jetty</Bundle-Vendor>
                  <Bundle-Version>${parsedVersion.osgiVersion}</Bundle-Version>
                  <Eclipse-SourceBundle>org.eclipse.jetty.osgi-servlet-api;version="${parsedVersion.osgiVersion}";roots:="."</Eclipse-SourceBundle>
                </manifestEntries>
              </archive>
            </configuration>
          </execution>
        </executions>
      </plugin>


<!-- generate the manifest for the classes jar -->
      <plugin>
          <groupId>org.apache.felix</groupId>
          <artifactId>maven-bundle-plugin</artifactId>
          <extensions>true</extensions>
          <executions>
              <execution>
                  <id>bundle-manifest</id>
                  <goals>
                      <goal>manifest</goal>
                  </goals>
              </execution>
          </executions>
          <configuration>
              <instructions>
                  <Bundle-SymbolicName>org.eclipse.jetty.osgi-servlet-api</Bundle-SymbolicName>
                  <Bundle-Name>Jetty Servlet API and Schemas for OSGi</Bundle-Name>
                  <Bundle-Description>Combined servlet api and schemas for use in osgi environments</Bundle-Description>
                  <Bundle-RequiredExecutionEnvironment>J2SE-1.5</Bundle-RequiredExecutionEnvironment>
                  <_nouses>true</_nouses>
                  <Export-Package>!javax.servlet.jsp.*,javax.servlet.*;version="3.1",*</Export-Package>
              </instructions>
          </configuration>
      </plugin>
    </plugins>
  </build>
  <profiles>
    <profile>
      <id>eclipse-release</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <executions>
              <execution>
                <id>attach-javadocs</id>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

  <dependencies>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
    </dependency>
    <dependency>
      <groupId>org.eclipse.jetty.toolchain</groupId>
      <artifactId>jetty-schemas</artifactId>
      <version>3.1.M0</version>
    </dependency>
  </dependencies>
</project>
