<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">
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.bedework.caleng</groupId>
	<artifactId>bw-calendar-engine</artifactId>
	<version>3.12.0</version>
	<packaging>pom</packaging>
	<name>bw-calendar-engine</name>
  <description>Main calendar engine code for bedework</description>
  <url>https://github.com/Bedework/bw-calendar-engine</url>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<!-- Maven Plugin Versions -->
		<maven.compiler.plugin.version>2.3.2</maven.compiler.plugin.version>
		<maven.source.plugin.version>2.1.2</maven.source.plugin.version>

		<!-- Bedework Versions -->

		<bw-xml.version>4.0.5</bw-xml.version>
		<bw-util.version>4.0.18</bw-util.version>
    <bw-util2.version>4.0.0</bw-util2.version>
		<bw-access.version>4.0.2</bw-access.version>
		<bw-webdav.version>4.0.2</bw-webdav.version>
		<bw-caldav.version>4.0.3</bw-caldav.version>

    <commons.csv.version>1.2</commons.csv.version>
    <commons.io.version>2.0.1</commons.io.version>

    <digester-version>1.8</digester-version>

    <ical4j.groupId>org.bedework.ical4j</ical4j.groupId>
    <ical4j.artifactId>ical4j</ical4j.artifactId>
    <ical4j.version>2.0.3</ical4j.version>
    <!--
    <ical4j.groupId>org.bedework.ical4j</ical4j.groupId>
    <ical4j.artifactId>ical4j</ical4j.artifactId>
    <ical4j.version>1.1.4</ical4j.version>
    -->

		<!-- Third Party Library Versions -->
    <elasticsearch.version>1.5.2</elasticsearch.version>
    <hibernate.version>5.2.5.Final</hibernate.version>
    <hibernate-validator.version>5.3.4.Final</hibernate-validator.version>
		<ical4j-vcard.version>1.0.4</ical4j-vcard.version>
    <jackson.version>2.3.1</jackson.version>
    <javax.mail.version>1.5.4</javax.mail.version>
		<junit.version>4.8.2</junit.version>
		<log4j.version>1.2.15</log4j.version>
		<servlet-api.version>2.4</servlet-api.version>
		<apache-jdkim-library.version>0.4</apache-jdkim-library.version>
	</properties>

	<organization>
		<name>Bedework</name>
		<url>https://github.com/Bedework</url>
	</organization>

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

	<scm>
		<connection>scm:git:git@github.com:Bedework/bw-calendar-engine.git</connection>
		<developerConnection>scm:git:git@github.com:Bedework/bw-calendar-engine.git</developerConnection>
		<url>https://github.com/Bedework/bw-calendar-engine</url>
	  <tag>bw-calendar-engine-3.12.0</tag>
  </scm>

	<issueManagement>
		<system>github</system>
		<url>https://github.com/Bedework/bw-calendar-engine/issues</url>
	</issueManagement>

	<modules>
		<module>bw-calendar-engine-annotations</module>
		<module>bw-calendar-engine-api</module>
		<module>bw-calendar-engine-core</module>
		<module>bw-calendar-engine-caldav</module>
		<module>bw-calendar-engine-impl</module>
		<module>bw-calendar-engine-facade</module>
		<module>bw-calendar-engine-chgnote</module>
		<module>bw-calendar-engine-dumprestore</module>
		<module>bw-calendar-engine-ical</module>
		<module>bw-calendar-engine-indexer</module>
		<module>bw-calendar-engine-inoutsched</module>
		<module>bw-calendar-engine-interfaces</module>
    <module>bw-calendar-engine-notifyws</module>
    <module>bw-calendar-engine-pubcaldav</module>
    <module>bw-calendar-engine-publicws</module>
    <module>bw-calendar-engine-synchws</module>
		<module>bw-calendar-engine-sysevents-common</module>
    <module>bw-calendar-engine-sysevents-msgs</module>
    <module>bw-calendar-engine-tools</module>
    <module>bw-calendar-engine-ucaldav</module>
    <module>bw-calendar-engine-userws</module>
    <module>bw-calendar-engine-mail</module>
  </modules>

  <developers>
    <developer>
      <name>Mike Douglass</name>
      <organization>
        Spherical Cow Group
      </organization>
      <organizationUrl>http://sphericalcowgroup.com/</organizationUrl>
    </developer>
    <developer>
      <name>Arlen Johnson</name>
      <organization>
        Spherical Cow Group
      </organization>
      <organizationUrl>http://sphericalcowgroup.com/</organizationUrl>
    </developer>
  </developers>

  <distributionManagement>
    <snapshotRepository>
      <id>ossrh</id>
      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
    </snapshotRepository>
    <repository>
      <id>ossrh</id>
      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
    </repository>
  </distributionManagement>

	<dependencyManagement>
		<dependencies>
			<!-- Bedework Project Dependencies -->
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-args</artifactId>
        <version>${bw-util.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-caching</artifactId>
        <version>${bw-util.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-cli</artifactId>
        <version>${bw-util.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-dav</artifactId>
        <version>${bw-util.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-elasticsearch</artifactId>
        <version>${bw-util.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-hibernate</artifactId>
        <version>${bw-util.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-http</artifactId>
        <version>${bw-util.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-indexing</artifactId>
        <version>${bw-util.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-jmx</artifactId>
        <version>${bw-util.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-jolokia</artifactId>
        <version>${bw-util.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-misc</artifactId>
        <version>${bw-util.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-security</artifactId>
        <version>${bw-util.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-timezones</artifactId>
        <version>${bw-util.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util-xml</artifactId>
        <version>${bw-util.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util2-calendar</artifactId>
        <version>${bw-util2.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-util2-vcard</artifactId>
        <version>${bw-util2.version}</version>
      </dependency>

			<dependency>
				<groupId>org.bedework</groupId>
				<artifactId>bw-access</artifactId>
				<version>${bw-access.version}</version>
			</dependency>

			<dependency>
				<groupId>org.bedework</groupId>
				<artifactId>bw-webdav</artifactId>
				<version>${bw-webdav.version}</version>
			</dependency>
			<dependency>
				<groupId>org.bedework</groupId>
				<artifactId>bw-caldav-util</artifactId>
				<version>${bw-caldav.version}</version>
			</dependency>
			<dependency>
				<groupId>org.bedework</groupId>
				<artifactId>bw-caldav-server</artifactId>
				<version>${bw-caldav.version}</version>
			</dependency>
      
			<!-- Bedework: Web Services -->
			<dependency>
				<groupId>org.bedework</groupId>
				<artifactId>bw-xml-icalendar</artifactId>
				<version>${bw-xml.version}</version>
			</dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-xml-bwlicense</artifactId>
        <version>${bw-xml.version}</version>
      </dependency>

			<dependency>
				<groupId>org.bedework</groupId>
				<artifactId>bw-xml-tzsvr</artifactId>
				<version>${bw-xml.version}</version>
			</dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-xml-synchws</artifactId>
        <version>${bw-xml.version}</version>
      </dependency>

			<dependency>
				<groupId>org.bedework</groupId>
				<artifactId>bw-xml-calws-soap</artifactId>
				<version>${bw-xml.version}</version>
			</dependency>

      <dependency>
        <groupId>${ical4j.groupId}</groupId>
        <artifactId>${ical4j.artifactId}</artifactId>
        <version>${ical4j.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bedework</groupId>
        <artifactId>bw-ical4j-vcard</artifactId>
        <version>${ical4j-vcard.version}</version>
      </dependency>

			<!-- Third Party Libraries -->
			<dependency>
				<groupId>org.hibernate</groupId>
				<artifactId>hibernate-core</artifactId>
				<version>${hibernate.version}</version>
			</dependency>
      
			<dependency>
				<groupId>org.hibernate</groupId>
				<artifactId>hibernate-validator</artifactId>
				<version>${hibernate-validator.version}</version>
			</dependency>
      
			<dependency>
				<groupId>javax.servlet</groupId>
				<artifactId>servlet-api</artifactId>
				<version>${servlet-api.version}</version>
			</dependency>
      
			<dependency>
				<groupId>org.bedework</groupId>
				<artifactId>apache-jdkim-library</artifactId>
				<version>${apache-jdkim-library.version}</version>
			</dependency>

      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${commons.io.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-csv</artifactId>
        <version>${commons.csv.version}</version>
      </dependency>

      <dependency>
        <groupId>commons-digester</groupId>
        <artifactId>commons-digester</artifactId>
        <version>${digester-version}</version>
      </dependency>

      <dependency>
        <groupId>com.sun.mail</groupId>
        <artifactId>javax.mail</artifactId>
        <version>${javax.mail.version}</version>
      </dependency>

      <dependency>
        <groupId>javax.mail</groupId>
        <artifactId>javax.mail-api</artifactId>
        <version>${javax.mail.version}</version>
      </dependency>

      <dependency>
        <groupId>javax.jms</groupId>
        <artifactId>jms-api</artifactId>
        <version>1.1-rev-1</version>
      </dependency>

      <dependency>
        <groupId>org.elasticsearch</groupId>
        <artifactId>elasticsearch</artifactId>
        <version>${elasticsearch.version}</version>
      </dependency>

      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>${jackson.version}</version>
      </dependency>

      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>${jackson.version}</version>
      </dependency>

      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${jackson.version}</version>
      </dependency>

			<dependency>
				<groupId>log4j</groupId>
				<artifactId>log4j</artifactId>
				<version>${log4j.version}</version>
				<exclusions>
					<exclusion>
						<artifactId>jmxtools</artifactId>
						<groupId>com.sun.jdmk</groupId>
					</exclusion>
					<exclusion>
						<artifactId>jmxri</artifactId>
						<groupId>com.sun.jmx</groupId>
					</exclusion>
					<exclusion>
						<artifactId>jms</artifactId>
						<groupId>javax.jms</groupId>
					</exclusion>
				</exclusions>
			</dependency>
			<!-- Test Dependencies -->
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>${junit.version}</version>
				<scope>test</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<build>
		<extensions>
			<extension>
				<groupId>org.apache.maven.wagon</groupId>
				<artifactId>wagon-ssh</artifactId>
				<version>2.9</version>
			</extension>
		</extensions>
		<plugins>
			<!-- Specify the compiler options and settings -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>${maven.compiler.plugin.version}</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
					<showDeprecation>false</showDeprecation>
					<showWarnings>false</showWarnings>
          <!-- This for up-to-date annotation processing
          <annotationProcessors>
            <annotationProcessor>
              org.bedework.calfacade.annotations.BedeworkAp
            </annotationProcessor>
          </annotationProcessors>
          -->
          <compilerArgument>-proc:none</compilerArgument>
        </configuration>
			</plugin>
			<!-- Produce source jars during the 'verify' phase -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>${maven.source.plugin.version}</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<phase>verify</phase>
						<goals>
							<goal>jar</goal>
							<goal>test-jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <version>2.5</version>
        <configuration>
          <autoVersionSubmodules>true</autoVersionSubmodules>
          <useReleaseProfile>false</useReleaseProfile>
          <releaseProfiles>release</releaseProfiles>
        </configuration>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>2.9.1</version>
        <configuration>
          <additionalparam>-Xdoclint:none</additionalparam>
          <failOnError>false</failOnError>
        </configuration>
      </plugin>

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>versions-maven-plugin</artifactId>
        <version>2.3</version>
        <configuration>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-plugin-plugin</artifactId>
        <version>3.5</version>
        <executions>
          <execution>
            <id>default-descriptor</id>
            <phase>process-classes</phase>
          </execution>
        </executions>
        <configuration>
          <goalPrefix>bw-util-deployment</goalPrefix>
          <!--
          <outputDirectory>target/dir</outputDirectory>-->
        </configuration>
      </plugin>
		</plugins>
	</build>


  <profiles>
    <profile>
      <id>release</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <version>2.2.1</version>
            <executions>
              <execution>
                <id>attach-sources</id>
                <goals>
                  <goal>jar-no-fork</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>2.9.1</version>
            <executions>
              <execution>
                <id>attach-javadocs</id>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <additionalparam>-Xdoclint:none</additionalparam>
              <failOnError>false</failOnError>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>1.5</version>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <phase>verify</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
