<?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.5-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>
				<version>1.7</version>
				<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>
				<version>1.7</version>
				<executions>
					<execution>
						<id>rename</id>
						<phase>package</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<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>


			<!-- Use the shade plugin to build a fat jar for the kafka example -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-shade-plugin</artifactId>
				<executions>

					<!-- State Machine Example -->
					<execution>
						<id>state-machine-example</id>
						<phase>package</phase>
						<goals>
							<goal>shade</goal>
						</goals>
						<configuration>
							<shadeTestJar>false</shadeTestJar>
							<shadedArtifactAttached>false</shadedArtifactAttached>
							<createDependencyReducedPom>false</createDependencyReducedPom>
							<transformers>
								<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
									<mainClass>org.apache.flink.streaming.examples.statemachine.StateMachineExample</mainClass>
								</transformer>
							</transformers>
							<finalName>StateMachineExample</finalName>
							<filters>
								<filter>
									<artifact>*</artifact>
									<includes>
										<include>org/apache/flink/streaming/examples/statemachine/**</include>
										<include>org/apache/flink/streaming/util/serialization/**</include>
										<include>org/apache/flink/streaming/connectors/kafka/**</include>
										<include>org/apache/kafka/**</include>
										<include>kafka/</include>
									</includes>
								</filter>
							</filters>
						</configuration>
					</execution>

					<execution>
						<id>fat-jar-kafka-010-example</id>
						<phase>package</phase>
						<goals>
							<goal>shade</goal>
						</goals>
						<configuration>
							<shadeTestJar>false</shadeTestJar>
							<shadedArtifactAttached>false</shadedArtifactAttached>
							<createDependencyReducedPom>false</createDependencyReducedPom>
							<transformers>
								<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
									<mainClass>org.apache.flink.streaming.examples.kafka.Kafka010Example</mainClass>
								</transformer>
							</transformers>
							<finalName>Kafka010Example</finalName>
							<!-- <outputFile>Kafka.jar</outputFile> -->
							<filters>
								<filter>
									<artifact>*</artifact>
									<includes>
										<include>org/apache/flink/streaming/examples/kafka/**</include>
										<include>org/apache/flink/streaming/**</include>
										<include>org/apache/kafka/**</include>
										<include>org/apache/curator/**</include>
										<include>org/apache/zookeeper/**</include>
										<include>org/apache/jute/**</include>
										<include>org/I0Itec/**</include>
										<include>jline/**</include>
										<include>com/yammer/**</include>
										<include>kafka/**</include>
									</includes>
								</filter>
							</filters>
						</configuration>
					</execution>

					<execution>
						<id>fat-jar-twitter-example</id>
						<phase>package</phase>
						<goals>
							<goal>shade</goal>
						</goals>
						<configuration>
							<shadeTestJar>false</shadeTestJar>
							<shadedArtifactAttached>false</shadedArtifactAttached>
							<createDependencyReducedPom>false</createDependencyReducedPom>
							<transformers>
								<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
									<mainClass>org.apache.flink.streaming.examples.twitter.TwitterExample</mainClass>
								</transformer>
							</transformers>
							<finalName>Twitter</finalName>
							<filters>
								<filter>
									<artifact>*</artifact>
									<includes>
										<include>org/apache/flink/twitter/shaded/com/google/common/**</include>
										<include>org/apache/flink/streaming/examples/twitter/**</include>
										<include>org/apache/flink/streaming/connectors/twitter/**</include>
										<include>org/apache/http/**</include>
										<include>com/twitter/**</include>
										<include>build.properties</include>
									</includes>
								</filter>
							</filters>
						</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>
