<?xml version="1.0" encoding="UTF-8"?>

<!-- 
	This is the Chipster runtime configuration file. A runtime specifies
	an environment, in which a tool (often a script file) is actually run.
	Examples of runtimes include different versions of R or the beanshell
	runtime for running BeanShell scripts. 

	In practice, a runtime configuration consists of a name and handler
	configuration. Runtime name is used as a reference in the tools.xml and
	the handler element specifies the class which takes care of actually 
	running the tool. The handler parameters are specific to handler class.
	
	The toolPath parameter of th R-x.y.z runtimes specifies the directory
	inside the chipster-x.y.z.jar or custom-scripts directory, where the 
	script file specified in the tools.xml is located. 
	
	Each analysis tool is bound to a specific runtime in the tools.xml.

	Each of the computing services connected to a same broker must know about
	all the tools and runtimes enabled in any of the computing services. For 
	this reason you shouldn't comment out a runtime, even if this computing 
	service is unable to support it. Instead, if you don't want to run certain
	tools on certain computing service, a tool can be disabled with the 
	disabled="true" attribute on the tools.xml. The same disabled="true" can
	also be used to disable a runtime, which causes all the tools relying on
	this runtime to be disabled.
	
	In addition, if the initialization of the runtime failes, for example the
	R binary is not found, the runtime becomes disabled.

-->


<runtimes>
	<runtime>
		<name>R-2.12</name>
		<handler>
			<class>fi.csc.microarray.analyser.r.RAnalysisHandler</class> 
			<parameter>
				<name>command</name>
				<value>/opt/chipster/tools/R-2.12.1/bin/R</value>
			</parameter>
			<parameter>
				<name>commandParameters</name>
				<value>--vanilla --quiet</value>
			</parameter>
			<parameter>
				<name>toolPath</name>
				<value>/R-2.12</value>
			</parameter>
			<parameter>
				<name>externalToolPath</name>
				<value>/opt/chipster/tools</value>
			</parameter>
			
		</handler>
	</runtime>

	<runtime>
		<name>R-2.14</name>
		<handler>
			<class>fi.csc.microarray.analyser.r.RAnalysisHandler</class> 
			<parameter>
				<name>command</name>
				<value>/opt/chipster/tools/R-2.14.1/bin/R</value>
			</parameter>
			<parameter>
				<name>commandParameters</name>
				<value>--vanilla --quiet</value>
			</parameter>
			<parameter>
				<name>toolPath</name>
				<value>/R-2.14</value>
			</parameter>
			<parameter>
				<name>externalToolPath</name>
				<value>/opt/chipster/tools</value>
			</parameter>
			
		</handler>
	</runtime>

	<runtime>
		<name>R-2.15</name>
		<handler>
			<class>fi.csc.microarray.analyser.r.RAnalysisHandler</class> 
			<parameter>
				<name>command</name>
				<value>/opt/chipster/tools/R-2.15.1/bin/R</value>
			</parameter>
			<parameter>
				<name>commandParameters</name>
				<value>--vanilla --quiet</value>
			</parameter>
			<parameter>
				<name>toolPath</name>
				<value>/R-2.15</value>
			</parameter>
			<parameter>
				<name>externalToolPath</name>
				<value>/opt/chipster/tools</value>
			</parameter>
		</handler>
	</runtime>

	<runtime>
		<name>beanshell</name>
		<handler>
			<class>fi.csc.microarray.analyser.bsh.BeanShellHandler</class> 
			<parameter>
				<name>toolPath</name>
				<value>/bsh</value>
			</parameter>
		</handler>
	</runtime>
	
	<runtime>
        <name>java</name>
        <handler>
            <class>fi.csc.microarray.analyser.java.JavaAnalysisHandler</class> 
			<parameter>
				<name>externalToolPath</name>
				<value>/opt/chipster/tools</value>
			</parameter>
        </handler>
    </runtime>
	
	<!-- By default we don't require EMBOSS (disabling handler makes tools disabled) 
	<runtime>
		<name>EMBOSS</name>
		<handler>
			<class>fi.csc.microarray.analyser.emboss.EmbossAnalysisHandler</class>
			<parameter>
				<name>externalToolPath</name>
				<value>/opt/chipster/tools</value>
			</parameter>
			<parameter>
				<name>embossPath</name>
				<value>/EMBOSS-6.2.0/emboss</value>
			</parameter>
			<parameter>
				<name>descriptionPath</name>
				<value>/EMBOSS-6.2.0/emboss/acd</value>
			</parameter>
		</handler>
	</runtime>
	-->
	 
	<runtime>
		<name>shell</name>
		<handler>
			<class>fi.csc.microarray.analyser.shell.ShellAnalysisHandler</class>
			<parameter>
				<name>toolPath</name>
				<value>/shell</value>
			</parameter>
		</handler>
	</runtime>
	
</runtimes>