View Javadoc

1   package fr.in2p3.jsaga.adaptor.language;
2   
3   import fr.in2p3.jsaga.adaptor.language.abstracts.AbstractLanguageAdaptorProperties;
4   import fr.in2p3.jsaga.impl.attributes.Attribute;
5   import org.ogf.saga.job.JobDescription;
6   
7   /* ***************************************************
8   * *** Centre de Calcul de l'IN2P3 - Lyon (France) ***
9   * ***             http://cc.in2p3.fr/             ***
10  * ***************************************************
11  * File:   SAGALanguageAdaptor
12  * Author: Sylvain Reynaud (sreynaud@in2p3.fr)
13  * Date:   2 nov. 2007
14  * ***************************************************
15  * Description:                                      */
16  /**
17   *
18   */
19  public class SAGALanguageAdaptor extends AbstractLanguageAdaptorProperties implements LanguageAdaptor {
20      private static final String[] REQUIRED_PROPERTY_NAMES = new String[] {
21              JobDescription.EXECUTABLE};
22      public static final String[] OPTIONAL_PROPERTY_NAMES = new String[] {
23              JobDescription.SPMDVARIATION,
24              JobDescription.TOTALCPUCOUNT,
25              JobDescription.NUMBEROFPROCESSES,
26              JobDescription.PROCESSESPERHOST,
27              JobDescription.THREADSPERPROCESS,
28              JobDescription.WORKINGDIRECTORY,
29              JobDescription.INTERACTIVE,
30              JobDescription.INPUT,
31              JobDescription.OUTPUT,
32              JobDescription.ERROR,
33              JobDescription.CLEANUP,
34              JobDescription.JOBSTARTTIME,
35              JobDescription.WALLTIMELIMIT,
36              JobDescription.TOTALCPUTIME,
37              JobDescription.TOTALPHYSICALMEMORY,
38              JobDescription.CPUARCHITECTURE,     // deviation from SAGA specification (for consistency with JSDL)
39              JobDescription.OPERATINGSYSTEMTYPE, // deviation from SAGA specification (for consistency with JSDL)
40              JobDescription.JOBPROJECT,
41              JobDescription.QUEUE};
42      private static final String[] REQUIRED_VECTOR_PROPERTY_NAMES = new String[] {};
43      public static final String[] OPTIONAL_VECTOR_PROPERTY_NAMES = new String[] {
44              JobDescription.ARGUMENTS,
45              JobDescription.ENVIRONMENT,
46              JobDescription.FILETRANSFER,
47              JobDescription.CANDIDATEHOSTS,
48              JobDescription.JOBCONTACT};
49  
50      public String getName() {
51          return "SAGA";
52      }
53  
54      public void initParser() {
55          super._initParser(
56                  REQUIRED_PROPERTY_NAMES, OPTIONAL_PROPERTY_NAMES,
57                  REQUIRED_VECTOR_PROPERTY_NAMES, OPTIONAL_VECTOR_PROPERTY_NAMES,
58                  Attribute.SEPARATOR);
59      }
60  
61      public String getTranslator() {
62          return "xsl/language/saga.xsl";
63      }
64  }