<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->
<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">

	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.apache.flink</groupId>
		<artifactId>flink-examples</artifactId>
		<version>1.10-SNAPSHOT</version>
		<relativePath>..</relativePath>
	</parent>

	<artifactId>flink-examples-streaming_${scala.binary.version}</artifactId>
	<name>flink-examples-streaming</name>

	<packaging>jar</packaging>

	<dependencies>

		<!-- core dependencies -->

		<dependency>
			<groupId>org.apache.flink</groupId>
			<artifactId>flink-streaming-java_${scala.binary.version}</artifactId>
			<version>${project.version}</version>
		</dependency>

		<dependency>
			<groupId>org.apache.flink</groupId>
			<artifactId>flink-streaming-scala_${scala.binary.version}</artifactId>
			<version>${project.version}</version>
		</dependency>

		<dependency>
			<groupId>org.apache.flink</groupId>
			<artifactId>flink-connector-twitter_${scala.binary.version}</artifactId>
			<version>${project.version}</version>
		</dependency>

		<dependency>
			<groupId>org.apache.flink</groupId>
			<artifactId>flink-connector-kafka-0.10_${scala.binary.version}</artifactId>
			<version>${project.version}</version>
		</dependency>

		<dependency>
			<groupId>org.apache.flink</groupId>
			<artifactId>flink-shaded-jackson</artifactId>
		</dependency>

		<!-- test dependencies -->

		<dependency>
			<groupId>org.apache.flink</groupId>
			<artifactId>flink-test-utils_${scala.binary.version}</artifactId>
			<version>${project.version}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.apache.flink</groupId>
			<artifactId>flink-streaming-java_${scala.binary.version}</artifactId>
			<version>${project.version}</version>
			<scope>test</scope>
			<type>test-jar</type>
		</dependency>

        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-statebackend-rocksdb_${scala.binary.version}</artifactId>
            <version>${project.version}</version>
        </dependency>

    </dependencies>

	<build>
		<plugins>

			<!-- Scala Code Style, most of the configuration done via plugin management -->
			<plugin>
				<groupId>org.scalastyle</groupId>
				<artifactId>scalastyle-maven-plugin</artifactId>
				<configuration>
					<configLocation>${project.basedir}/../../tools/maven/scalastyle-config.xml</configLocation>
				</configuration>
			</plugin>
			
			<!-- get default data from flink-examples-batch package -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<version>2.9</version><!--$NO-MVN-MAN-VER$-->
				<executions>
					<execution>
						<id>unpack</id>
						<phase>prepare-package</phase>
						<goals>
							<goal>unpack</goal>
						</goals>
						<configuration>
							<artifactItems>
								<!-- For WordCount example data -->
								<artifactItem>
									<groupId>org.apache.flink</groupId>
									<artifactId>flink-examples-batch_${scala.binary.version}</artifactId>
									<version>${project.version}</version>
									<type>jar</type>
									<overWrite>false</overWrite>
									<outputDirectory>${project.build.directory}/classes</outputDirectory>
									<includes>org/apache/flink/streaming/examples/wordcount/util/WordCountData.class</includes>
								</artifactItem>
								<!-- For JSON utilities -->
								<artifactItem>
									<groupId>org.apache.flink</groupId>
									<artifactId>flink-connector-twitter_${scala.binary.version}</artifactId>
									<version>${project.version}</version>
									<type>jar</type>
									<overWrite>false</overWrite>
									<outputDirectory>${project.build.directory}/classes</outputDirectory>
									<includes>org/apache/flink/streaming/connectors/json/*</includes>
								</artifactItem>
							</artifactItems>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<!-- self-contained jars for each example -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>2.4</version><!--$NO-MVN-MAN-VER$-->
				<executions>
					<!-- Default Execution -->
					<execution>
						<id>default</id>
						<phase>package</phase>
						<goals>
							<goal>test-jar</goal>
						</goals>
					</execution>
					
					<!-- Iteration -->
					<execution>
						<id>Iteration</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>Iteration</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.iteration.IterateExample</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/iteration/*.class</include>
							</includes>
						</configuration>
					</execution>

					<!-- IncrementalLearning -->
					<execution>
						<id>IncrementalLearning</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>IncrementalLearning</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.ml.IncrementalLearningSkeleton</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/ml/*.class</include>			
							</includes>
						</configuration>
					</execution>

					<!-- WindowJoin -->
					<execution>
						<id>WindowJoin</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>WindowJoin</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.join.WindowJoin</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/join/*.class</include>
								<include>org/apache/flink/streaming/examples/utils/ThrottledIterator.class</include>
							</includes>
						</configuration>
					</execution>

					<!-- Async I/O -->
					<execution>
						<id>AsyncIO</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>AsyncIO</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.async.AsyncIOExample</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/async/*.class</include>
							</includes>
						</configuration>
					</execution>

					<!-- WordCountPOJO -->
					<execution>
						<id>WordCountPOJO</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>WordCountPOJO</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.wordcount.PojoExample</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/wordcount/PojoExample.class</include>
								<include>org/apache/flink/streaming/examples/wordcount/PojoExample$*.class</include>
								<include>org/apache/flink/streaming/examples/wordcount/util/WordCountData.class</include>
							</includes>
						</configuration>
					</execution>

					<!-- WordCount -->
					<execution>
						<id>WordCount</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>WordCount</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.wordcount.WordCount</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/wordcount/WordCount.class</include>
								<include>org/apache/flink/streaming/examples/wordcount/WordCount$*.class</include>
								<include>org/apache/flink/streaming/examples/wordcount/util/WordCountData.class</include>
							</includes>
						</configuration>
					</execution>

					<!-- SocketWindowWordCount -->
					<execution>
						<id>SocketWindowWordCount</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>SocketWindowWordCount</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.socket.SocketWindowWordCount</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/socket/SocketWindowWordCount.class</include>
								<include>org/apache/flink/streaming/examples/socket/SocketWindowWordCount$*.class</include>
							</includes>
						</configuration>
					</execution>

					<!-- TopSpeedWindowing -->
					<execution>
						<id>TopSpeedWindowing</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>TopSpeedWindowing</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.windowing.TopSpeedWindowing</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/windowing/TopSpeedWindowing.class</include>
								<include>org/apache/flink/streaming/examples/windowing/TopSpeedWindowing$*.class</include>
							</includes>
						</configuration>
					</execution>

					<!-- SessionWindowing -->
					<execution>
						<id>SessionWindowing</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>SessionWindowing</classifier>

							<archive>
								<manifestEntries>
									<program-class>org.apache.flink.streaming.examples.windowing.SessionWindowing</program-class>
								</manifestEntries>
							</archive>

							<includes>
								<include>org/apache/flink/streaming/examples/windowing/SessionWindowing.class</include>
								<include>org/apache/flink/streaming/examples/windowing/SessionWindowing$*.class</include>
							</includes>
						</configuration>
					</execution>

				</executions>
			</plugin>


			<!-- Scala Compiler -->
			<plugin>
				<groupId>net.alchim31.maven</groupId>
				<artifactId>scala-maven-plugin</artifactId>
				<executions>
					<!-- Run scala compiler in the process-resources phase, so that dependencies on
						scala classes can be resolved later in the (Java) compile phase -->
					<execution>
						<id>scala-compile-first</id>
						<phase>process-resources</phase>
						<goals>
							<goal>compile</goal>
						</goals>
					</execution>
 
					<!-- Run scala compiler in the process-test-resources phase, so that dependencies on
						 scala classes can be resolved later in the (Java) test-compile phase -->
					<execution>
						<id>scala-test-compile</id>
						<phase>process-test-resources</phase>
						<goals>
							<goal>testCompile</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<jvmArgs>
						<jvmArg>-Xms128m</jvmArg>
						<jvmArg>-Xmx512m</jvmArg>
					</jvmArgs>
				</configuration>
			</plugin>
			
			<!-- Eclipse Integration -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-eclipse-plugin</artifactId>
				<version>2.8</version>
				<configuration>
					<downloadSources>true</downloadSources>
					<projectnatures>
						<projectnature>org.scala-ide.sdt.core.scalanature</projectnature>
						<projectnature>org.eclipse.jdt.core.javanature</projectnature>
					</projectnatures>
					<buildcommands>
						<buildcommand>org.scala-ide.sdt.core.scalabuilder</buildcommand>
					</buildcommands>
					<classpathContainers>
						<classpathContainer>org.scala-ide.sdt.launching.SCALA_CONTAINER</classpathContainer>
						<classpathContainer>org.eclipse.jdt.launching.JRE_CONTAINER</classpathContainer>
					</classpathContainers>
					<excludes>
						<exclude>org.scala-lang:scala-library</exclude>
						<exclude>org.scala-lang:scala-compiler</exclude>
					</excludes>
					<sourceIncludes>
						<sourceInclude>**/*.scala</sourceInclude>
						<sourceInclude>**/*.java</sourceInclude>
					</sourceIncludes>
				</configuration>
			</plugin>

			<!-- Adding scala source directories to build path -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<executions>
					<!-- Add src/main/scala to eclipse build path -->
					<execution>
						<id>add-source</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/main/scala</source>
							</sources>
						</configuration>
					</execution>
					<!-- Add src/test/scala to eclipse build path -->
					<execution>
						<id>add-test-source</id>
						<phase>generate-test-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/test/scala</source>
							</sources>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<!--simplify the name of example JARs for build-target/examples -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-antrun-plugin</artifactId>
				<executions>
					<execution>
						<id>rename</id>
						<configuration>
							<target>
								<copy file="${project.basedir}/target/flink-examples-streaming_${scala.binary.version}-${project.version}-IncrementalLearning.jar" tofile="${project.basedir}/target/IncrementalLearning.jar" />
								<copy file="${project.basedir}/target/flink-examples-streaming_${scala.binary.version}-${project.version}-Iteration.jar" tofile="${project.basedir}/target/Iteration.jar" />
								<copy file="${project.basedir}/target/flink-examples-streaming_${scala.binary.version}-${project.version}-SessionWindowing.jar" tofile="${project.basedir}/target/SessionWindowing.jar" />
								<copy file="${project.basedir}/target/flink-examples-streaming_${scala.binary.version}-${project.version}-TopSpeedWindowing.jar" tofile="${project.basedir}/target/TopSpeedWindowing.jar" />
								<copy file="${project.basedir}/target/flink-examples-streaming_${scala.binary.version}-${project.version}-WindowJoin.jar" tofile="${project.basedir}/target/WindowJoin.jar" />
								<copy file="${project.basedir}/target/flink-examples-streaming_${scala.binary.version}-${project.version}-WordCount.jar" tofile="${project.basedir}/target/WordCount.jar" />
								<copy file="${project.basedir}/target/flink-examples-streaming_${scala.binary.version}-${project.version}-SocketWindowWordCount.jar" tofile="${project.basedir}/target/SocketWindowWordCount.jar" />
							</target>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
		
		<pluginManagement>
			<plugins>
				<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.apache.maven.plugins</groupId>
										<artifactId>maven-dependency-plugin</artifactId>
										<versionRange>[2.9,)</versionRange>
										<goals>
											<goal>unpack</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore/>
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>

	</build>

</project>
