<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.lsst</groupId>
        <artifactId>org-lsst-ccs-subsystem-main</artifactId>
        <version>6.2.14</version>
        <relativePath />
    </parent>

    <modelVersion>4.0.0</modelVersion>
    <artifactId>org-lsst-ccs-subsystem-gui</artifactId>
    <packaging>pom</packaging>
    <name>LSST CCS - Subsystem Gui (Pom)</name>
    <version>6.2.14</version>
    <url>${org.lsst.ccs.site.url.base}${org.lsst.ccs.site.dir}</url>


    <repositories>
        <repository>
            <id>lsst-maven2-public</id>
            <name>LSST Maven 2 central repository</name>
            <url>https://repo-nexus.lsst.org/nexus/content/groups/ccs-maven2-public/</url>
        </repository>
    </repositories>

    <scm>
        <url>https://github.com/lsst-camera-ccs/org-lsst-ccs-subsystem-gui</url>
        <connection>scm:git:git://github.com/lsst-camera-ccs/org-lsst-ccs-subsystem-gui.git</connection>
        <developerConnection>scm:git:https://${env.GIT_USERNAME}:${env.GIT_PASSWORD}@github.com/lsst-camera-ccs/org-lsst-ccs-subsystem-gui.git</developerConnection>
        <tag>org-lsst-ccs-subsystem-gui-6.2.14</tag>
   </scm>
    
    <distributionManagement>
        <site>
            <id>github</id>
            <name>LSST Public pages in github</name>
            <url>scm:git:https://${env.GIT_USERNAME}:${env.GIT_PASSWORD}@github.com/lsst-camera-ccs/org-lsst-ccs-site.git</url>
        </site>
    </distributionManagement>

    <properties>
        <org_lsst_ccs_project_type>external-pom</org_lsst_ccs_project_type>
        <org_lsst_ccs_project_jira_prefix />
        <org_lsst_ccs_project_jira_project />
        <org.lsst.ccs.site.dir>site-root/poms/${project.artifactId}/${project.version}</org.lsst.ccs.site.dir>        
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.lsst</groupId>
            <artifactId>org-lsst-ccs-ui</artifactId>
            <version>4.6.9</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            
            <plugin>
                <groupId>org.freehep</groupId>
                <artifactId>freehep-jas-plugin</artifactId>
                <version>3.1.10</version>
                <configuration>
                    <urls>
                        <property>
                            <name>org.lsst:*</name>
                            <value>https://repo-nexus.lsst.org/nexus/content/groups/ccs-maven2-public/</value>
                        </property>
                    </urls> 
                    <redirectUrls>
                        <property>
                            <name>https://repo-nexus.lsst.org/nexus/content/groups/ccs-maven2-public/</name>
                            <value>https://repo-nexus.lsst.org/nexus/service/local/artifact/maven/redirect?r=ccs-maven2-public</value>
                        </property>
                    </redirectUrls> 
                    <includes combine.children="append">
                        <include>org.lsst:${org.lsst.ccs.subsystem.project.name}-buses</include>
                        <include>org.lsst:org-lsst-ccs-ui</include>
                        <include>com.sun.jersey:jersey-client</include>
                        <include>com.sun.jersey:jersey-server</include>
                        <include>com.sun.jersey:jersey-core</include>
                        <include>org.lsst:org-lsst-ccs-localdb-jar</include>
                        <include>org.lsst:org-lsst-ccs-buses-definition</include>
                        <include>org.lsst:org-lsst-ccs-messaging-layer</include>
                        <include>org.lsst:org-lsst-ccs-messaging-jgroups</include>
                        <include>org.lsst:org-lsst-ccs-utilities</include>
                        <include>org.lsst:org-lsst-ccs-subsystem-console</include>
                        <include>org.lsst:org-lsst-ccs-elog</include>
                        <include>org.lsst:org-lsst-ccs-core</include>
                        <include>org.lsst:org-lsst-ccs-command</include>
                        <include>org.lsst:org-lsst-ccs-bootstrap</include>
                        <include>org.freehep:jas-aida-plugin</include>
                        <include>org.freehep:jas-graphicsio</include>
                        <include>org.jgroups:jgroups</include>
                        <include>commons-cli:commons-cli</include>
                        <include>commons-httpclient:commons-httpclient</include>
                        <include>commons-logging:commons-logging</include>
                        <include>commons-codec:commons-codec</include>
                        <!-- This one is to be deleted. It is used only because of FrameworkUtils in org-lsst-ccs-messaging-layer -->                        
                        <include>log4j:log4j</include>
                        <!-- DELETE log4j -->
                    </includes>                           
                </configuration>
                <executions>
                    <execution>
                        <id>Merge generated plugin descriptors</id>
                        <goals>
                            <goal>merge-descriptor</goal>
                        </goals>
                        <configuration>
                            <inputDirectory>${basedir}/target/generated-sources/filtered</inputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <executions>
                    
                    <execution>
                        <id>Filter generated resources</id>
                        <phase>process-classes</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${basedir}/target/generated-sources/filtered/PLUGIN-inf</outputDirectory>
                            <resources>          
                                <resource>
                                    <directory>${basedir}/target/generated-sources/annotations/PLUGIN-inf</directory>
                                    <filtering>true</filtering>
                                </resource>
                            </resources>              
                        </configuration>            
                    </execution>
          
                    <execution>
                        <id>copy-generated-resources-to-distribution</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.directory}/distribution/etc</outputDirectory>
                            <resources>          
                                <resource>                                    
                                    <directory>${basedir}/target/generated-sources/annotations/etc</directory>
                                    <filtering>true</filtering>
                                </resource>
                            </resources>              
                        </configuration>            
                    </execution>
          
                </executions>
            </plugin>
                  
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>Hudson</id>            
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.freehep</groupId>
                        <artifactId>freehep-jas-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>submit-descriptor</id>
                                <goals>
                                    <goal>submit-descriptor</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>processPluginDescriptor</id>            
            <activation>
                <file>
                    <exists>src/main/resources/PLUGIN-inf/plugins.xml</exists>
                </file>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.freehep</groupId>
                        <artifactId>freehep-jas-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>process-descriptor</id>
                                <goals>
                                    <goal>process-descriptor</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>copyDependencies</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.freehep</groupId>
                        <artifactId>freehep-jas-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>copyBasicJasDependencies</id>
                                <goals>
                                    <goal>install</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>                      
                </plugins>
            </build>
        </profile>
    </profiles>
    
</project>

