<?xml version="1.0" encoding="UTF-8"?>
<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.sonatype.oss</groupId>
        <artifactId>oss-parent</artifactId>
        <version>7</version>
    </parent>

    <modelVersion>4.0.0</modelVersion>

    <groupId>org.primefaces</groupId>
    <artifactId>primefaces</artifactId>
    <packaging>jar</packaging>
    <version>6.2</version>

    <name>primefaces</name>
    <url>http://www.primefaces.org</url>

    <description>
        <![CDATA[PrimeFaces is one of the most popular UI libraries in Java EE Ecosystem and widely used by software companies, world renowned brands, banks, financial institutions, insurance companies, universities and more.]]>
    </description>

    <licenses>
        <license>
            <name>The Apache Software License, Version 2.0</name>
            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
            <distribution>repo</distribution>
            <comments>A business-friendly OSS license</comments>
        </license>
    </licenses>

    <scm>
        <connection>scm:git:https://github.com/primefaces/primefaces.git</connection>
        <developerConnection>scm:git:https://github.com/primefaces/primefaces.git</developerConnection>
        <url>https://github.com/primefaces/primefaces</url>
    </scm>

    <developers>
        <developer>
            <id>cagatay.civici</id>
            <name>Cagatay Civici</name>
        </developer>
        <developer>
            <id>andraschko.thomas</id>
            <name>Thomas Andraschko</name>
        </developer>
        <developer>
            <id>jfarcand.oss</id>
            <name>Jeanfrancois Arcand</name>
        </developer>
        <developer>
            <id>rdebusscher</id>
            <name>Rudy De Busscher</name>
        </developer>
        <developer>
            <id>sincan.mert</id>
            <name>Mert Sincan</name>
        </developer>
        <developer>
            <id>sudheer.jonna</id>
            <name>Sudheer Jonna</name>
        </developer>
    </developers>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.glassfish</groupId>
            <artifactId>javax.faces</artifactId>
            <version>2.3.2</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.glassfish</groupId>
            <artifactId>javax.servlet</artifactId>
            <version>3.0</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>javax.validation</groupId>
            <artifactId>validation-api</artifactId>
            <version>1.1.0.Final</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.el</groupId>
            <artifactId>el-api</artifactId>
            <version>2.2</version>
            <scope>provided</scope>
        </dependency>

        <!-- Data Exporter -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.17</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.17</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.lowagie</groupId>
            <artifactId>itext</artifactId>
            <version>2.1.7</version>
            <scope>provided</scope>
        </dependency>

        <!-- File Upload -->
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.3</version>
            <scope>provided</scope>
        </dependency>

        <!-- FeedReader -->
        <dependency>
            <groupId>com.rometools</groupId>
            <artifactId>rome</artifactId>
            <version>1.7.3</version>
            <scope>provided</scope>
        </dependency>

        <!-- PhotoCam for Java5 -->
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.0</version>
            <scope>provided</scope>
        </dependency>

        <!-- Barcode -->
        <dependency>
            <groupId>net.glxn</groupId>
            <artifactId>qrgen</artifactId>
            <version>1.4</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>net.sf.barcode4j</groupId>
            <artifactId>barcode4j-light</artifactId>
            <version>2.0</version>
            <scope>provided</scope>
        </dependency>

        <!-- Test  -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.8.2</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.easymock</groupId>
            <artifactId>easymock</artifactId>
            <version>3.5.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>de.odysseus.juel</groupId>
            <artifactId>juel-impl</artifactId>
            <version>2.2.7</version>
            <scope>test</scope>
        </dependency>

        <!-- Atmosphere -->
        <dependency>
            <groupId>org.atmosphere</groupId>
            <artifactId>atmosphere-runtime</artifactId>
            <version>2.4.6</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>6.0</version>
            <scope>provided</scope>
        </dependency>

        <!-- Cache -->
        <dependency>
            <groupId>com.hazelcast</groupId>
            <artifactId>hazelcast</artifactId>
            <version>2.6.5</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>net.sf.ehcache</groupId>
            <artifactId>ehcache</artifactId>
            <version>2.7.4</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    <build>
        <defaultGoal>install</defaultGoal>

        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>

        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                    <encoding>${project.build.sourceEncoding}</encoding>
                </configuration>
                <executions>
                    <execution>
                        <id>default-compile</id>
                        <configuration>
                            <showDeprecation>true</showDeprecation>
                            <showWarnings>true</showWarnings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>default-testCompile</id>
                        <configuration>

                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>xslt-maven-plugin</artifactId>
                <version>1.0</version>
                <executions>
                    <execution>
                        <id>generate-ui-metadata</id>
                        <phase>generate-sources</phase>
                        <configuration>
                            <xslFile>src/main/resources-maven-jsf/misc/resolve_entities.xsl</xslFile>
                            <srcIncludes>**/*.xml</srcIncludes>
                            <srcDir>src/main/resources-maven-jsf/ui</srcDir>
                            <destDir>target/resources-maven-jsf/ui</destDir>
                        </configuration>
                        <goals>
                            <goal>transform</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>generate-ui-metadata-mobile</id>
                        <phase>generate-sources</phase>
                        <configuration>
                            <xslFile>src/main/resources-maven-jsf/misc/resolve_entities.xsl</xslFile>
                            <srcIncludes>**/*.xml</srcIncludes>
                            <srcDir>src/main/resources-maven-jsf/mobile</srcDir>
                            <destDir>target/resources-maven-jsf/mobile</destDir>
                        </configuration>
                        <goals>
                            <goal>transform</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <version>1.5</version>
                <executions>
                    <execution>
                        <id>add-source</id>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>add-source</goal>
                        </goals>
                        <configuration>
                            <sources>
                                <source>target/generated-sources/maven-jsf-plugin</source>
                            </sources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <version>2.17</version>
                <configuration>
                    <consoleOutput>true</consoleOutput>
                    <configLocation>./checkstyle.xml</configLocation>
                    <excludes>**/UIData.java,**/Base64.java,**/UITabPanel.java,**/json/**,**/UITree.java,**/UIRepeat.java,**/AbstractBehaviorHandler.java</excludes>
                </configuration>
                <executions>
                    <execution>
                        <id>checkstyle</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                        <configuration>
                            <failOnViolation>true</failOnViolation>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>com.mycila</groupId>
                <artifactId>license-maven-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                    <header>./header.txt</header>
                    <includes>
                        <include>src/main/java/**</include>
                    </includes>
                    <excludes>
                        <exclude>**/BoundedInputStream.java</exclude>
                    </excludes>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.primefaces</groupId>
                <artifactId>maven-jsf-plugin</artifactId>
                <version>1.3.3-SNAPSHOT</version>
                <executions>
                    <execution>
                        <id>generate-ui</id>
                        <phase>generate-sources</phase>
                        <configuration>
                            <uri>http://primefaces.org/ui</uri>
                            <shortName>p</shortName>
                            <templatesDir>src/main/java-templates</templatesDir>
                            <componentConfigsDir>target/resources-maven-jsf/ui</componentConfigsDir>
                            <standardFacesConfig>src/main/resources-maven-jsf/standard-faces-config.xml</standardFacesConfig>
                            <standardFaceletsTaglib>src/main/resources-maven-jsf/standard-facelets-taglib.xml</standardFaceletsTaglib>
                            <standardTLD>src/main/resources-maven-jsf/standard-tld.xml</standardTLD>
                        </configuration>
                        <goals>
                            <goal>generate-components</goal>
                            <goal>generate-facelets-taglib</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>generate-ui-mobile</id>
                        <phase>generate-sources</phase>
                        <configuration>
                            <uri>http://primefaces.org/mobile</uri>
                            <shortName>pm</shortName>
                            <templatesDir>src/main/java-templates</templatesDir>
                            <componentConfigsDir>target/resources-maven-jsf/mobile</componentConfigsDir>
                        </configuration>
                        <goals>
                            <goal>generate-components</goal>
                            <goal>generate-facelets-taglib</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>generate-facesconfig</id>
                        <phase>generate-sources</phase>
                        <configuration>
                            <componentConfigsDir>target/resources-maven-jsf/ui</componentConfigsDir>
                            <standardFacesConfig>src/main/resources-maven-jsf/standard-faces-config.xml</standardFacesConfig>
                            <standardRenderersConfig>src/main/resources-maven-jsf/standard-renderers.xml</standardRenderersConfig>
                            <jsfVersion>2</jsfVersion>
                        </configuration>
                        <goals>
                            <goal>generate-faces-config</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>3.0.2</version>
                <configuration>
                    <encoding>${project.build.sourceEncoding}</encoding>
                    <nonFilteredFileExtensions>
                       <nonFilteredFileExtension>eot</nonFilteredFileExtension>
                       <nonFilteredFileExtension>ttf</nonFilteredFileExtension>
                       <nonFilteredFileExtension>woff</nonFilteredFileExtension>
                       <nonFilteredFileExtension>woff2</nonFilteredFileExtension>
                    </nonFilteredFileExtensions>
                </configuration>
            </plugin>

            <plugin>
                <groupId>net.alchim31.maven</groupId>
                <artifactId>yuicompressor-maven-plugin</artifactId>
                <version>1.4.0</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>compress</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <nosuffix>true</nosuffix>
                    <linebreakpos>-1</linebreakpos>
                    <excludes>
                        <exclude>**/*.js</exclude>
                        <exclude>**/*.css</exclude>
                    </excludes>
                    <aggregations>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/components.css</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/core/core.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.ui.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.ui.timepicker.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.ui.pfextensions.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/accordion/accordion.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/autocomplete/autocomplete.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/blockui/blockui.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/carousel/carousel.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/columntoggler/columntoggler.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/dashboard/dashboard.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/datalist/datalist.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/datagrid/datagrid.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/datascroller/datascroller.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/datatable/datatable.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/dialog/dialog.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/fieldset/fieldset.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/inputgroup.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/grid/grid.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/growl/growl.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/inplace/inplace.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/lightbox/lightbox.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/messages/messages.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/notificationbar/notificationbar.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/orderlist/orderlist.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/outputpanel/outputpanel.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/overlaypanel/overlaypanel.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/panel/panel.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/panelgrid/panelgrid.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/paginator/paginator.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/picklist/picklist.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/progressbar/progressbar.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/rating/rating.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/spinner/spinner.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tabview/tabview.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tagcloud/tagcloud.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/toolbar/toolbar.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tooltip/tooltip.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tree/tree.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/treetable/treetable.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/wizard/wizard.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/chips/chips.css</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/sidebar/sidebar.css</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/core.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/core/core.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/core/core.env.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/core/core.ajax.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/core/core.expressions.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/core/core.widget.js</include>

                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/ajaxstatus/ajaxstatus.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/poll/poll.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/components.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/core/core.dialog.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/accordion/accordion.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/autocomplete/autocomplete.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/blockui/blockui.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/calendar/calendar.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/carousel/carousel.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/columntoggler/columntoggler.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/dashboard/dashboard.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/datagrid/datagrid.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/datalist/datalist.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/datascroller/datascroller.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/datatable/datatable.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/dialog/dialog.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/dragdrop/dragdrop.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/effect/effect.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/fieldset/fieldset.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.inputtext.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.inputtextarea.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectonemenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectoneradio.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectbooleancheckbox.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectmanycheckbox.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectlistbox.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectonelistbox.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectmanymenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.commandbutton.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.button.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectmanybutton.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectonebutton.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectbooleanbutton.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.selectcheckboxmenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.inputmask.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.password.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.defaultcommand.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.splitbutton.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.themeswitcher.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/forms/forms.multiselectlistbox.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/growl/growl.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/inplace/inplace.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/lightbox/lightbox.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.base.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.tieredmenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.menubar.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.slidemenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.plainmenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.menubutton.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.contextmenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.megamenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.panelmenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/menu/menu.tabmenu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/messages/messages.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/notificationbar/notificationbar.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/panel/panel.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/orderlist/orderlist.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/outputpanel/outputpanel.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/overlaypanel/overlaypanel.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/paginator/paginator.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/picklist/picklist.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/progressbar/progressbar.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/rating/rating.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/resizable/resizable.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/slider/slider.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/spinner/spinner.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/spotlight/spotlight.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/sticky/sticky.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tabview/tabview.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tagcloud/tagcloud.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tooltip/tooltip.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tree/tree.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/treetable/treetable.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/wizard/wizard.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/tristatecheckbox/tristatecheckbox.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/chips/chips.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/sidebar/sidebar.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/components-mobile.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/core/core.mobile.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/accordion.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/autocomplete.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/calendar.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/datalist.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/datagrid.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/datatable.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/dialog.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/forms.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/growl.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/menu.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/paginator.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/overlaypanel.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/panel.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/mobile/widgets/tabview.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/inputnumber/inputnumber.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/inputnumber/0-autoNumeric.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/inputnumber/1-jquery.metadata.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/inputnumber/2-inputnumber.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/keyfilter/keyfilter.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/keyfilter/0-jquery.keyfilter.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/keyfilter/1-keyfilter.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/layout/layout.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/layout/0-jquery.layout.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/layout/1-layout.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/knob/knob.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/knob/1-jquery.knob.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/knob/2-knob.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/timeline/timeline.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/timeline/0-timeline.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/timeline/1-timeline.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/socket/socket.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/socket/0-atmosphere.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/socket/1-socket.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/idlemonitor/idlemonitor.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/idlemonitor/0-jquery.idletimer.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/idlemonitor/1-idlemonitor.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery-plugins.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.ui.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.ui.timepicker.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.maskedinput.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.caretposition.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.autosize.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.cookie.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.mousewheel.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.rangy.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.browser.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.ui.touch-punch.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/jquery/jquery.ui.pfextensions.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/colorpicker/colorpicker.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/colorpicker/0-jquery.colorpicker.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/colorpicker/1-colorpicker.js</include>
                            </includes>
                        </aggregation>
                        <aggregation>
                            <insertNewLine>true</insertNewLine>
                            <removeIncluded>true</removeIncluded>
                            <output>${project.build.directory}/classes/META-INF/resources/primefaces/fileupload/fileupload.js</output>
                            <includes>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/fileupload/0-jquery.iframe-transport.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/fileupload/1-jquery.fileupload.js</include>
                                <include>${project.build.directory}/classes/META-INF/resources/primefaces/fileupload/2-fileupload.js</include>
                            </includes>
                        </aggregation>
                    </aggregations>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>release</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.felix</groupId>
                        <artifactId>maven-bundle-plugin</artifactId>
                        <version>3.5.0</version>
                        <extensions>true</extensions>
                        <configuration>
                            <supportedProjectTypes>
                                <supportedProjectType>jar</supportedProjectType>
                            </supportedProjectTypes>
                            <instructions>
                                <Export-Package>org.primefaces.*;version="${project.version}</Export-Package>
                                <Import-Package>
                                    javax.faces.component.search;resolution:=optional,
                                    javax.faces.component.search.*;resolution:=optional,
                                    javax.faces;version="[2.0.0,3.0.0)",
                                    javax.faces.*;version="[2.0.0,3.0.0)",
                                    javax.inject;resolution:=optional,
                                    javax.inject.*;resolution:=optional,
                                    javax.enterprise;resolution:=optional,
                                    javax.enterprise.*;resolution:=optional,
                                    javax.*,
                                    *;resolution:=optional
                                </Import-Package>
                            </instructions>
                        </configuration>
                        <executions>
                            <execution>
                                <id>bundle-manifest</id>
                                <phase>process-classes</phase>
                                <goals>
                                    <goal>manifest</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-jar-plugin</artifactId>
                        <version>3.0.2</version>
                        <configuration>
                            <archive>
                                <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
                                <manifest>
                                    <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                                    <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                                </manifest>
                            </archive>
                        </configuration>
                    </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <version>2.1</version>
                        <executions>
                            <execution>
                                <id>attach-sources</id>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar-no-fork</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <version>2.10.4</version>
                        <configuration>
                            <sourcepath>${basedir}/src/main/java;${basedir}/target/generated-sources/maven-jsf-plugin</sourcepath>
                            <additionalparam>-Xdoclint:none</additionalparam>
                        </configuration>
                        <executions>
                            <execution>
                                <id>attach-docs</id>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>


                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>1.4</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <!--
                        don't skip *.js and *.css, we need to minify
                    -->
                    <plugin>
                        <groupId>net.alchim31.maven</groupId>
                        <artifactId>yuicompressor-maven-plugin</artifactId>
                        <version>1.4.0</version>
                        <configuration>
                            <jswarn>false</jswarn>
                            <excludes>
                                <exclude>**/*.something</exclude>
                                <exclude>**/photocam.js</exclude>
                                <exclude>**/texteditor.js</exclude>
                                <exclude>**/jquery.js</exclude>
                            </excludes>
                            <includes>
                                <include>**/*.js</include>
                                <include>**/*.css</include>
                            </includes>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

</project>
