From 7cad5b3fb512ce4ba3fcbac76abb39149c300b64 Mon Sep 17 00:00:00 2001
From: Peter van 't Hof <p.j.van_t_hof@lumc.nl>
Date: Fri, 27 Jun 2014 13:38:10 +0200
Subject: [PATCH] Added empty pipeline for bam metrics

---
 bam-metrics/.gitignore                        |   1 +
 bam-metrics/examples/test.json                |  10 ++
 bam-metrics/pom.xml                           | 135 ++++++++++++++++++
 .../pipelines/bammetrics/BamMetrics.scala     |  27 ++++
 4 files changed, 173 insertions(+)
 create mode 100644 bam-metrics/.gitignore
 create mode 100644 bam-metrics/examples/test.json
 create mode 100644 bam-metrics/pom.xml
 create mode 100644 bam-metrics/src/main/scala/nl/lumc/sasc/biopet/pipelines/bammetrics/BamMetrics.scala

diff --git a/bam-metrics/.gitignore b/bam-metrics/.gitignore
new file mode 100644
index 000000000..a6f89c2da
--- /dev/null
+++ b/bam-metrics/.gitignore
@@ -0,0 +1 @@
+/target/
\ No newline at end of file
diff --git a/bam-metrics/examples/test.json b/bam-metrics/examples/test.json
new file mode 100644
index 000000000..285265ef0
--- /dev/null
+++ b/bam-metrics/examples/test.json
@@ -0,0 +1,10 @@
+{
+    "fastqc": { "exe": "/home/pjvan_thof/Downloads/FastQC/fastqc" },
+    "gatk": {"flexiprep": { "sdfg": { "exe": "gatk" }}},
+    "pbzip2": { "exe": "/home/pjvan_thof/pipelines/test/test" },
+    "flexiprep": {
+        "fastqc": { "exe": "/home/pjvan_thof/pipelines/test/test" },
+        "cutadapt": {"exe":"/home/pjvan_thof/pipelines/test/test"},
+        "sickle": {"exe":"/home/pjvan_thof/pipelines/test/test"}
+    }
+}
diff --git a/bam-metrics/pom.xml b/bam-metrics/pom.xml
new file mode 100644
index 000000000..bad58c52d
--- /dev/null
+++ b/bam-metrics/pom.xml
@@ -0,0 +1,135 @@
+<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>nl.lumc.sasc</groupId>
+  <artifactId>Bam-Metrics</artifactId>
+  <version>0.1.3</version>
+  <packaging>jar</packaging>
+
+  <name>Bam-Metrics</name>
+  <url>http://maven.apache.org</url>
+  
+  <parent>
+      <groupId>nl.lumc.sasc</groupId>
+      <artifactId>Biopet</artifactId>
+      <version>0.1.3</version>
+      <relativePath>../</relativePath>
+  </parent>
+  
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <sting.unpack.phase>prepare-package</sting.unpack.phase>
+    <sting.shade.phase>package</sting.shade.phase>
+    <app.main.class>nl.lumc.sasc.biopet.pipelines.bammetrics.BamMetrics</app.main.class>
+  </properties>
+  
+    <dependencies>
+<!--        <dependency>
+          <groupId>junit</groupId>
+          <artifactId>junit</artifactId>
+          <version>3.8.1</version>
+          <scope>test</scope>
+        </dependency>-->
+        <dependency>
+            <groupId>org.scala-lang</groupId>
+            <artifactId>scala-compiler</artifactId>
+            <version>2.11.0</version>
+        </dependency>
+<!--        <dependency>
+            <groupId>org.scalatest</groupId>
+            <artifactId>scalatest_2.9.2</artifactId>
+            <version>2.0.M4</version>
+            <scope>test</scope>
+        </dependency>-->
+        <dependency>
+            <groupId>nl.lumc.sasc</groupId>
+            <artifactId>Biopet-Framework</artifactId>
+            <version>0.1.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.broadinstitute.sting</groupId>
+            <artifactId>queue-package</artifactId>
+            <version>3.1</version>
+        </dependency>
+    </dependencies>
+    <build>
+        <resources>
+            <resource>
+                 <directory>scripts</directory>
+                 <includes>
+                     <include>**/*</include>
+                 </includes>
+            </resource>
+        </resources>
+        <plugins>
+            <plugin>
+                <groupId>org.scala-tools</groupId>
+                <artifactId>maven-scala-plugin</artifactId>
+                <version>2.15.2</version>
+                <executions>
+                    <execution>
+                        <id>scala-compile</id>
+                        <goals>
+                            <goal>compile</goal>
+                            <goal>testCompile</goal>
+                        </goals>
+                        <configuration>
+                            <args>
+                                <arg>-dependencyfile</arg>
+                                <arg>${project.build.directory}/.scala_dependencies</arg>
+                            </args>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+<!--            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-surefire-plugin</artifactId>
+                <version>2.7.2</version>
+                <executions>
+                    <execution>
+                        <id>default-test</id>
+                         Disable the default-test by putting it in phase none 
+                        <phase>none</phase>
+                    </execution>
+                </executions>
+            </plugin>-->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-shade-plugin</artifactId>
+                <version>2.3</version>
+                <configuration>
+                  <finalName>${project.artifactId}-${project.version}</finalName>
+                  <transformers>
+                    <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
+                      <manifestEntries>
+                        <Main-Class>${app.main.class}</Main-Class>
+                        <X-Compile-Source-JDK>${maven.compile.source}</X-Compile-Source-JDK>
+                        <X-Compile-Target-JDK>${maven.compile.target}</X-Compile-Target-JDK>
+                      </manifestEntries>
+                    </transformer>
+                  </transformers>
+                  <artifactSet>
+                    <excludes>
+                      <exclude>org.broadinstitute.sting:queue-package</exclude>
+                      <exclude>junit:junit</exclude>
+                      <exclude>org.scala-lang:scala-compiler</exclude>
+                      <exclude>org.scala-lang:scala-library</exclude>
+                      <exclude>org.scala-lang:scala-reflect</exclude>
+                      <exclude>org.scala-lang.modules:*</exclude>
+                    </excludes>
+                  </artifactSet>
+                </configuration>
+            <executions>
+              <execution>
+                <phase>package</phase>
+                <goals>
+                  <goal>shade</goal>
+                </goals>
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+    </build>
+</project>
diff --git a/bam-metrics/src/main/scala/nl/lumc/sasc/biopet/pipelines/bammetrics/BamMetrics.scala b/bam-metrics/src/main/scala/nl/lumc/sasc/biopet/pipelines/bammetrics/BamMetrics.scala
new file mode 100644
index 000000000..f80e958b9
--- /dev/null
+++ b/bam-metrics/src/main/scala/nl/lumc/sasc/biopet/pipelines/bammetrics/BamMetrics.scala
@@ -0,0 +1,27 @@
+package nl.lumc.sasc.biopet.pipelines.bammetrics
+
+import nl.lumc.sasc.biopet.core._
+import nl.lumc.sasc.biopet.core.config._
+import nl.lumc.sasc.biopet.function._
+import org.broadinstitute.sting.queue.QScript
+import org.broadinstitute.sting.queue.extensions.picard._
+import org.broadinstitute.sting.queue.function._
+import org.broadinstitute.sting.commandline._
+
+class BamMetrics(val root:Configurable) extends QScript with BiopetQScript {
+  def this() = this(null)
+  
+  @Input(doc="Bam File", shortName="BAM",required=true)
+  var input_bam: File = _
+  
+  def init() {
+    for (file <- configfiles) globalConfig.loadConfigFile(file)
+  }
+  
+  def biopetScript() {
+  }
+}
+
+object BamMetrics extends PipelineCommand {
+  override val pipeline = "/nl/lumc/sasc/biopet/pipelines/bammetrics/BamMetrics.class"
+}
-- 
GitLab