diff options
Diffstat (limited to 'dev/audit-release/maven_app_core')
-rw-r--r-- | dev/audit-release/maven_app_core/input.txt | 8 | ||||
-rw-r--r-- | dev/audit-release/maven_app_core/pom.xml | 56 | ||||
-rw-r--r-- | dev/audit-release/maven_app_core/src/main/java/SimpleApp.java | 41 |
3 files changed, 105 insertions, 0 deletions
diff --git a/dev/audit-release/maven_app_core/input.txt b/dev/audit-release/maven_app_core/input.txt new file mode 100644 index 0000000000..837b6f85ae --- /dev/null +++ b/dev/audit-release/maven_app_core/input.txt @@ -0,0 +1,8 @@ +a +b +c +d +a +b +c +d diff --git a/dev/audit-release/maven_app_core/pom.xml b/dev/audit-release/maven_app_core/pom.xml new file mode 100644 index 0000000000..0b837c0175 --- /dev/null +++ b/dev/audit-release/maven_app_core/pom.xml @@ -0,0 +1,56 @@ +<?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> + <groupId>spark.audit</groupId> + <artifactId>spark-audit</artifactId> + <modelVersion>4.0.0</modelVersion> + <name>Simple Project</name> + <packaging>jar</packaging> + <version>1.0</version> + <repositories> + <repository> + <id>Spray.cc repository</id> + <url>http://repo.spray.cc</url> + </repository> + <repository> + <id>Akka repository</id> + <url>http://repo.akka.io/releases</url> + </repository> + <repository> + <id>Spark Staging Repo</id> + <url>${spark.release.repository}</url> + </repository> + </repositories> + <dependencies> + <dependency> <!-- Spark dependency --> + <groupId>org.apache.spark</groupId> + <artifactId>spark-core_${scala.binary.version}</artifactId> + <version>${spark.version}</version> + </dependency> + </dependencies> + <!-- Makes sure we get a fairly recent compiler plugin. --> + <build> + <plugins> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + <version>2.3.2</version> + </plugin> + </plugins> + </build> +</project> diff --git a/dev/audit-release/maven_app_core/src/main/java/SimpleApp.java b/dev/audit-release/maven_app_core/src/main/java/SimpleApp.java new file mode 100644 index 0000000000..6b65dda39b --- /dev/null +++ b/dev/audit-release/maven_app_core/src/main/java/SimpleApp.java @@ -0,0 +1,41 @@ +/* + * 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. + */ + +import org.apache.spark.api.java.*; +import org.apache.spark.api.java.function.Function; + +public class SimpleApp { + public static void main(String[] args) { + String logFile = "input.txt"; + JavaSparkContext sc = new JavaSparkContext("local", "Simple App"); + JavaRDD<String> logData = sc.textFile(logFile).cache(); + + long numAs = logData.filter(new Function<String, Boolean>() { + public Boolean call(String s) { return s.contains("a"); } + }).count(); + + long numBs = logData.filter(new Function<String, Boolean>() { + public Boolean call(String s) { return s.contains("b"); } + }).count(); + + if (numAs != 2 || numBs != 2) { + System.out.println("Failed to parse log files with Spark"); + System.exit(-1); + } + System.out.println("Test succeeded"); + } +} |