<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>io.virtualan</groupId>
		<artifactId>virtualan-project</artifactId>
		<version>2.5.2</version>
		<relativePath>../..</relativePath>
	</parent>
	<modelVersion>4.0.0</modelVersion>
	<groupId>io.virtualan</groupId>
	<artifactId>virtualan-plugin</artifactId>
	<packaging>jar</packaging>
	<name>virtualan-plugin</name>
	<version>2.5.2</version>
	<description>
		Virtualan is an open source-based Open API Interface driven Service virtualization tool. Virtualan - Mock service developed on top of the
		boot framework. Any Rest API can be converted as Virtual service in minutes using annotations. Annotations: VirtualService and ApiVirtual
	</description>
	<properties>
		<java.version>11</java.version>
		<maven.compiler.source>${java.version}</maven.compiler.source>
		<maven.compiler.target>${java.version}</maven.compiler.target>
		<hsqldb.version>2.3.2</hsqldb.version>
		<spring.boot.version>2.7.0</spring.boot.version>
		<spring.version>5.0.3.RELEASE</spring.version>
		<groovy.version>3.0.8</groovy.version>
		<junit.version>4.13.2</junit.version>
		<slf4j.version>1.7.36</slf4j.version>
		<validation-api.version>1.1.0.Final</validation-api.version>
		<lombok.version>1.18.20</lombok.version>
		<jaxb.version>2.3.1</jaxb.version>
		<jackson-databind-nullable.version>0.2.1</jackson-databind-nullable.version>
		<mapson.version>1.1.12</mapson.version>
		<swagger-annotations.version>1.6.2</swagger-annotations.version>
		<commons-configuration.version>1.10</commons-configuration.version>
		<rs-api.version>2.1.1</rs-api.version>
		<commons-lang3.version>3.12.0</commons-lang3.version>
		<commons-beanutils.version>1.9.4</commons-beanutils.version>
		<jackson-databind.version>2.13.2</jackson-databind.version>
	</properties>
	<developers>
		<!-- original author of the project -->
		<developer>
			<id>elans3</id>
			<name>Elan Thangamani</name>
			<email>elan.thangamani@virtualan.io</email>
		</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>
	<build>
		<sourceDirectory>src/main/java</sourceDirectory>
		<plugins>
			<plugin>
				<groupId>com.googlecode.maven-download-plugin</groupId>
				<artifactId>download-maven-plugin</artifactId>
				<version>1.2.1</version>
				<executions>
					<execution>
						<id>swagger-editor</id>
						<phase>compile</phase>
						<goals>
							<goal>wget</goal>
						</goals>
						<configuration>
							<url>https://github.com/swagger-api/swagger-editor/archive/master.tar.gz</url>
							<outputFileName>swagger-editor.tar.gz</outputFileName>
							<unpack>true</unpack>
							<outputDirectory>${project.build.directory}</outputDirectory>
						</configuration>
					</execution>
					<execution>
						<id>swagger-ui</id>
						<phase>compile</phase>
						<goals>
							<goal>wget</goal>
						</goals>
						<configuration>
							<url>https://github.com/swagger-api/swagger-ui/archive/master.tar.gz</url>
							<outputFileName>swagger-ui.tar.gz</outputFileName>
							<unpack>true</unpack>
							<outputDirectory>${project.build.directory}</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-enforcer-plugin</artifactId>
				<version>1.4.1</version>
				<executions>
					<execution>
						<goals>
							<goal>enforce</goal>
						</goals>
						<configuration>
							<rules>
								<bannedDependencies>
									<excludes>
										<exclude>com.vaadin.external.google:android-json</exclude>
									</excludes>
								</bannedDependencies>
							</rules>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<version>2.7</version>
				<executions>
					<execution>
						<id>ui-resource</id>
						<phase>compile</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<outputDirectory>target/classes/META-INF/resources/swagger-ui/</outputDirectory>
							<resources>
								<resource>
									<directory>${project.build.directory}/swagger-ui-master/dist/</directory>
								</resource>
							</resources>
						</configuration>
					</execution>
					<execution>
						<id>c-ui-resource</id>
						<phase>compile</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<outputDirectory>target/classes/META-INF/resources/swagger-ui/</outputDirectory>
							<resources>
								<resource>
									<directory>src/main/resources/META-INF/resources</directory>
									<includes>
										<include>swaggerex-ui.html</include>
									</includes>
								</resource>
							</resources>
						</configuration>
					</execution>
					<execution>
						<id>editor-resource</id>
						<phase>compile</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<outputDirectory>target/classes/META-INF/resources/swagger-editor/</outputDirectory>
							<resources>
								<resource>
									<directory>${project.build.directory}/swagger-editor-master/</directory>
									<includes>
										<include>dist/**</include>
										<include>index.html</include>
									</includes>
								</resource>
							</resources>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>
		</plugins>
	</build>

	<dependencies>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>${slf4j.version}</version>
		</dependency>

		<!-- JUnit -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
		</dependency>

		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>${jackson-databind.version}</version>
		</dependency>

		<dependency>
			<groupId>org.codehaus.groovy</groupId>
			<artifactId>groovy</artifactId>
			<version>${groovy.version}</version>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<version>${spring.boot.version}</version>
			<scope>test</scope>
			<exclusions>
				<exclusion>
					<groupId>com.vaadin.external.google</groupId>
					<artifactId>android-json</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
			<version>${spring.boot.version}</version>
			<exclusions>
				<exclusion>
					<groupId>org.apache.logging.log4j</groupId>
					<artifactId>log4j-to-slf4j</artifactId>
				</exclusion></exclusions>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-to-slf4j</artifactId>
			<version>2.17.0</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-jpa</artifactId>
			<version>${spring.boot.version}</version>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-jdbc</artifactId>
			<version>${spring.boot.version}</version>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-batch</artifactId>
			<version>${spring.boot.version}</version>
		</dependency>

		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>${lombok.version}</version>
		</dependency>

		<dependency>
			<groupId>javax.xml.bind</groupId>
			<artifactId>jaxb-api</artifactId>
			<version>${jaxb.version}</version>
		</dependency>

		<dependency>
			<groupId>org.openapitools</groupId>
			<artifactId>jackson-databind-nullable</artifactId>
			<version>${jackson-databind-nullable.version}</version>
		</dependency>

		<dependency>
			<groupId>io.virtualan</groupId>
			<artifactId>mapson</artifactId>
			<version>${mapson.version}</version>
			<exclusions>
				<exclusion>
					<groupId>org.skyscreamer</groupId>
					<artifactId>jsonassert</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>io.swagger</groupId>
			<artifactId>swagger-annotations</artifactId>
			<version>${swagger-annotations.version}</version>
		</dependency>

		<dependency>
			<groupId>commons-configuration</groupId>
			<artifactId>commons-configuration</artifactId>
			<version>${commons-configuration.version}</version>
		</dependency>

		<dependency>
			<groupId>javax.validation</groupId>
			<artifactId>validation-api</artifactId>
			<version>${validation-api.version}</version>
		</dependency>

		<dependency>
			<groupId>javax.ws.rs</groupId>
			<artifactId>javax.ws.rs-api</artifactId>
			<version>${rs-api.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>${commons-lang3.version}</version>
		</dependency>

		<dependency>
			<groupId>commons-beanutils</groupId>
			<artifactId>commons-beanutils</artifactId>
			<version>${commons-beanutils.version}</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<version>30.1.1-jre</version>
		</dependency>
		<dependency>
			<groupId>org.springdoc</groupId>
			<artifactId>springdoc-openapi-ui</artifactId>
			<version>1.6.6</version>
		</dependency>
	</dependencies>
</project>
