Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Mirrors
biopet.biopet
Commits
7e1495dc
Commit
7e1495dc
authored
Oct 27, 2015
by
Peter van 't Hof
Browse files
Implemented sample specific settings in the summary
parent
59e750bf
Changes
2
Hide whitespace changes
Inline
Side-by-side
public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala
View file @
7e1495dc
...
...
@@ -35,6 +35,9 @@ trait MultiSampleQScript extends SummaryQScript {
/** Overrules config of qscript with default sample */
val
config
=
new
ConfigFunctions
(
defaultSample
=
sampleId
)
/** Sample specific settings */
def
summarySettings
:
Map
[
String
,
Any
]
=
Map
()
/** Library class with basic functions build in */
abstract
class
AbstractLibrary
(
val
libId
:
String
)
extends
Summarizable
{
/** Overrules config of qscript with default sample and default library */
...
...
@@ -45,6 +48,9 @@ trait MultiSampleQScript extends SummaryQScript {
qscript
.
addSummarizable
(
summarizable
,
name
,
Some
(
sampleId
),
Some
(
libId
))
}
/** Library specific settings */
def
summarySettings
:
Map
[
String
,
Any
]
=
Map
()
/** Adds the library jobs */
final
def
addAndTrackJobs
()
:
Unit
=
{
if
(
nameRegex
.
findFirstIn
(
libId
)
==
None
)
...
...
public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/summary/WriteSummary.scala
View file @
7e1495dc
...
...
@@ -18,7 +18,7 @@ package nl.lumc.sasc.biopet.core.summary
import
java.io.
{
File
,
PrintWriter
}
import
nl.lumc.sasc.biopet.utils.config.Configurable
import
nl.lumc.sasc.biopet.core.
{
Version
,
BiopetCommandLineFunction
,
BiopetJavaCommandLineFunction
,
SampleLibraryTag
}
import
nl.lumc.sasc.biopet.core.
_
import
nl.lumc.sasc.biopet.utils.ConfigUtils
import
nl.lumc.sasc.biopet.
{
LastCommitHash
,
Version
}
import
org.broadinstitute.gatk.queue.function.
{
InProcessFunction
,
QFunction
}
...
...
@@ -99,12 +99,26 @@ class WriteSummary(val root: Configurable) extends InProcessFunction with Config
).
toMap
}
val
map
=
Map
(
qscript
.
summaryName
->
((
if
(
settings
.
isEmpty
)
Map
[
String
,
Any
]()
else
Map
(
"settings"
->
settings
))
++
(
if
(
files
.
isEmpty
)
Map
[
String
,
Any
]()
else
Map
(
"files"
->
Map
(
"pipeline"
->
files
)))
++
(
if
(
executables
.
isEmpty
)
Map
[
String
,
Any
]()
else
Map
(
"executables"
->
executables
.
toMap
))))
val
map
=
Map
(
qscript
.
summaryName
->
(
Map
(
"settings"
->
settings
,
"files"
->
Map
(
"pipeline"
->
files
),
"executables"
->
executables
.
toMap
))
)
qscript
match
{
case
tag
:
SampleLibraryTag
=>
prefixSampleLibrary
(
map
,
tag
.
sampleId
,
tag
.
libId
)
case
q
:
MultiSampleQScript
=>
{
q
.
samples
.
map
{
case
(
sampleName
,
sample
)
=>
sampleName
->
Map
(
qscript
.
summaryName
->
Map
(
"settings"
->
sample
.
summarySettings
),
"libraries"
->
sample
.
libraries
.
map
{
case
(
libName
,
lib
)
=>
sampleName
->
Map
(
qscript
.
summaryName
->
Map
(
"settings"
->
lib
)
)
}
)
}
++
map
}
case
_
=>
map
}
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment