<?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/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>atlassian-connect-parent</artifactId>
        <groupId>com.atlassian.plugins</groupId>
        <version>1.0-m27.2-RC-build1</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>atlassian-connect-plugin</artifactId>
    <name>Atlassian Connect - Plugin</name>
    <packaging>atlassian-plugin</packaging>

    <licenses>
        <license>
            <name>Apache License 2.0</name>
            <url>http://www.apache.org/licenses/LICENSE-2.0</url>
            <distribution>repo</distribution>
        </license>
    </licenses>

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

        <!-- TODO: get schema-validator and guava 15.0+ versions into the products so we don't have to bundle them -->
        <dependency>
            <groupId>com.github.fge</groupId>
            <artifactId>json-schema-validator</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <scope>provided</scope>
        </dependency>
        
        
        <dependency>
            <groupId>com.atlassian.plugin</groupId>
            <artifactId>atlassian-spring-scanner</artifactId>
        </dependency>
        <dependency>
            <groupId>com.atlassian.labs</groupId>
            <artifactId>fastdev-plugin</artifactId>
            <version>${fastdev.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.devrel</groupId>
            <artifactId>developer-toolbox-plugin</artifactId>
            <version>${toolbox.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.plugins</groupId>
            <artifactId>atlassian-plugins-osgi-testrunner</artifactId>
            <version>${plugin.testrunner.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-io</groupId>
                    <artifactId>commons-io</artifactId>
                </exclusion>
            </exclusions>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>atlassian-connect-modules</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>atlassian-connect-api</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>atlassian-connect-spi</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>biz.aQute</groupId>
            <artifactId>bndlib</artifactId>
            <version>1.43.0-atlassian-1</version>
        </dependency>
        <dependency>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.osgi</groupId>
            <artifactId>spring-osgi-annotation</artifactId>
            <version>1.2.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.applinks</groupId>
            <artifactId>applinks-spi</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.applinks</groupId>
            <artifactId>applinks-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.plugins</groupId>
            <artifactId>atlassian-plugins-osgi-bridge</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.plugins</groupId>
            <artifactId>atlassian-plugins-osgi</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.plugins</groupId>
            <artifactId>atlassian-plugins-webresource</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.plugins</groupId>
            <artifactId>atlassian-plugins-webfragment</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.sal</groupId>
            <artifactId>sal-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
            <version>1.8-atlassian-8</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.upm</groupId>
            <artifactId>licensing-api</artifactId>
            <scope>provided</scope>
        </dependency>

        <!-- the upm is here just for debugging -->
        <dependency>
            <groupId>com.atlassian.upm</groupId>
            <artifactId>licensing-lib</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.upm</groupId>
            <artifactId>upm-common</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.upm</groupId>
            <artifactId>upm-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.upm</groupId>
            <artifactId>upm-spi</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.upm</groupId>
            <artifactId>atlassian-universal-plugin-manager-plugin</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>com.atlassian.oauth</groupId>
            <artifactId>atlassian-oauth-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.oauth</groupId>
            <artifactId>atlassian-oauth-consumer-spi</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.oauth</groupId>
            <artifactId>atlassian-oauth-service-provider-spi</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.jwt</groupId>
            <artifactId>jwt-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.jwt</groupId>
            <artifactId>jwt-core</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.jwt</groupId>
            <artifactId>jwt-applinks</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.jwt</groupId>
            <artifactId>jwt-plugin</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.plugins.rest</groupId>
            <artifactId>atlassian-rest-common</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.confluence</groupId>
            <artifactId>confluence</artifactId>
            <version>${atlassian.confluence.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.uri</groupId>
            <artifactId>atlassian-uri</artifactId>
        </dependency>
        <dependency>
            <groupId>com.atlassian.httpclient</groupId>
            <artifactId>atlassian-httpclient-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.webhooks</groupId>
            <artifactId>atlassian-webhooks-provider-spi</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.webhooks</groupId>
            <artifactId>atlassian-webhooks-spi</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.jira</groupId>
            <artifactId>jira-core</artifactId>
            <scope>provided</scope>
            <exclusions>
                <exclusion>
                    <groupId>commons-httpclient</groupId>
                    <artifactId>commons-httpclient</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.atlassian.plugins</groupId>
            <artifactId>atlassian-plugins-core</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.jira</groupId>
            <artifactId>jira-rest-plugin</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>net.oauth.core</groupId>
            <artifactId>oauth</artifactId>
        </dependency>
        <dependency>
            <groupId>net.oauth.core</groupId>
            <artifactId>oauth-provider</artifactId>
        </dependency>
        <dependency>
            <groupId>com.atlassian.osgi</groupId>
            <artifactId>atlassian-osgi</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>com.atlassian.util.concurrent</groupId>
                    <artifactId>atlassian-util-concurrent</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.atlassian.templaterenderer</groupId>
            <artifactId>atlassian-template-renderer-api</artifactId>
            <version>${atlassian.templaterenderer.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.atlassian.html</groupId>
            <artifactId>atlassian-html-encoder</artifactId>
            <version>${atlassian.html.encoder.version}</version>
        </dependency>

        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>1.9.0</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.hamcrest</groupId>
            <artifactId>hamcrest-all</artifactId>
            <version>${hamcrest.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>com.atlassian.aui</groupId>
            <artifactId>auiplugin</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.skyscreamer</groupId>
            <artifactId>jsonassert</artifactId>
            <version>1.2.0</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>uk.co.datumedge</groupId>
            <artifactId>hamcrest-json</artifactId>
            <version>0.2</version>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.skyscreamer</groupId>
                    <artifactId>jsonassert</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.hamcrest</groupId>
                    <artifactId>hamcrest-core</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
        </dependency>
        
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>com.atlassian.maven.plugins</groupId>
                <artifactId>maven-amps-plugin</artifactId>
                <configuration>
                    <skipManifestValidation>true</skipManifestValidation>
                    <jvmArgs>-Xmx1024m -XX:MaxPermSize=256m</jvmArgs>
                    <buildTestPlugin>${build.test.plugin}</buildTestPlugin>
                    <testBundleExcludes>
                        <testBundleExclude>
                            <groupId>com.atlassian.plugin</groupId>
                            <artifactId>atlassian-spring-scanner</artifactId>
                        </testBundleExclude>
                    </testBundleExcludes>
                    <instructions>
                        <!-- <Import-Package>
                            com.atlassian.upm.*,
                            com.atlassian.confluence.plugin.descriptor.web.descriptors;resolution:=optional,
                            com.atlassian.confluence.plugin.webresource;resolution:=optional,
                            com.atlassian.confluence.security.websudo;resolution:=optional,
                            com.atlassian.jira;resolution:=optional,
                            com.atlassian.jira.config;resolution:=optional,
                            com.atlassian.jira.plugin.webfragment.descriptors;resolution:=optional,
                            com.atlassian.jira.security;resolution:=optional,
                            com.atlassian.jira.security.websudo;resolution:=optional,
                            com.atlassian.oauth*;version="(1.2,2.0]",
                            com.atlassian.jwt.*;version="${atlassian.jwt.version}",

                            com.atlassian.plugin;version="${atlassian.plugins.api.version}",
                            com.atlassian.plugin.descriptors;resolution:="optional",
                            com.atlassian.plugin.elements;resolution:="optional",
                            com.atlassian.plugin.event;version="${atlassian.plugins.api.version}",
                            com.atlassian.plugin.event.events;resolution:="optional",
                            com.atlassian.plugin.hostcontainer;resolution:="optional",
                            com.atlassian.plugin.module;version="${atlassian.plugins.api.version}",
                            com.atlassian.plugin.schema.descriptor;version="${atlassian.plugins.api.version}",
                            com.atlassian.plugin.schema.spi;version="${atlassian.plugins.api.version}",
                            com.atlassian.plugin.servlet;version="${atlassian.plugins.api.version}",
                            com.atlassian.plugin.servlet.descriptors;resolution:="optional",
                            com.atlassian.plugin.servlet.filter ;resolution:="optional",
                            com.atlassian.plugin.servlet.util;resolution: ="optional",
                            com.atlassian.plugin.tracker;resolution:="optional",
                            com.atlassian.plugin.util;resolution:="optional",
                            com.atlassian.plugin.web;version="${atlassian.plugins.api.version}",
                            com.atlassian.plugin.web.conditions;resolution:="optional",
                            com.atlassian.plugin.web.descriptors;resolution:="optional",
                            com.atlassian.plugin.web.model;resolution:="optional",
                            com.atlassian.plugin.webresource;version="${atlassian.plugins.api.version}",
                            com.atlassian.plugin.webresource.transformer;resolution:="optional",

                            com.atlassian.templaterenderer;version="1.4.0",
                            com.atlassian.refapp.auth.external;resolution:=optional,
                            com.atlassian.sal.api.*;version="(2.4,3.0]",
                            com.atlassian.util.concurrent*;version="${atlassian-util-concurrent.version}",
                            com.atlassian.crowd.embedded.api.*;version="2.0";resolution:=optional,
                            com.atlassian.webhooks.spi*;version="${atlassian.webhooks.api.version}",
                            com.atlassian.httpclient.api*;version="${atlassian.httpclient.api.version}",
                            com.sun.mail.handlers;resolution:=optional,
                            net.oauth*,
                            javax.servlet;version="0.0.0",
                            javax.servlet.http;version="0.0.0",
                            javax.inject;version="1",
                            javax.xml*,
                            org.apache.commons.lang.*;version="2.4",
                            org.dom4j*,
                            org.joda.time*;version="1.6",
                            org.slf4j*;version="1.5",
                            org.xml.sax*,
                            com.atlassian.plugin.connect.api*;version="${project.version}",
                            com.atlassian.plugin.connect.spi*;version="${project.version}",
                            com.atlassian.plugin.connect.plugin*;version="${project.version}",
                            *;resolution:=optional
                        </Import-Package> -->
                        <Export-Package>
                            com.atlassian.plugin.connect.api*;version="${project.version}",
                            com.atlassian.plugin.connect.api.*;version="${project.version}",
                            com.atlassian.plugin.connect.spi*;version="${project.version}",
                            com.atlassian.plugin.connect.spi.*;version="${project.version}",
                            com.atlassian.plugin.connect.plugin*;version="${project.version}",
                            com.atlassian.plugin.connect.plugin.*;version="${project.version}",
                            com.atlassian.plugin.connect.plugin.product*;version="${project.version}",
                            com.atlassian.plugin.connect.plugin.product.*;version="${project.version}",
                            com.atlassian.plugin.connect.modules.beans*,
                            com.atlassian.plugin.connect.modules.beans.*
                        </Export-Package>
                        <Spring-Context>*</Spring-Context>
                        <Atlassian-Plugin-Key>${groupId}.${artifactId}</Atlassian-Plugin-Key>
                        <!-- DO NOT put Atlassian-Plugin-Key here!! it will bypass all transforms and component-imports will break -->
                    </instructions>
                    <systemPropertyVariables>
                        <atlassian.mail.senddisabled>false</atlassian.mail.senddisabled>
                        <sun.net.http.allowRestrictedHeaders>true</sun.net.http.allowRestrictedHeaders>
                        <atlassian.dev.mode>${devmode}</atlassian.dev.mode>
                    </systemPropertyVariables>

                    <products>
                        <product>
                            <id>jira</id>
                            <version>${atlassian.jira.version}</version>
                            <log4jProperties>${basedir}/../integration-tests/src/test/resources/log4j-jira.properties</log4jProperties>
                            <productDataPath>${basedir}/../integration-tests/src/test/resources/jira-generated-test-resources.zip</productDataPath>
                            <systemPropertyVariables>
                                <product>jira</product>
                                <atlassian.upm.on.demand>${atlassian.upm.on.demand}</atlassian.upm.on.demand>
                            </systemPropertyVariables>
                            <pluginArtifacts>
                                <pluginArtifact>
                                    <groupId>com.atlassian.webhooks</groupId>
                                    <artifactId>atlassian-webhooks-plugin</artifactId>
                                    <version>${atlassian.webhooks.version}</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <groupId>com.atlassian.jira.plugins.webhooks</groupId>
                                    <artifactId>jira-webhooks-plugin</artifactId>
                                    <version>${atlassian.jira.webhooks.version}</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <groupId>com.atlassian.httpclient</groupId>
                                    <artifactId>atlassian-httpclient-plugin</artifactId>
                                    <version>${atlassian.httpclient.version}</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <groupId>com.atlassian.gadgets</groupId>
                                    <artifactId>atlassian-gadgets-publisher-plugin</artifactId>
                                    <version>3.2.0-m8</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <groupId>com.atlassian.jwt</groupId>
                                    <artifactId>jwt-plugin</artifactId>
                                    <version>${atlassian.jwt.version}</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <groupId>com.atlassian.jira.tests</groupId>
                                    <artifactId>jira-testkit-plugin</artifactId>
                                    <version>${atlassian.jira.testkit.version}</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <groupId>com.atlassian.bundles</groupId>
                                    <artifactId>json-schema-validator-atlassian-bundle</artifactId>
                                    <version>${atlassian.json.schema.validator.version}</version>
                                </pluginArtifact>
                            </pluginArtifacts>

                            <bundledArtifacts>
                                <!-- TODO: remove this once UPM 2.13 is bundled with products -->
                                <bundledArtifact>
                                    <groupId>com.atlassian.upm</groupId>
                                    <artifactId>atlassian-universal-plugin-manager-plugin</artifactId>
                                    <version>${atlassian.upm.version}</version>
                                </bundledArtifact>
                            </bundledArtifacts>
                        </product>
                        <product>
                            <id>confluence</id>
                            <version>${atlassian.confluence.version}</version>
                            <log4jProperties>${basedir}/../integration-tests/src/test/resources/log4j-confluence.properties</log4jProperties>
                            <productDataPath>${basedir}/../integration-tests/src/test/resources/confluence-generated-test-resources.zip</productDataPath>
                            <systemPropertyVariables>
                                <product>confluence</product>
                                <atlassian.upm.on.demand>${atlassian.upm.on.demand}</atlassian.upm.on.demand>
                            </systemPropertyVariables>
                            <pluginArtifacts>
                                <pluginArtifact>
                                    <groupId>com.atlassian.webhooks</groupId>
                                    <artifactId>atlassian-webhooks-plugin</artifactId>
                                    <version>${atlassian.webhooks.version}</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <groupId>com.atlassian.httpclient</groupId>
                                    <artifactId>atlassian-httpclient-plugin</artifactId>
                                    <version>${atlassian.httpclient.version}</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <groupId>com.atlassian.jwt</groupId>
                                    <artifactId>jwt-plugin</artifactId>
                                    <version>${atlassian.jwt.version}</version>
                                </pluginArtifact>
                                <pluginArtifact>
                                    <artifactId>json-schema-validator-atlassian-bundle</artifactId>
                                    <groupId>com.atlassian.bundles</groupId>
                                    <version>${atlassian.json.schema.validator.version}</version>
                                </pluginArtifact>
                            </pluginArtifacts>
                            <bundledArtifacts>
                                <!-- TODO: remove this once UPM 2.13 is bundled with products -->
                                <bundledArtifact>
                                    <groupId>com.atlassian.upm</groupId>
                                    <artifactId>atlassian-universal-plugin-manager-plugin</artifactId>
                                    <version>${atlassian.upm.version}</version>
                                </bundledArtifact>
                            </bundledArtifacts>
                        </product>
                    </products>
                </configuration>
            </plugin>

            <plugin>
                <groupId>net.alchim31.maven</groupId>
                <artifactId>yuicompressor-maven-plugin</artifactId>
                <version>1.3.0</version>
                <executions>
                    <execution>
                        <id>all-min-css</id>
                        <goals>
                            <goal>compress</goal>
                        </goals>
                        <configuration>
                            <gzip>false</gzip>
                            <excludeResources>true</excludeResources>
                            <sourceDirectory>${project.build.outputDirectory}/css/iframe</sourceDirectory>
                            <outputDirectory>${project.build.outputDirectory}/css/iframe-min</outputDirectory>
                            <aggregations>
                                <aggregation>
                                    <removeIncluded>false</removeIncluded>
                                    <insertNewLine>true</insertNewLine>
                                    <output>${project.build.outputDirectory}/all.css</output>
                                    <includes>
                                        <include>css/iframe-min/*.css</include>
                                    </includes>
                                </aggregation>
                            </aggregations>
                        </configuration>
                    </execution>
                    <execution>
                        <id>all-debug-css</id>
                        <goals>
                            <goal>compress</goal>
                        </goals>
                        <configuration>
                            <gzip>false</gzip>
                            <nocompress>true</nocompress>
                            <excludeResources>true</excludeResources>
                            <aggregations>
                                <aggregation>
                                    <removeIncluded>false</removeIncluded>
                                    <insertNewLine>true</insertNewLine>
                                    <output>${project.build.outputDirectory}/all-debug.css</output>
                                    <includes>
                                        <include>css/iframe/core.css</include>
                                        <include>css/iframe/dialog2.css</include>
                                    </includes>
                                </aggregation>
                            </aggregations>
                        </configuration>
                    </execution>
                    <execution>
                        <id>all-min-js</id>
                        <goals>
                            <goal>compress</goal>
                        </goals>
                        <configuration>
                            <gzip>false</gzip>
                            <jswarn>false</jswarn>
                            <excludeResources>true</excludeResources>
                            <sourceDirectory>${project.build.outputDirectory}/js/iframe</sourceDirectory>
                            <outputDirectory>${project.build.outputDirectory}/js/iframe-min</outputDirectory>
                            <aggregations>
                                <aggregation>
                                    <removeIncluded>false</removeIncluded>
                                    <insertNewLine>true</insertNewLine>
                                    <output>${project.build.outputDirectory}/all.js</output>
                                    <includes>
                                        <!-- note: any changes here must also be made in StaticResourcesFilter.java -->
                                        <include>js/iframe-min/_amd-min.js</include>
                                        <include>js/iframe-min/plugin/_util-min.js</include>
                                        <include>js/iframe-min/plugin/_dollar-min.js</include>
                                        <include>js/iframe-min/_events-min.js</include>
                                        <include>js/iframe-min/_base64-min.js</include>
                                        <include>js/iframe-min/_xdm-min.js</include>
                                        <include>js/iframe-min/plugin/_rpc-min.js</include>
                                        <include>js/iframe-min/plugin/events-min.js</include>
                                        <include>js/iframe-min/plugin/env-min.js</include>
                                        <include>js/iframe-min/plugin/request-min.js</include>
                                        <include>js/iframe-min/plugin/dialog-min.js</include>
                                        <include>js/iframe-min/plugin/_resize_listener-min.js</include>
                                        <!-- product-specific inclusions are temporary until made more dynamic -->
                                        <include>js/iframe-min/plugin/jira-min.js</include>
                                        <include>js/iframe-min/plugin/confluence-min.js</include>
                                        <include>js/iframe-min/plugin/_init-min.js</include>
                                    </includes>
                                </aggregation>
                            </aggregations>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>xml-maven-plugin</artifactId>
                <version>1.0</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>transform</goal>
                        </goals>
                        <phase>process-resources</phase>
                    </execution>
                </executions>
                <configuration>
                    <transformationSets>
                        <transformationSet>
                            <dir>${project.build.outputDirectory}</dir>
                            <includes>
                                <include>atlassian-plugin.xml</include>
                            </includes>
                            <stylesheet>${basedir}/src/main/build/plugin-merge.xsl</stylesheet>
                            <outputDir>${project.build.outputDirectory}</outputDir>
                            <parameters>
                                <parameter>
                                    <name>baseDir</name>
                                    <value>${project.build.outputDirectory}</value>
                                </parameter>
                            </parameters>
                        </transformationSet>
                    </transformationSets>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.twdata.maven</groupId>
                <artifactId>maven-cli-plugin</artifactId>
                <version>1.0.10</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>execute</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <commands>
                        <pi>com.atlassian.maven.plugins:maven-amps-plugin:copy-bundled-dependencies com.atlassian.maven.plugins:maven-amps-plugin:compress-resources org.apache.maven.plugins:maven-resources-plugin:resources com.atlassian.maven.plugins:maven-amps-plugin:filter-plugin-descriptor org.codehaus.mojo:xml-maven-plugin:transform compile com.atlassian.maven.plugins:maven-amps-plugin:generate-manifest com.atlassian.maven.plugins:maven-amps-plugin:validate-manifest com.atlassian.maven.plugins:maven-amps-plugin:jar org.apache.maven.plugins:maven-install-plugin:install com.atlassian.maven.plugins:maven-amps-plugin:install</pi>
                    </commands>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.6</version>
                <executions>
                    <execution>
                        <id>copy-plugin-info</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.outputDirectory}</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>src/main/resources</directory>
                                    <includes>
                                        <include>build.properties</include>
                                    </includes>
                                    <filtering>true</filtering>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <!-- this MUST run after compilation -->
            <plugin>
                <groupId>${project.groupId}</groupId>
                <artifactId>json-schemagen-maven-plugin</artifactId>
                <version>${project.version}</version>
                <executions>
                    <execution>
                        <id>schema-support</id>
                        <phase>process-classes</phase>
                        <goals>
                            <goal>generate-support-docs</goal>
                        </goals>
                        <configuration>
                            <basePackage>com.atlassian.plugin.connect.modules.beans</basePackage>
                            <sourcepath>src/main/java:../modules/src/main/java</sourcepath>
                        </configuration>
                    </execution>
                    <execution>
                        <id>jira-schema</id>
                        <phase>process-classes</phase>
                        <goals>
                            <goal>generate-schema</goal>
                        </goals>
                        <configuration>
                            <generatorProvider>com.atlassian.plugin.connect.schema.JiraSchemaGeneratorProvider</generatorProvider>
                            <rootClassName>com.atlassian.plugin.connect.modules.beans.ConnectAddonBean</rootClassName>
                            <rawOutput>${project.build.outputDirectory}/schema/jira-schema.json</rawOutput>
                            <prettyOutput>${project.build.outputDirectory}/schema/jira-schema-pretty.json</prettyOutput>
                        </configuration>
                    </execution>
                    <execution>
                        <id>confluence-schema</id>
                        <phase>process-classes</phase>
                        <goals>
                            <goal>generate-schema</goal>
                        </goals>
                        <configuration>
                            <generatorProvider>com.atlassian.plugin.connect.schema.ConfluenceSchemaGeneratorProvider</generatorProvider>
                            <rootClassName>com.atlassian.plugin.connect.modules.beans.ConnectAddonBean</rootClassName>
                            <rawOutput>${project.build.outputDirectory}/schema/confluence-schema.json</rawOutput>
                            <prettyOutput>${project.build.outputDirectory}/schema/confluence-schema-pretty.json</prettyOutput>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <!-- we need to use this instead of built-in javac processing so we can process multiple source roots -->
            <plugin>
                <groupId>org.bsc.maven</groupId>
                <artifactId>maven-processor-plugin</artifactId>
                <version>2.2.4</version>
                <executions>
                    <execution>
                        <id>process</id>
                        <goals>
                            <goal>process</goal>
                        </goals>
                        <phase>process-resources</phase>
                    </execution>
                </executions>
                <configuration>
                    <additionalSourceDirectories>
                        <additionalSourceDirectory>../modules/src/main/java/</additionalSourceDirectory>
                        <additionalSourceDirectory>../api-parent/spi/src/main/java/</additionalSourceDirectory>
                    </additionalSourceDirectories>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <compilerArgument>-proc:none</compilerArgument>
                    <source>1.6</source>
                    <target>1.6</target>
                    <encoding>${project.build.sourceEncoding}</encoding>
                </configuration>
            </plugin>
            
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>karma-tests</id>
            <activation>
                <property>
                    <name>runKarma</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <!-- unpack lib dependencies to make available to qunit -->
                    <plugin>
                        <artifactId>maven-dependency-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>extract-qunit-dependencies</id>
                                <phase>generate-test-resources</phase>
                                <goals>
                                    <goal>unpack-dependencies</goal>
                                </goals>
                                <configuration>
                                    <outputDirectory>${project.build.directory}/qunit/dependencies</outputDirectory>
                                    <includeGroupIds>com.atlassian.aui</includeGroupIds>
                                    <includeArtifactIds>auiplugin</includeArtifactIds>
                                    <includes>**/*.js</includes>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <!-- karma testrunner plugin for iframe code -->
                    <plugin>
                        <groupId>com.kelveden</groupId>
                        <artifactId>maven-karma-plugin</artifactId>
                        <version>1.5</version>
                        <executions>
                            <!-- test plugin-side code -->
                            <execution>
                                <id>karma-iframe-tests</id>
                                <goals>
                                    <goal>start</goal>
                                </goals>
                                <configuration>
                                    <configFile>karma.iframe.conf.js</configFile>
                                </configuration>
                            </execution>
                            <!-- test host-side code -->
                            <execution>
                                <id>karma-host-tests</id>
                                <goals>
                                    <goal>start</goal>
                                </goals>
                                <configuration>
                                    <configFile>karma.conf.js</configFile>
                                </configuration>
                            </execution>
                        </executions>
                        <configuration>
                            <browsers>Chrome</browsers>
                            <karmaExecutable>node_modules/karma/bin/karma</karmaExecutable>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>wired</id>
            <properties>
                <skipITs>false</skipITs>
                <build.test.plugin>true</build.test.plugin>
                <devmode>true</devmode>
                <test.plugin.artifact> </test.plugin.artifact>
            </properties>
        </profile>

        <profile>
            <id>docs</id>
            <!-- Build the docs - these goals MUST run after schema generation -->
            <activation>
                <property>
                    <name>!skipDocs</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.github.eirslett</groupId>
                        <artifactId>frontend-maven-plugin</artifactId>
                        <version>0.0.11</version>
                        <configuration>
                            <workingDirectory>../docs</workingDirectory>
                        </configuration>
                        <executions>
                            <execution>
                                <id>install node and npm</id>
                                <goals>
                                    <goal>install-node-and-npm</goal>
                                </goals>
                                <phase>prepare-package</phase>
                                <configuration>
                                    <nodeVersion>v0.10.18</nodeVersion>
                                    <npmVersion>1.3.8</npmVersion>
                                </configuration>
                            </execution>
                            <execution>
                                <id>npm install</id>
                                <goals>
                                    <goal>npm</goal>
                                </goals>
                                <phase>prepare-package</phase>
                                <configuration>
                                    <arguments>install</arguments>
                                </configuration>
                            </execution>
                            <execution>
                                <id>npm run-script build</id>
                                <goals>
                                    <goal>npm</goal>
                                </goals>
                                <phase>prepare-package</phase>
                                <configuration>
                                    <arguments>run-script build</arguments>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-resources-plugin</artifactId>
                        <version>2.6</version>
                        <executions>
                            <execution>
                                <id>copy-resources</id>
                                <phase>prepare-package</phase>
                                <goals>
                                    <goal>copy-resources</goal>
                                </goals>
                                <configuration>
                                    <outputDirectory>${project.build.directory}/classes/docs</outputDirectory>
                                    <resources>
                                        <resource>
                                            <directory>../docs/target/www</directory>
                                        </resource>
                                    </resources>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    <properties>
        <product>jira</product>
        <skipITs>true</skipITs>
        <build.test.plugin>false</build.test.plugin>
        <devmode>true</devmode>
        <fastdev.version>2.2</fastdev.version>
        <toolbox.version>2.0.6</toolbox.version>
        <plugin.testrunner.version>1.1.2</plugin.testrunner.version>
        <test.plugin.artifact> </test.plugin.artifact>
        <runKarma>false</runKarma>
    </properties>
</project>
