ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/BOSS/BossPython/BossSession_wrap.cxx
(Generate patch)

Comparing COMP/BOSS/BossPython/BossSession_wrap.cxx (file contents):
Revision 1.14 by gcodispo, Mon Nov 6 08:52:57 2006 UTC vs.
Revision 1.40 by gcodispo, Thu Nov 22 16:46:09 2007 UTC

# Line 655 | Line 655 | SWIG_InstallConstants(PyObject *d, swig_
655   /* -------- TYPES TABLE (BEGIN) -------- */
656  
657   #define  SWIGTYPE_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t swig_types[0]
658 < #define  SWIGTYPE_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator swig_types[1]
659 < #define  SWIGTYPE_p_XMLDoc swig_types[2]
660 < #define  SWIGTYPE_p_std__vectorTBossTask_p_t swig_types[3]
661 < #define  SWIGTYPE_p_std__mapTstd__string_std__mapTstd__string_std__string_t_t swig_types[4]
662 < #define  SWIGTYPE_p_BossTask swig_types[5]
663 < #define  SWIGTYPE_p_BossTaskException swig_types[6]
664 < #define  SWIGTYPE_p_std__ostream swig_types[7]
665 < #define  SWIGTYPE_p_BossAttributeContainer swig_types[8]
666 < #define  SWIGTYPE_p_printOption swig_types[9]
667 < #define  SWIGTYPE_p_BossJob swig_types[10]
668 < #define  SWIGTYPE_p_BossDatabase swig_types[11]
669 < #define  SWIGTYPE_p_BossSession swig_types[12]
670 < #define  SWIGTYPE_p_std__vectorTstd__string_t swig_types[13]
671 < #define  SWIGTYPE_p_std__mapTstd__string_std__string_t swig_types[14]
672 < #define  SWIGTYPE_p_BossAdministratorSession swig_types[15]
673 < #define  SWIGTYPE_p_BossTask__job_iterator swig_types[16]
674 < #define  SWIGTYPE_p_std__vectorTBossJob_p_t__const_iterator swig_types[17]
675 < #define  SWIGTYPE_p_jobStates swig_types[18]
676 < static swig_type_info *swig_types[20];
658 > #define  SWIGTYPE_p_XMLDoc swig_types[1]
659 > #define  SWIGTYPE_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator swig_types[2]
660 > #define  SWIGTYPE_p_BossProgramExec swig_types[3]
661 > #define  SWIGTYPE_p_BossChain swig_types[4]
662 > #define  SWIGTYPE_p_std__mapTstd__string_std__mapTstd__string_std__string_t_t swig_types[5]
663 > #define  SWIGTYPE_p_BossTask swig_types[6]
664 > #define  SWIGTYPE_p_BossTaskException swig_types[7]
665 > #define  SWIGTYPE_p_std__ostream swig_types[8]
666 > #define  SWIGTYPE_p_BossProgram swig_types[9]
667 > #define  SWIGTYPE_p_printOption swig_types[10]
668 > #define  SWIGTYPE_p_BossAttributeContainer swig_types[11]
669 > #define  SWIGTYPE_p_BossJob swig_types[12]
670 > #define  SWIGTYPE_p_BossDatabase swig_types[13]
671 > #define  SWIGTYPE_p_BossSession swig_types[14]
672 > #define  SWIGTYPE_p_std__vectorTstd__string_t swig_types[15]
673 > #define  SWIGTYPE_p_std__mapTstd__string_std__string_t swig_types[16]
674 > #define  SWIGTYPE_p_BossAdministratorSession swig_types[17]
675 > #define  SWIGTYPE_p_BossTask__job_iterator swig_types[18]
676 > #define  SWIGTYPE_p_BossSession__task_iterator swig_types[19]
677 > #define  SWIGTYPE_p_std__vectorTBossJob_p_t__const_iterator swig_types[20]
678 > #define  SWIGTYPE_p_jobStates swig_types[21]
679 > static swig_type_info *swig_types[23];
680  
681   /* -------- TYPES TABLE (END) -------- */
682  
# Line 917 | Line 920 | void std_vectorlstd_string_g___delslice_
920                  self->erase(self->begin()+i,self->begin()+j);
921              }
922  
923 + static PyObject * BossError;
924 + static PyObject * SchedulerError;
925   #include "BossSession.h"
926   #include "BossAdministratorSession.h"
927   #include "BossTask.h"
928   #include "BossJob.h"
929 + #include "BossChain.h"
930   #include "BossTaskCore.h"
931   #include "BossAttributeContainer.h"
932   #include "BossDBObject.h"
933   #include "BossProgram.h"
934   #include "BossProgramExec.h"
935   #include "BossDatabase.h"
936 + #include "BossScheduler.h"
937 + #include "BossDeclaration.h"
938  
939   PyObject *BossSession_show(BossSession *self,std::vector<std::string > &my_vec){
940      PyObject *  my_list = PyList_New( my_vec.size());
# Line 953 | Line 961 | PyObject *BossSession_schedulers(BossSes
961      std::vector<std::string> my_vec = self->showSchedulers();
962      return BossSession_show( self, my_vec );
963    }
964 < PyObject *BossSession_schedListMatch(BossSession *self,std::string const &scheduler,std::string const &schclassad,std::string const &taskid,std::string const &jobid,bool keepfile){
964 > PyObject *BossSession_schedListMatch(BossSession *self,std::string const &scheduler,std::string const &schclassad,std::string const &taskid,std::string const &jobid,unsigned int timeout){
965      std::vector<std::string> my_vec = self->listMatch( scheduler,
966                                                         schclassad,
959                                                       keepfile,
967                                                         taskid,
968 <                                                       jobid);
968 >                                                       jobid,
969 >                                                       timeout);
970      return BossSession_show( self, my_vec );
971    }
972 < PyObject *BossSession_queryTasks(BossSession *self,int filter_opt,std::string const &taskRange,std::string const &jobRange,std::string const &subn,std::string type,std::string user,std::string after,std::string before,bool avoidCheck){
973 <       if ( !avoidCheck ) {
974 <         self->schedulerQuery ( filter_opt, taskRange, jobRange, subn,
975 <                                type, user, after, before);
976 <       }
977 <       PyObject * job_dict = PyList_New(0);
978 <       std::vector <std::string>
979 <         taskList = self->selectTasks( taskRange, before, after, user);
980 <       for ( std::vector <std::string>::const_iterator it= taskList.begin();
981 <            it!= taskList.end(); ++it ) {
982 <         PyList_Append( job_dict,  PyString_FromString(it->c_str() ) );
983 <      }
984 <       return  job_dict;
985 <     }
986 < PyObject *BossTask_appendToPyDict(BossTask const *self,PyObject *dict,BossAttributeContainer const &obj){
979 <      std::string tmp;
980 <      BossAttributeContainer::const_iterator it_end = obj.end ();
981 <      for (BossAttributeContainer::const_iterator it = obj.begin ();
982 <           it != it_end; ++it) {
983 <        tmp = (*it).first.name ();
984 <        char * key = new char[ tmp.size() ];
985 <        key = strdup(tmp.c_str());
986 <        tmp = (*it).second.value ();
987 <        PyObject * val = PyString_FromString( tmp.c_str() );
988 <        PyDict_SetItemString( dict, key, val );
989 <        delete [] key;
990 <      }
991 <      return dict;
972 > void BossSession_schedulerQuery(BossSession *self,int filter_opt,std::string const &taskRange,std::string const &jobRange,std::string const &subn,std::string type,std::string user,std::string after,std::string before,unsigned int timeout,bool avoidCheck){
973 >      self->query ( filter_opt, taskRange, jobRange, subn, type, user, after, before, timeout, avoidCheck );
974 >      return;
975 >    }
976 > void BossTask_appendToPyDict(BossTask const *self,PyObject *dict,BossAttributeContainer const &obj){
977 >
978 >    BossAttributeContainer::const_iterator it_end = obj.end ();
979 >    for (BossAttributeContainer::const_iterator it = obj.begin ();
980 >         it != it_end; ++it) {
981 >
982 >      PyObject * key = PyString_FromString( (it->first.name()).c_str() );
983 >      PyObject * val = PyString_FromString( (*it).second.value ().c_str() );
984 >      PyDict_SetItem( dict, key, val);
985 >      Py_DECREF(key);
986 >      Py_DECREF(val);
987      }
988 < PyObject *BossTask_jobDict(BossTask const *self,std::vector<BossJob * >::const_iterator &jit){
988 >    return;
989 >  }
990 > void BossTask_jobDict(BossTask const *self,BossJob const *jobH,PyObject *job_dict){
991  
992 <    PyObject * job_dict = PyDict_New();
992 >    //    PyObject * job_dict = PyDict_New();
993      std::string tmp;
994  
995 <    BossAttributeContainer obj = (*jit)->getTableEntries("JOB");
996 <    job_dict = BossTask_appendToPyDict ( self, job_dict, obj );
995 >    BossAttributeContainer obj = jobH->getTableEntries("JOB");
996 >    BossTask_appendToPyDict ( self, job_dict, obj );
997  
998 <    std::set<std::string> sch = (*jit)->getSchedulerElements();
998 >    std::set<std::string> sch = jobH->getSchedulerElements();
999      std::set<std::string>::const_iterator sch_end =  sch.end();
1000      for (std::set<std::string>::const_iterator it =sch.begin();
1001           it != sch_end; ++ it ) {
1002 <      tmp = (*it);
1003 <      char * key = new char[ tmp.size() ];
1004 <      key = strdup(tmp.c_str());
1008 <      tmp = (**jit)["JOB_SCHED_INFO."+(*it)];
1002 >
1003 >      tmp = (*jobH)["JOB_SCHED_INFO."+(*it)];
1004 >      PyObject * key = PyString_FromString( it->c_str() );
1005        PyObject * val = PyString_FromString( tmp.c_str() );
1006 <      PyDict_SetItemString( job_dict, key, val );
1007 <      delete [] key;
1006 >      PyDict_SetItem( job_dict, key, val);
1007 >      Py_DECREF(key);
1008 >      Py_DECREF(val);
1009      }
1010 <    return job_dict;
1010 >    return;
1011    }
1012   PyObject *BossTask_jobsDict(BossTask *self){
1013    
# Line 1018 | Line 1015 | PyObject *BossTask_jobsDict(BossTask *se
1015      if ( self->job_begin () == self->job_end ()) self->load(ALL);
1016      for (BossTask::job_iterator jit = self->job_begin ();
1017           jit != self->job_end (); ++jit) {
1018 <      std::string id = (*jit)->chainId();
1019 <      PyObject * tmp =  BossTask_jobDict( self, jit );
1020 <      PyObject * myid =  PyString_FromString(id.c_str() );
1021 <      PyDict_SetItem( job_dict, myid,tmp );
1018 >      PyObject * id = PyString_FromString( ((*jit)->chainId()).c_str() );
1019 >      PyObject * tmp_dict = PyDict_New();
1020 >      BossTask_jobDict( self, *jit, tmp_dict );
1021 >      PyDict_SetItem( job_dict, id, tmp_dict );
1022 >      Py_DECREF(id);
1023 >      Py_DECREF(tmp_dict);
1024 >    }
1025 >    return job_dict;
1026 >  }
1027 > PyObject *BossTask_job(BossTask *self,std::string const &jobid){
1028 >    if ( ! self->jobsInMemory() ) self->load( ALL, jobid );
1029 >    PyObject * job_dict = PyDict_New();
1030 >    BossTask_jobDict( self, &(*self)[ atoi(jobid.c_str()) ], job_dict );
1031 >    return job_dict;
1032 >  }
1033 > PyObject *BossTask_Chain(BossTask *self,std::string const &jobid){
1034 >  
1035 >    PyObject * chain_dict = PyDict_New();
1036 >    BossAttributeContainer obj =
1037 >      self->chain( jobid ).getTableEntries("CHAIN");
1038 >    BossTask_appendToPyDict ( self, chain_dict, obj );
1039 >    return chain_dict;
1040 >  }
1041 > PyObject *BossTask_jobStates(BossTask *self){
1042 >  
1043 >    PyObject * job_dict = PyDict_New();
1044 >    if ( self->job_begin () == self->job_end ()) self->load(ALL);
1045 >    for (BossTask::job_iterator jit = self->job_begin ();
1046 >         jit != self->job_end (); ++jit) {
1047 >      PyObject * id = PyString_FromString( ((*jit)->chainId()).c_str() );
1048 >      PyObject * status = PyString_FromString( ((**jit)["JOB.STATUS"]).c_str() );
1049 >      PyDict_SetItem( job_dict, id, status );
1050 >      Py_DECREF(id);
1051 >      Py_DECREF(status);
1052 >    }
1053 >    return job_dict;
1054 >  }
1055 > PyObject *BossTask_joblist(BossTask *self){
1056 >    if ( self->job_begin () == self->job_end ()) self->load(ALL);
1057 >    PyObject *  job_list = PyList_New( self->jobsInMemory() );
1058 >    unsigned int index = 0;
1059 >    for (BossTask::job_iterator jit = self->job_begin ();
1060 >         jit != self->job_end (); ++jit, ++index) {
1061 >      PyList_SetItem( job_list,
1062 >                      index,
1063 >                      PyString_FromString( ( (*jit)->chainId() ).c_str() )
1064 >                      );
1065 >    }
1066 >    return job_list;
1067 >  }
1068 > PyObject *BossTask_jobStatistic(BossTask *self){
1069 >  
1070 >    PyObject * job_dict = PyDict_New();
1071 >    if ( self->job_begin () == self->job_end ()) self->load(ALL);
1072 >    std::map< std::string, int > states;
1073 >    for (BossTask::job_iterator jit = self->job_begin ();
1074 >         jit != self->job_end (); ++jit) {
1075 >      ++states[(**jit)["JOB.STATUS"]];
1076 >    }
1077 >
1078 >    std::map< std::string, int >::const_iterator end = states.end ();
1079 >    for (std::map< std::string, int >::const_iterator it = states.begin ();
1080 >         it != end; ++it) {
1081 >      PyObject * status = PyString_FromString( (it->first).c_str() );
1082 >      PyObject * jobs = PyString_FromFormat( "%d", it->second );
1083 >      PyDict_SetItem( job_dict, status, jobs );
1084 >      Py_DECREF(jobs);
1085 >      Py_DECREF(status);
1086      }
1087      return job_dict;
1088    }
# Line 1029 | Line 1090 | PyObject *BossTask_progDict(BossTask con
1090  
1091      PyObject * job_dict = PyDict_New();
1092  
1032    std::string tmp;
1033
1093      // PROGRAM
1094      BossAttributeContainer obj =
1095        (programs_it->first).getTableEntries("PROGRAM");
# Line 1066 | Line 1125 | PyObject *BossTask_jobPrograms(BossTask
1125      for ( programs_it = programs.begin(); programs_it != programs_it_end;
1126            ++programs_it  ) {
1127        std::string id = (programs_it->first)["PROGRAM.ID"];
1128 <      PyObject * tmp =  BossTask_progDict( self, programs_it );
1128 >      PyObject * tmp_dict =  BossTask_progDict( self, programs_it );
1129        PyObject * myid =  PyString_FromString(id.c_str() );
1130 <      PyDict_SetItem( job_dict, myid,tmp );
1130 >      PyDict_SetItem( job_dict, myid, tmp_dict );
1131 >      Py_DECREF(myid);
1132 >      Py_DECREF(tmp_dict);
1133 >    }
1134 >    return job_dict;
1135 >  }
1136 > PyObject *BossTask_program(BossTask *self,std::string const &jobid,std::string const &programId){
1137 >  
1138 >    PyObject * job_dict = PyDict_New();
1139 >
1140 >    const BossJob * jH = &((*self)[atoi( jobid.c_str() )]);
1141 >    BossAttributeContainer obj =
1142 >      self->queryProgram( jH, programId ).getTableEntries("PROGRAM");
1143 >    BossTask_appendToPyDict ( self, job_dict, obj );
1144 >    return job_dict;
1145 >  }
1146 > PyObject *BossTask_programExec(BossTask *self,std::string const &jobid,std::string const &programId){
1147 >  
1148 >    PyObject * job_dict = PyDict_New();
1149 >
1150 >    const BossJob * jH = &((*self)[atoi( jobid.c_str() )]);
1151 >
1152 >    // PROGRAM_EXEC
1153 >    BossProgramExec programExec = self->queryProgramExec( jH, programId );
1154 >    BossAttributeContainer obj = programExec.getTableEntries("PROGRAM_EXEC");
1155 >    BossTask_appendToPyDict ( self, job_dict, obj );
1156 >
1157 >    // SPECIFICS
1158 >    std::vector < BossAttributeContainer >::const_iterator it;
1159 >    std::vector < BossAttributeContainer >::const_iterator it_end = programExec.specEnd ();
1160 >    for ( it = programExec.specBegin (); it != it_end; ++it) {
1161 >      BossTask_appendToPyDict ( self, job_dict, *it );
1162 >    }
1163 >    return job_dict;
1164 >  }
1165 > PyObject *BossTask_specific(BossTask *self,std::string const &jobid,std::string const &programId){
1166 >  
1167 >    PyObject * job_dict = PyDict_New();
1168 >
1169 >    const BossJob * jH = &((*self)[atoi( jobid.c_str() )]);
1170 >    BossProgramExec programExec = self->queryProgramExec( jH, programId );
1171 >    BossAttributeContainer obj = programExec.getKeys ();
1172 >    BossTask_appendToPyDict ( self, job_dict, obj );
1173 >    
1174 >    std::vector < BossAttributeContainer >::const_iterator it;
1175 >    std::vector < BossAttributeContainer >::const_iterator it_end = programExec.specEnd ();
1176 >    for ( it = programExec.specBegin (); it != it_end; ++it) {
1177 >      BossTask_appendToPyDict ( self, job_dict, *it );
1178      }
1179      return job_dict;
1180    }
# Line 1084 | Line 1190 | static PyObject *_wrap_new_objectMap__SW
1190          try {
1191              result = (std::map<std::string,std::string > *)new std::map<std::string,std::string >();
1192              
1193 +        }catch (const BossSchedFailure & e) {
1194 +            PyErr_SetString ( SchedulerError, e.what() );
1195 +            return NULL;
1196          }catch (const std::exception& e) {
1197 <            SWIG_exception(SWIG_RuntimeError, e.what());
1197 >            PyErr_SetString ( BossError, e.what() );
1198 >            return NULL;
1199          }
1200      }
1201      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_std__mapTstd__string_std__string_t, 1);
# Line 1143 | Line 1253 | static PyObject *_wrap_new_objectMap__SW
1253          try {
1254              result = (std::map<std::string,std::string > *)new std::map<std::string,std::string >((std::map<std::string,std::string > const &)*arg1);
1255              
1256 +        }catch (const BossSchedFailure & e) {
1257 +            PyErr_SetString ( SchedulerError, e.what() );
1258 +            return NULL;
1259          }catch (const std::exception& e) {
1260 <            SWIG_exception(SWIG_RuntimeError, e.what());
1260 >            PyErr_SetString ( BossError, e.what() );
1261 >            return NULL;
1262          }
1263      }
1264      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_std__mapTstd__string_std__string_t, 1);
# Line 1258 | Line 1372 | static PyObject *_wrap_objectMap___len__
1372          try {
1373              result = (unsigned int)((std::map<std::string,std::string > const *)arg1)->size();
1374              
1375 +        }catch (const BossSchedFailure & e) {
1376 +            PyErr_SetString ( SchedulerError, e.what() );
1377 +            return NULL;
1378          }catch (const std::exception& e) {
1379 <            SWIG_exception(SWIG_RuntimeError, e.what());
1379 >            PyErr_SetString ( BossError, e.what() );
1380 >            return NULL;
1381          }
1382      }
1383      resultobj = PyInt_FromLong((long)result);
# Line 1280 | Line 1398 | static PyObject *_wrap_objectMap_clear(P
1398          try {
1399              (arg1)->clear();
1400              
1401 +        }catch (const BossSchedFailure & e) {
1402 +            PyErr_SetString ( SchedulerError, e.what() );
1403 +            return NULL;
1404          }catch (const std::exception& e) {
1405 <            SWIG_exception(SWIG_RuntimeError, e.what());
1405 >            PyErr_SetString ( BossError, e.what() );
1406 >            return NULL;
1407          }
1408      }
1409      Py_INCREF(Py_None); resultobj = Py_None;
# Line 1303 | Line 1425 | static PyObject *_wrap_objectMap___nonze
1425          try {
1426              result = (bool)std_maplstd_stringcstd_string_g___nonzero_____(arg1);
1427              
1428 +        }catch (const BossSchedFailure & e) {
1429 +            PyErr_SetString ( SchedulerError, e.what() );
1430 +            return NULL;
1431          }catch (const std::exception& e) {
1432 <            SWIG_exception(SWIG_RuntimeError, e.what());
1432 >            PyErr_SetString ( BossError, e.what() );
1433 >            return NULL;
1434          }
1435      }
1436      resultobj = PyInt_FromLong((long)result);
# Line 1375 | Line 1501 | static PyObject *_wrap_objectMap___setit
1501          try {
1502              std_maplstd_stringcstd_string_g___setitem_____(arg1,arg2,arg3);
1503              
1504 +        }catch (const BossSchedFailure & e) {
1505 +            PyErr_SetString ( SchedulerError, e.what() );
1506 +            return NULL;
1507          }catch (const std::exception& e) {
1508 <            SWIG_exception(SWIG_RuntimeError, e.what());
1508 >            PyErr_SetString ( BossError, e.what() );
1509 >            return NULL;
1510          }
1511      }
1512      Py_INCREF(Py_None); resultobj = Py_None;
# Line 1437 | Line 1567 | static PyObject *_wrap_objectMap_has_key
1567          try {
1568              result = (bool)std_maplstd_stringcstd_string_g_has_key___(arg1,arg2);
1569              
1570 +        }catch (const BossSchedFailure & e) {
1571 +            PyErr_SetString ( SchedulerError, e.what() );
1572 +            return NULL;
1573          }catch (const std::exception& e) {
1574 <            SWIG_exception(SWIG_RuntimeError, e.what());
1574 >            PyErr_SetString ( BossError, e.what() );
1575 >            return NULL;
1576          }
1577      }
1578      resultobj = PyInt_FromLong((long)result);
# Line 1460 | Line 1594 | static PyObject *_wrap_objectMap_keys(Py
1594          try {
1595              result = (PyObject *)std_maplstd_stringcstd_string_g_keys___(arg1);
1596              
1597 +        }catch (const BossSchedFailure & e) {
1598 +            PyErr_SetString ( SchedulerError, e.what() );
1599 +            return NULL;
1600          }catch (const std::exception& e) {
1601 <            SWIG_exception(SWIG_RuntimeError, e.what());
1601 >            PyErr_SetString ( BossError, e.what() );
1602 >            return NULL;
1603          }
1604      }
1605      resultobj = result;
# Line 1483 | Line 1621 | static PyObject *_wrap_objectMap_values(
1621          try {
1622              result = (PyObject *)std_maplstd_stringcstd_string_g_values___(arg1);
1623              
1624 +        }catch (const BossSchedFailure & e) {
1625 +            PyErr_SetString ( SchedulerError, e.what() );
1626 +            return NULL;
1627          }catch (const std::exception& e) {
1628 <            SWIG_exception(SWIG_RuntimeError, e.what());
1628 >            PyErr_SetString ( BossError, e.what() );
1629 >            return NULL;
1630          }
1631      }
1632      resultobj = result;
# Line 1506 | Line 1648 | static PyObject *_wrap_objectMap_items(P
1648          try {
1649              result = (PyObject *)std_maplstd_stringcstd_string_g_items___(arg1);
1650              
1651 +        }catch (const BossSchedFailure & e) {
1652 +            PyErr_SetString ( SchedulerError, e.what() );
1653 +            return NULL;
1654          }catch (const std::exception& e) {
1655 <            SWIG_exception(SWIG_RuntimeError, e.what());
1655 >            PyErr_SetString ( BossError, e.what() );
1656 >            return NULL;
1657          }
1658      }
1659      resultobj = result;
# Line 1537 | Line 1683 | static PyObject *_wrap_objectMap___conta
1683          try {
1684              result = (bool)std_maplstd_stringcstd_string_g___contains_____(arg1,arg2);
1685              
1686 +        }catch (const BossSchedFailure & e) {
1687 +            PyErr_SetString ( SchedulerError, e.what() );
1688 +            return NULL;
1689          }catch (const std::exception& e) {
1690 <            SWIG_exception(SWIG_RuntimeError, e.what());
1690 >            PyErr_SetString ( BossError, e.what() );
1691 >            return NULL;
1692          }
1693      }
1694      resultobj = PyInt_FromLong((long)result);
# Line 1583 | Line 1733 | static PyObject *_wrap_delete_objectMap(
1733          try {
1734              delete arg1;
1735              
1736 +        }catch (const BossSchedFailure & e) {
1737 +            PyErr_SetString ( SchedulerError, e.what() );
1738 +            return NULL;
1739          }catch (const std::exception& e) {
1740 <            SWIG_exception(SWIG_RuntimeError, e.what());
1740 >            PyErr_SetString ( BossError, e.what() );
1741 >            return NULL;
1742          }
1743      }
1744      Py_INCREF(Py_None); resultobj = Py_None;
# Line 1616 | Line 1770 | static PyObject *_wrap_new_vector_string
1770          try {
1771              result = (std::vector<std::string > *)new std::vector<std::string >(arg1);
1772              
1773 +        }catch (const BossSchedFailure & e) {
1774 +            PyErr_SetString ( SchedulerError, e.what() );
1775 +            return NULL;
1776          }catch (const std::exception& e) {
1777 <            SWIG_exception(SWIG_RuntimeError, e.what());
1777 >            PyErr_SetString ( BossError, e.what() );
1778 >            return NULL;
1779          }
1780      }
1781      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_std__vectorTstd__string_t, 1);
# Line 1651 | Line 1809 | static PyObject *_wrap_new_vector_string
1809          try {
1810              result = (std::vector<std::string > *)new std::vector<std::string >(arg1,(std::string const &)*arg2);
1811              
1812 +        }catch (const BossSchedFailure & e) {
1813 +            PyErr_SetString ( SchedulerError, e.what() );
1814 +            return NULL;
1815          }catch (const std::exception& e) {
1816 <            SWIG_exception(SWIG_RuntimeError, e.what());
1816 >            PyErr_SetString ( BossError, e.what() );
1817 >            return NULL;
1818          }
1819      }
1820      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_std__vectorTstd__string_t, 1);
# Line 1703 | Line 1865 | static PyObject *_wrap_new_vector_string
1865          try {
1866              result = (std::vector<std::string > *)new std::vector<std::string >((std::vector<std::string > const &)*arg1);
1867              
1868 +        }catch (const BossSchedFailure & e) {
1869 +            PyErr_SetString ( SchedulerError, e.what() );
1870 +            return NULL;
1871          }catch (const std::exception& e) {
1872 <            SWIG_exception(SWIG_RuntimeError, e.what());
1872 >            PyErr_SetString ( BossError, e.what() );
1873 >            return NULL;
1874          }
1875      }
1876      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_std__vectorTstd__string_t, 1);
# Line 1830 | Line 1996 | static PyObject *_wrap_vector_string___l
1996          try {
1997              result = (unsigned int)((std::vector<std::string > const *)arg1)->size();
1998              
1999 +        }catch (const BossSchedFailure & e) {
2000 +            PyErr_SetString ( SchedulerError, e.what() );
2001 +            return NULL;
2002          }catch (const std::exception& e) {
2003 <            SWIG_exception(SWIG_RuntimeError, e.what());
2003 >            PyErr_SetString ( BossError, e.what() );
2004 >            return NULL;
2005          }
2006      }
2007      resultobj = PyInt_FromLong((long)result);
# Line 1882 | Line 2052 | static PyObject *_wrap_vector_string___n
2052          try {
2053              result = (bool)((std::vector<std::string > const *)arg1)->empty();
2054              
2055 +        }catch (const BossSchedFailure & e) {
2056 +            PyErr_SetString ( SchedulerError, e.what() );
2057 +            return NULL;
2058          }catch (const std::exception& e) {
2059 <            SWIG_exception(SWIG_RuntimeError, e.what());
2059 >            PyErr_SetString ( BossError, e.what() );
2060 >            return NULL;
2061          }
2062      }
2063      resultobj = PyInt_FromLong((long)result);
# Line 1904 | Line 2078 | static PyObject *_wrap_vector_string_cle
2078          try {
2079              (arg1)->clear();
2080              
2081 +        }catch (const BossSchedFailure & e) {
2082 +            PyErr_SetString ( SchedulerError, e.what() );
2083 +            return NULL;
2084          }catch (const std::exception& e) {
2085 <            SWIG_exception(SWIG_RuntimeError, e.what());
2085 >            PyErr_SetString ( BossError, e.what() );
2086 >            return NULL;
2087          }
2088      }
2089      Py_INCREF(Py_None); resultobj = Py_None;
# Line 1934 | Line 2112 | static PyObject *_wrap_vector_string_app
2112          try {
2113              (arg1)->push_back(arg2);
2114              
2115 +        }catch (const BossSchedFailure & e) {
2116 +            PyErr_SetString ( SchedulerError, e.what() );
2117 +            return NULL;
2118          }catch (const std::exception& e) {
2119 <            SWIG_exception(SWIG_RuntimeError, e.what());
2119 >            PyErr_SetString ( BossError, e.what() );
2120 >            return NULL;
2121          }
2122      }
2123      Py_INCREF(Py_None); resultobj = Py_None;
# Line 2010 | Line 2192 | static PyObject *_wrap_vector_string___g
2192          try {
2193              result = std_vectorlstd_string_g___getslice_____(arg1,arg2,arg3);
2194              
2195 +        }catch (const BossSchedFailure & e) {
2196 +            PyErr_SetString ( SchedulerError, e.what() );
2197 +            return NULL;
2198          }catch (const std::exception& e) {
2199 <            SWIG_exception(SWIG_RuntimeError, e.what());
2199 >            PyErr_SetString ( BossError, e.what() );
2200 >            return NULL;
2201          }
2202      }
2203      {
# Line 2102 | Line 2288 | static PyObject *_wrap_vector_string___s
2288          try {
2289              std_vectorlstd_string_g___setslice_____(arg1,arg2,arg3,(std::vector<std::string > const &)*arg4);
2290              
2291 +        }catch (const BossSchedFailure & e) {
2292 +            PyErr_SetString ( SchedulerError, e.what() );
2293 +            return NULL;
2294          }catch (const std::exception& e) {
2295 <            SWIG_exception(SWIG_RuntimeError, e.what());
2295 >            PyErr_SetString ( BossError, e.what() );
2296 >            return NULL;
2297          }
2298      }
2299      Py_INCREF(Py_None); resultobj = Py_None;
# Line 2149 | Line 2339 | static PyObject *_wrap_vector_string___d
2339          try {
2340              std_vectorlstd_string_g___delslice_____(arg1,arg2,arg3);
2341              
2342 +        }catch (const BossSchedFailure & e) {
2343 +            PyErr_SetString ( SchedulerError, e.what() );
2344 +            return NULL;
2345          }catch (const std::exception& e) {
2346 <            SWIG_exception(SWIG_RuntimeError, e.what());
2346 >            PyErr_SetString ( BossError, e.what() );
2347 >            return NULL;
2348          }
2349      }
2350      Py_INCREF(Py_None); resultobj = Py_None;
# Line 2171 | Line 2365 | static PyObject *_wrap_delete_vector_str
2365          try {
2366              delete arg1;
2367              
2368 +        }catch (const BossSchedFailure & e) {
2369 +            PyErr_SetString ( SchedulerError, e.what() );
2370 +            return NULL;
2371          }catch (const std::exception& e) {
2372 <            SWIG_exception(SWIG_RuntimeError, e.what());
2372 >            PyErr_SetString ( BossError, e.what() );
2373 >            return NULL;
2374          }
2375      }
2376      Py_INCREF(Py_None); resultobj = Py_None;
# Line 2189 | Line 2387 | static PyObject * vector_string_swigregi
2387      Py_INCREF(obj);
2388      return Py_BuildValue((char *)"");
2389   }
2390 < static PyObject *_wrap_BossSession_show(PyObject *self, PyObject *args) {
2390 > static PyObject *_wrap_new_BossSession(PyObject *self, PyObject *args) {
2391      PyObject *resultobj;
2392 <    BossSession *arg1 = (BossSession *) 0 ;
2393 <    std::vector<std::string > *arg2 = 0 ;
2394 <    PyObject *result;
2392 >    std::string arg1 = (std::string) "" ;
2393 >    std::string arg2 = (std::string) "2" ;
2394 >    std::string arg3 = (std::string) "" ;
2395 >    std::string arg4 = (std::string) "" ;
2396 >    BossSession *result;
2397      PyObject * obj0 = 0 ;
2398      PyObject * obj1 = 0 ;
2399 +    PyObject * obj2 = 0 ;
2400 +    PyObject * obj3 = 0 ;
2401      
2402 <    if(!PyArg_ParseTuple(args,(char *)"OO:BossSession_show",&obj0,&obj1)) goto fail;
2403 <    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2404 <    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_std__vectorTstd__string_t,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2405 <    if (arg2 == NULL) {
2406 <        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail;
2402 >    if(!PyArg_ParseTuple(args,(char *)"|OOOO:new_BossSession",&obj0,&obj1,&obj2,&obj3)) goto fail;
2403 >    if (obj0) {
2404 >        {
2405 >            if (PyString_Check(obj0))
2406 >            arg1 = std::string(PyString_AsString(obj0));
2407 >            else
2408 >            SWIG_exception(SWIG_TypeError, "string expected");
2409 >        }
2410 >    }
2411 >    if (obj1) {
2412 >        {
2413 >            if (PyString_Check(obj1))
2414 >            arg2 = std::string(PyString_AsString(obj1));
2415 >            else
2416 >            SWIG_exception(SWIG_TypeError, "string expected");
2417 >        }
2418 >    }
2419 >    if (obj2) {
2420 >        {
2421 >            if (PyString_Check(obj2))
2422 >            arg3 = std::string(PyString_AsString(obj2));
2423 >            else
2424 >            SWIG_exception(SWIG_TypeError, "string expected");
2425 >        }
2426 >    }
2427 >    if (obj3) {
2428 >        {
2429 >            if (PyString_Check(obj3))
2430 >            arg4 = std::string(PyString_AsString(obj3));
2431 >            else
2432 >            SWIG_exception(SWIG_TypeError, "string expected");
2433 >        }
2434      }
2435      {
2436          try {
2437 <            result = (PyObject *)BossSession_show(arg1,*arg2);
2437 >            result = (BossSession *)new BossSession(arg1,arg2,arg3,arg4);
2438              
2439 +        }catch (const BossSchedFailure & e) {
2440 +            PyErr_SetString ( SchedulerError, e.what() );
2441 +            return NULL;
2442          }catch (const std::exception& e) {
2443 <            SWIG_exception(SWIG_RuntimeError, e.what());
2443 >            PyErr_SetString ( BossError, e.what() );
2444 >            return NULL;
2445          }
2446      }
2447 <    resultobj = result;
2447 >    resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossSession, 1);
2448      return resultobj;
2449      fail:
2450      return NULL;
2451   }
2452  
2453  
2454 < static PyObject *_wrap_BossSession_CHTools(PyObject *self, PyObject *args) {
2454 > static PyObject *_wrap_delete_BossSession(PyObject *self, PyObject *args) {
2455      PyObject *resultobj;
2456      BossSession *arg1 = (BossSession *) 0 ;
2224    PyObject *result;
2457      PyObject * obj0 = 0 ;
2458      
2459 <    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_CHTools",&obj0)) goto fail;
2459 >    if(!PyArg_ParseTuple(args,(char *)"O:delete_BossSession",&obj0)) goto fail;
2460      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2461      {
2462          try {
2463 <            result = (PyObject *)BossSession_CHTools(arg1);
2463 >            delete arg1;
2464              
2465 +        }catch (const BossSchedFailure & e) {
2466 +            PyErr_SetString ( SchedulerError, e.what() );
2467 +            return NULL;
2468          }catch (const std::exception& e) {
2469 <            SWIG_exception(SWIG_RuntimeError, e.what());
2469 >            PyErr_SetString ( BossError, e.what() );
2470 >            return NULL;
2471          }
2472      }
2473 <    resultobj = result;
2473 >    Py_INCREF(Py_None); resultobj = Py_None;
2474      return resultobj;
2475      fail:
2476      return NULL;
2477   }
2478  
2479  
2480 < static PyObject *_wrap_BossSession_ProgramTypes(PyObject *self, PyObject *args) {
2480 > static PyObject *_wrap_BossSession_resetDB(PyObject *self, PyObject *args) {
2481      PyObject *resultobj;
2482      BossSession *arg1 = (BossSession *) 0 ;
2247    PyObject *result;
2483      PyObject * obj0 = 0 ;
2484      
2485 <    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_ProgramTypes",&obj0)) goto fail;
2485 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_resetDB",&obj0)) goto fail;
2486      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2487      {
2488          try {
2489 <            result = (PyObject *)BossSession_ProgramTypes(arg1);
2489 >            (arg1)->resetDB();
2490              
2491 +        }catch (const BossSchedFailure & e) {
2492 +            PyErr_SetString ( SchedulerError, e.what() );
2493 +            return NULL;
2494          }catch (const std::exception& e) {
2495 <            SWIG_exception(SWIG_RuntimeError, e.what());
2495 >            PyErr_SetString ( BossError, e.what() );
2496 >            return NULL;
2497          }
2498      }
2499 <    resultobj = result;
2499 >    Py_INCREF(Py_None); resultobj = Py_None;
2500      return resultobj;
2501      fail:
2502      return NULL;
2503   }
2504  
2505  
2506 < static PyObject *_wrap_BossSession_RTMons(PyObject *self, PyObject *args) {
2506 > static PyObject *_wrap_BossSession_clear(PyObject *self, PyObject *args) {
2507      PyObject *resultobj;
2508      BossSession *arg1 = (BossSession *) 0 ;
2270    PyObject *result;
2509      PyObject * obj0 = 0 ;
2510      
2511 <    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_RTMons",&obj0)) goto fail;
2511 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_clear",&obj0)) goto fail;
2512      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2513      {
2514          try {
2515 <            result = (PyObject *)BossSession_RTMons(arg1);
2515 >            (arg1)->clear();
2516              
2517 +        }catch (const BossSchedFailure & e) {
2518 +            PyErr_SetString ( SchedulerError, e.what() );
2519 +            return NULL;
2520          }catch (const std::exception& e) {
2521 <            SWIG_exception(SWIG_RuntimeError, e.what());
2521 >            PyErr_SetString ( BossError, e.what() );
2522 >            return NULL;
2523          }
2524      }
2525 <    resultobj = result;
2525 >    Py_INCREF(Py_None); resultobj = Py_None;
2526      return resultobj;
2527      fail:
2528      return NULL;
2529   }
2530  
2531  
2532 < static PyObject *_wrap_BossSession_schedulers(PyObject *self, PyObject *args) {
2532 > static PyObject *_wrap_BossSession_task_begin(PyObject *self, PyObject *args) {
2533      PyObject *resultobj;
2534      BossSession *arg1 = (BossSession *) 0 ;
2535 <    PyObject *result;
2535 >    BossSession::task_iterator result;
2536      PyObject * obj0 = 0 ;
2537      
2538 <    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_schedulers",&obj0)) goto fail;
2538 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_task_begin",&obj0)) goto fail;
2539      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2540      {
2541          try {
2542 <            result = (PyObject *)BossSession_schedulers(arg1);
2542 >            result = ((BossSession const *)arg1)->task_begin();
2543              
2544 +        }catch (const BossSchedFailure & e) {
2545 +            PyErr_SetString ( SchedulerError, e.what() );
2546 +            return NULL;
2547          }catch (const std::exception& e) {
2548 <            SWIG_exception(SWIG_RuntimeError, e.what());
2548 >            PyErr_SetString ( BossError, e.what() );
2549 >            return NULL;
2550          }
2551      }
2552 <    resultobj = result;
2552 >    {
2553 >        BossSession::task_iterator * resultptr;
2554 >        resultptr = new BossSession::task_iterator((BossSession::task_iterator &) result);
2555 >        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossSession__task_iterator, 1);
2556 >    }
2557      return resultobj;
2558      fail:
2559      return NULL;
2560   }
2561  
2562  
2563 < static PyObject *_wrap_BossSession_schedListMatch(PyObject *self, PyObject *args) {
2563 > static PyObject *_wrap_BossSession_task_end(PyObject *self, PyObject *args) {
2564      PyObject *resultobj;
2565      BossSession *arg1 = (BossSession *) 0 ;
2566 <    std::string *arg2 = 0 ;
2317 <    std::string *arg3 = 0 ;
2318 <    std::string const &arg4_defvalue = "" ;
2319 <    std::string *arg4 = (std::string *) &arg4_defvalue ;
2320 <    std::string const &arg5_defvalue = "" ;
2321 <    std::string *arg5 = (std::string *) &arg5_defvalue ;
2322 <    bool arg6 = (bool) false ;
2323 <    PyObject *result;
2324 <    std::string temp2 ;
2325 <    std::string temp3 ;
2326 <    std::string temp4 ;
2327 <    std::string temp5 ;
2566 >    BossSession::task_iterator result;
2567      PyObject * obj0 = 0 ;
2329    PyObject * obj1 = 0 ;
2330    PyObject * obj2 = 0 ;
2331    PyObject * obj3 = 0 ;
2332    PyObject * obj4 = 0 ;
2333    PyObject * obj5 = 0 ;
2568      
2569 <    if(!PyArg_ParseTuple(args,(char *)"OOO|OOO:BossSession_schedListMatch",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) goto fail;
2569 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_task_end",&obj0)) goto fail;
2570      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2571      {
2572 <        if (PyString_Check(obj1)) {
2573 <            temp2 = std::string(PyString_AsString(obj1));
2574 <            arg2 = &temp2;
2575 <        }else {
2576 <            SWIG_exception(SWIG_TypeError, "string expected");
2572 >        try {
2573 >            result = ((BossSession const *)arg1)->task_end();
2574 >            
2575 >        }catch (const BossSchedFailure & e) {
2576 >            PyErr_SetString ( SchedulerError, e.what() );
2577 >            return NULL;
2578 >        }catch (const std::exception& e) {
2579 >            PyErr_SetString ( BossError, e.what() );
2580 >            return NULL;
2581          }
2582      }
2583      {
2584 <        if (PyString_Check(obj2)) {
2585 <            temp3 = std::string(PyString_AsString(obj2));
2586 <            arg3 = &temp3;
2349 <        }else {
2350 <            SWIG_exception(SWIG_TypeError, "string expected");
2351 <        }
2352 <    }
2353 <    if (obj3) {
2354 <        {
2355 <            if (PyString_Check(obj3)) {
2356 <                temp4 = std::string(PyString_AsString(obj3));
2357 <                arg4 = &temp4;
2358 <            }else {
2359 <                SWIG_exception(SWIG_TypeError, "string expected");
2360 <            }
2361 <        }
2362 <    }
2363 <    if (obj4) {
2364 <        {
2365 <            if (PyString_Check(obj4)) {
2366 <                temp5 = std::string(PyString_AsString(obj4));
2367 <                arg5 = &temp5;
2368 <            }else {
2369 <                SWIG_exception(SWIG_TypeError, "string expected");
2370 <            }
2371 <        }
2372 <    }
2373 <    if (obj5) {
2374 <        arg6 = PyInt_AsLong(obj5) ? true : false;
2375 <        if (PyErr_Occurred()) SWIG_fail;
2584 >        BossSession::task_iterator * resultptr;
2585 >        resultptr = new BossSession::task_iterator((BossSession::task_iterator &) result);
2586 >        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossSession__task_iterator, 1);
2587      }
2588 +    return resultobj;
2589 +    fail:
2590 +    return NULL;
2591 + }
2592 +
2593 +
2594 + static PyObject *_wrap_BossSession_tasksInMemory(PyObject *self, PyObject *args) {
2595 +    PyObject *resultobj;
2596 +    BossSession *arg1 = (BossSession *) 0 ;
2597 +    unsigned int result;
2598 +    PyObject * obj0 = 0 ;
2599 +    
2600 +    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_tasksInMemory",&obj0)) goto fail;
2601 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2602      {
2603          try {
2604 <            result = (PyObject *)BossSession_schedListMatch(arg1,(std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,arg6);
2604 >            result = (unsigned int)((BossSession const *)arg1)->tasksInMemory();
2605              
2606 +        }catch (const BossSchedFailure & e) {
2607 +            PyErr_SetString ( SchedulerError, e.what() );
2608 +            return NULL;
2609          }catch (const std::exception& e) {
2610 <            SWIG_exception(SWIG_RuntimeError, e.what());
2610 >            PyErr_SetString ( BossError, e.what() );
2611 >            return NULL;
2612          }
2613      }
2614 <    resultobj = result;
2614 >    resultobj = PyInt_FromLong((long)result);
2615      return resultobj;
2616      fail:
2617      return NULL;
2618   }
2619  
2620  
2621 < static PyObject *_wrap_BossSession_queryTasks(PyObject *self, PyObject *args) {
2621 > static PyObject *_wrap_BossSession_locate(PyObject *self, PyObject *args) {
2622      PyObject *resultobj;
2623      BossSession *arg1 = (BossSession *) 0 ;
2624 <    int arg2 = (int) SCHEDULED ;
2625 <    std::string const &arg3_defvalue = "all" ;
2397 <    std::string *arg3 = (std::string *) &arg3_defvalue ;
2398 <    std::string const &arg4_defvalue = "all" ;
2399 <    std::string *arg4 = (std::string *) &arg4_defvalue ;
2400 <    std::string const &arg5_defvalue = "" ;
2401 <    std::string *arg5 = (std::string *) &arg5_defvalue ;
2402 <    std::string arg6 = (std::string) "" ;
2403 <    std::string arg7 = (std::string) "" ;
2404 <    std::string arg8 = (std::string) "" ;
2405 <    std::string arg9 = (std::string) "" ;
2406 <    bool arg10 = (bool) false ;
2407 <    PyObject *result;
2408 <    std::string temp3 ;
2409 <    std::string temp4 ;
2410 <    std::string temp5 ;
2624 >    unsigned int arg2 ;
2625 >    BossTask *result;
2626      PyObject * obj0 = 0 ;
2627 <    PyObject * obj2 = 0 ;
2413 <    PyObject * obj3 = 0 ;
2414 <    PyObject * obj4 = 0 ;
2415 <    PyObject * obj5 = 0 ;
2416 <    PyObject * obj6 = 0 ;
2417 <    PyObject * obj7 = 0 ;
2418 <    PyObject * obj8 = 0 ;
2419 <    PyObject * obj9 = 0 ;
2627 >    PyObject * obj1 = 0 ;
2628      
2629 <    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOOOO:BossSession_queryTasks",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9)) goto fail;
2629 >    if(!PyArg_ParseTuple(args,(char *)"OO:BossSession_locate",&obj0,&obj1)) goto fail;
2630      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2631 <    if (obj2) {
2632 <        {
2425 <            if (PyString_Check(obj2)) {
2426 <                temp3 = std::string(PyString_AsString(obj2));
2427 <                arg3 = &temp3;
2428 <            }else {
2429 <                SWIG_exception(SWIG_TypeError, "string expected");
2430 <            }
2431 <        }
2432 <    }
2433 <    if (obj3) {
2434 <        {
2435 <            if (PyString_Check(obj3)) {
2436 <                temp4 = std::string(PyString_AsString(obj3));
2437 <                arg4 = &temp4;
2438 <            }else {
2439 <                SWIG_exception(SWIG_TypeError, "string expected");
2440 <            }
2441 <        }
2442 <    }
2443 <    if (obj4) {
2444 <        {
2445 <            if (PyString_Check(obj4)) {
2446 <                temp5 = std::string(PyString_AsString(obj4));
2447 <                arg5 = &temp5;
2448 <            }else {
2449 <                SWIG_exception(SWIG_TypeError, "string expected");
2450 <            }
2451 <        }
2452 <    }
2453 <    if (obj5) {
2454 <        {
2455 <            if (PyString_Check(obj5))
2456 <            arg6 = std::string(PyString_AsString(obj5));
2457 <            else
2458 <            SWIG_exception(SWIG_TypeError, "string expected");
2459 <        }
2460 <    }
2461 <    if (obj6) {
2462 <        {
2463 <            if (PyString_Check(obj6))
2464 <            arg7 = std::string(PyString_AsString(obj6));
2465 <            else
2466 <            SWIG_exception(SWIG_TypeError, "string expected");
2467 <        }
2468 <    }
2469 <    if (obj7) {
2470 <        {
2471 <            if (PyString_Check(obj7))
2472 <            arg8 = std::string(PyString_AsString(obj7));
2473 <            else
2474 <            SWIG_exception(SWIG_TypeError, "string expected");
2475 <        }
2476 <    }
2477 <    if (obj8) {
2478 <        {
2479 <            if (PyString_Check(obj8))
2480 <            arg9 = std::string(PyString_AsString(obj8));
2481 <            else
2482 <            SWIG_exception(SWIG_TypeError, "string expected");
2483 <        }
2484 <    }
2485 <    if (obj9) {
2486 <        arg10 = PyInt_AsLong(obj9) ? true : false;
2487 <        if (PyErr_Occurred()) SWIG_fail;
2488 <    }
2631 >    arg2 = (unsigned int) PyInt_AsLong(obj1);
2632 >    if (PyErr_Occurred()) SWIG_fail;
2633      {
2634          try {
2635 <            result = (PyObject *)BossSession_queryTasks(arg1,arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,arg6,arg7,arg8,arg9,arg10);
2635 >            result = (BossTask *)((BossSession const *)arg1)->locate(arg2);
2636              
2637 +        }catch (const BossSchedFailure & e) {
2638 +            PyErr_SetString ( SchedulerError, e.what() );
2639 +            return NULL;
2640          }catch (const std::exception& e) {
2641 <            SWIG_exception(SWIG_RuntimeError, e.what());
2641 >            PyErr_SetString ( BossError, e.what() );
2642 >            return NULL;
2643          }
2644      }
2645 <    resultobj = result;
2645 >    resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossTask, 0);
2646      return resultobj;
2647      fail:
2648      return NULL;
2649   }
2650  
2651  
2652 < static PyObject *_wrap_new_BossSession(PyObject *self, PyObject *args) {
2652 > static PyObject *_wrap_BossSession_makeBossTask(PyObject *self, PyObject *args) {
2653      PyObject *resultobj;
2654 <    std::string arg1 = (std::string) "" ;
2655 <    BossSession *result;
2654 >    BossSession *arg1 = (BossSession *) 0 ;
2655 >    std::string const &arg2_defvalue = "" ;
2656 >    std::string *arg2 = (std::string *) &arg2_defvalue ;
2657 >    BossTask *result;
2658 >    std::string temp2 ;
2659      PyObject * obj0 = 0 ;
2660 +    PyObject * obj1 = 0 ;
2661      
2662 <    if(!PyArg_ParseTuple(args,(char *)"|O:new_BossSession",&obj0)) goto fail;
2663 <    if (obj0) {
2662 >    if(!PyArg_ParseTuple(args,(char *)"O|O:BossSession_makeBossTask",&obj0,&obj1)) goto fail;
2663 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2664 >    if (obj1) {
2665          {
2666 <            if (PyString_Check(obj0))
2667 <            arg1 = std::string(PyString_AsString(obj0));
2668 <            else
2669 <            SWIG_exception(SWIG_TypeError, "string expected");
2666 >            if (PyString_Check(obj1)) {
2667 >                temp2 = std::string(PyString_AsString(obj1));
2668 >                arg2 = &temp2;
2669 >            }else {
2670 >                SWIG_exception(SWIG_TypeError, "string expected");
2671 >            }
2672          }
2673      }
2674      {
2675          try {
2676 <            result = (BossSession *)new BossSession(arg1);
2676 >            result = (BossTask *)(arg1)->makeBossTask((std::string const &)*arg2);
2677              
2678 +        }catch (const BossSchedFailure & e) {
2679 +            PyErr_SetString ( SchedulerError, e.what() );
2680 +            return NULL;
2681          }catch (const std::exception& e) {
2682 <            SWIG_exception(SWIG_RuntimeError, e.what());
2682 >            PyErr_SetString ( BossError, e.what() );
2683 >            return NULL;
2684          }
2685      }
2686 <    resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossSession, 1);
2686 >    resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossTask, 0);
2687      return resultobj;
2688      fail:
2689      return NULL;
2690   }
2691  
2692  
2693 < static PyObject *_wrap_delete_BossSession(PyObject *self, PyObject *args) {
2693 > static PyObject *_wrap_BossSession_destroyBossTask(PyObject *self, PyObject *args) {
2694      PyObject *resultobj;
2695      BossSession *arg1 = (BossSession *) 0 ;
2696 +    BossTask *arg2 = (BossTask *) 0 ;
2697      PyObject * obj0 = 0 ;
2698 +    PyObject * obj1 = 0 ;
2699      
2700 <    if(!PyArg_ParseTuple(args,(char *)"O:delete_BossSession",&obj0)) goto fail;
2700 >    if(!PyArg_ParseTuple(args,(char *)"OO:BossSession_destroyBossTask",&obj0,&obj1)) goto fail;
2701      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2702 +    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2703      {
2704          try {
2705 <            delete arg1;
2705 >            (arg1)->destroyBossTask(arg2);
2706              
2707 +        }catch (const BossSchedFailure & e) {
2708 +            PyErr_SetString ( SchedulerError, e.what() );
2709 +            return NULL;
2710          }catch (const std::exception& e) {
2711 <            SWIG_exception(SWIG_RuntimeError, e.what());
2711 >            PyErr_SetString ( BossError, e.what() );
2712 >            return NULL;
2713          }
2714      }
2715      Py_INCREF(Py_None); resultobj = Py_None;
# Line 2553 | Line 2719 | static PyObject *_wrap_delete_BossSessio
2719   }
2720  
2721  
2722 < static PyObject *_wrap_BossSession_resetDB(PyObject *self, PyObject *args) {
2722 > static PyObject *_wrap_BossSession_showCHTools(PyObject *self, PyObject *args) {
2723      PyObject *resultobj;
2724      BossSession *arg1 = (BossSession *) 0 ;
2725 +    std::vector<std::string > result;
2726      PyObject * obj0 = 0 ;
2727      
2728 <    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_resetDB",&obj0)) goto fail;
2728 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_showCHTools",&obj0)) goto fail;
2729      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2730      {
2731          try {
2732 <            (arg1)->resetDB();
2732 >            result = (arg1)->showCHTools();
2733              
2734 +        }catch (const BossSchedFailure & e) {
2735 +            PyErr_SetString ( SchedulerError, e.what() );
2736 +            return NULL;
2737          }catch (const std::exception& e) {
2738 <            SWIG_exception(SWIG_RuntimeError, e.what());
2738 >            PyErr_SetString ( BossError, e.what() );
2739 >            return NULL;
2740          }
2741      }
2742 <    Py_INCREF(Py_None); resultobj = Py_None;
2742 >    {
2743 >        resultobj = PyTuple_New((&result)->size());
2744 >        for (unsigned int i=0; i<(&result)->size(); i++)
2745 >        PyTuple_SetItem(resultobj,i,
2746 >        SwigString_FromString(((std::vector<std::string > &)result)[i]));
2747 >    }
2748      return resultobj;
2749      fail:
2750      return NULL;
2751   }
2752  
2753  
2754 < static PyObject *_wrap_BossSession_clear(PyObject *self, PyObject *args) {
2754 > static PyObject *_wrap_BossSession_showProgramTypes(PyObject *self, PyObject *args) {
2755      PyObject *resultobj;
2756      BossSession *arg1 = (BossSession *) 0 ;
2757 +    std::vector<std::string > result;
2758      PyObject * obj0 = 0 ;
2759      
2760 <    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_clear",&obj0)) goto fail;
2760 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_showProgramTypes",&obj0)) goto fail;
2761      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2762      {
2763          try {
2764 <            (arg1)->clear();
2764 >            result = (arg1)->showProgramTypes();
2765              
2766 +        }catch (const BossSchedFailure & e) {
2767 +            PyErr_SetString ( SchedulerError, e.what() );
2768 +            return NULL;
2769          }catch (const std::exception& e) {
2770 <            SWIG_exception(SWIG_RuntimeError, e.what());
2770 >            PyErr_SetString ( BossError, e.what() );
2771 >            return NULL;
2772          }
2773      }
2774 <    Py_INCREF(Py_None); resultobj = Py_None;
2774 >    {
2775 >        resultobj = PyTuple_New((&result)->size());
2776 >        for (unsigned int i=0; i<(&result)->size(); i++)
2777 >        PyTuple_SetItem(resultobj,i,
2778 >        SwigString_FromString(((std::vector<std::string > &)result)[i]));
2779 >    }
2780      return resultobj;
2781      fail:
2782      return NULL;
2783   }
2784  
2785  
2786 < static PyObject *_wrap_BossSession_makeBossTask(PyObject *self, PyObject *args) {
2786 > static PyObject *_wrap_BossSession_showRTMon(PyObject *self, PyObject *args) {
2787      PyObject *resultobj;
2788      BossSession *arg1 = (BossSession *) 0 ;
2789 <    std::string const &arg2_defvalue = "" ;
2604 <    std::string *arg2 = (std::string *) &arg2_defvalue ;
2605 <    BossTask *result;
2606 <    std::string temp2 ;
2789 >    std::vector<std::string > result;
2790      PyObject * obj0 = 0 ;
2608    PyObject * obj1 = 0 ;
2791      
2792 <    if(!PyArg_ParseTuple(args,(char *)"O|O:BossSession_makeBossTask",&obj0,&obj1)) goto fail;
2792 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_showRTMon",&obj0)) goto fail;
2793      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2612    if (obj1) {
2613        {
2614            if (PyString_Check(obj1)) {
2615                temp2 = std::string(PyString_AsString(obj1));
2616                arg2 = &temp2;
2617            }else {
2618                SWIG_exception(SWIG_TypeError, "string expected");
2619            }
2620        }
2621    }
2794      {
2795          try {
2796 <            result = (BossTask *)(arg1)->makeBossTask((std::string const &)*arg2);
2796 >            result = (arg1)->showRTMon();
2797              
2798 +        }catch (const BossSchedFailure & e) {
2799 +            PyErr_SetString ( SchedulerError, e.what() );
2800 +            return NULL;
2801          }catch (const std::exception& e) {
2802 <            SWIG_exception(SWIG_RuntimeError, e.what());
2802 >            PyErr_SetString ( BossError, e.what() );
2803 >            return NULL;
2804          }
2805      }
2806 <    resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossTask, 0);
2806 >    {
2807 >        resultobj = PyTuple_New((&result)->size());
2808 >        for (unsigned int i=0; i<(&result)->size(); i++)
2809 >        PyTuple_SetItem(resultobj,i,
2810 >        SwigString_FromString(((std::vector<std::string > &)result)[i]));
2811 >    }
2812      return resultobj;
2813      fail:
2814      return NULL;
2815   }
2816  
2817  
2818 < static PyObject *_wrap_BossSession_destroyBossTask(PyObject *self, PyObject *args) {
2818 > static PyObject *_wrap_BossSession_showSchedulers(PyObject *self, PyObject *args) {
2819      PyObject *resultobj;
2820      BossSession *arg1 = (BossSession *) 0 ;
2821 <    BossTask *arg2 = (BossTask *) 0 ;
2821 >    std::vector<std::string > result;
2822      PyObject * obj0 = 0 ;
2642    PyObject * obj1 = 0 ;
2823      
2824 <    if(!PyArg_ParseTuple(args,(char *)"OO:BossSession_destroyBossTask",&obj0,&obj1)) goto fail;
2824 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_showSchedulers",&obj0)) goto fail;
2825      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2646    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
2826      {
2827          try {
2828 <            (arg1)->destroyBossTask(arg2);
2828 >            result = (arg1)->showSchedulers();
2829              
2830 +        }catch (const BossSchedFailure & e) {
2831 +            PyErr_SetString ( SchedulerError, e.what() );
2832 +            return NULL;
2833          }catch (const std::exception& e) {
2834 <            SWIG_exception(SWIG_RuntimeError, e.what());
2834 >            PyErr_SetString ( BossError, e.what() );
2835 >            return NULL;
2836          }
2837      }
2838 <    Py_INCREF(Py_None); resultobj = Py_None;
2838 >    {
2839 >        resultobj = PyTuple_New((&result)->size());
2840 >        for (unsigned int i=0; i<(&result)->size(); i++)
2841 >        PyTuple_SetItem(resultobj,i,
2842 >        SwigString_FromString(((std::vector<std::string > &)result)[i]));
2843 >    }
2844      return resultobj;
2845      fail:
2846      return NULL;
# Line 2671 | Line 2859 | static PyObject *_wrap_BossSession_defau
2859          try {
2860              result = (arg1)->defaultCHTool();
2861              
2862 +        }catch (const BossSchedFailure & e) {
2863 +            PyErr_SetString ( SchedulerError, e.what() );
2864 +            return NULL;
2865          }catch (const std::exception& e) {
2866 <            SWIG_exception(SWIG_RuntimeError, e.what());
2866 >            PyErr_SetString ( BossError, e.what() );
2867 >            return NULL;
2868          }
2869      }
2870      {
# Line 2696 | Line 2888 | static PyObject *_wrap_BossSession_defau
2888          try {
2889              result = (arg1)->defaultProgramType();
2890              
2891 +        }catch (const BossSchedFailure & e) {
2892 +            PyErr_SetString ( SchedulerError, e.what() );
2893 +            return NULL;
2894          }catch (const std::exception& e) {
2895 <            SWIG_exception(SWIG_RuntimeError, e.what());
2895 >            PyErr_SetString ( BossError, e.what() );
2896 >            return NULL;
2897          }
2898      }
2899      {
# Line 2721 | Line 2917 | static PyObject *_wrap_BossSession_defau
2917          try {
2918              result = (arg1)->defaultRTMon();
2919              
2920 +        }catch (const BossSchedFailure & e) {
2921 +            PyErr_SetString ( SchedulerError, e.what() );
2922 +            return NULL;
2923          }catch (const std::exception& e) {
2924 <            SWIG_exception(SWIG_RuntimeError, e.what());
2924 >            PyErr_SetString ( BossError, e.what() );
2925 >            return NULL;
2926          }
2927      }
2928      {
# Line 2746 | Line 2946 | static PyObject *_wrap_BossSession_defau
2946          try {
2947              result = (arg1)->defaultScheduler();
2948              
2949 +        }catch (const BossSchedFailure & e) {
2950 +            PyErr_SetString ( SchedulerError, e.what() );
2951 +            return NULL;
2952          }catch (const std::exception& e) {
2953 <            SWIG_exception(SWIG_RuntimeError, e.what());
2953 >            PyErr_SetString ( BossError, e.what() );
2954 >            return NULL;
2955          }
2956      }
2957      {
# Line 2771 | Line 2975 | static PyObject *_wrap_BossSession_versi
2975          try {
2976              result = (arg1)->version();
2977              
2978 +        }catch (const BossSchedFailure & e) {
2979 +            PyErr_SetString ( SchedulerError, e.what() );
2980 +            return NULL;
2981          }catch (const std::exception& e) {
2982 <            SWIG_exception(SWIG_RuntimeError, e.what());
2982 >            PyErr_SetString ( BossError, e.what() );
2983 >            return NULL;
2984          }
2985      }
2986      {
# Line 2796 | Line 3004 | static PyObject *_wrap_BossSession_clien
3004          try {
3005              result = (arg1)->clientID();
3006              
3007 +        }catch (const BossSchedFailure & e) {
3008 +            PyErr_SetString ( SchedulerError, e.what() );
3009 +            return NULL;
3010          }catch (const std::exception& e) {
3011 <            SWIG_exception(SWIG_RuntimeError, e.what());
3011 >            PyErr_SetString ( BossError, e.what() );
3012 >            return NULL;
3013          }
3014      }
3015      {
# Line 2827 | Line 3039 | static PyObject *_wrap_BossSession_showC
3039          try {
3040              result = (int)(arg1)->showConfigs(arg2);
3041              
3042 +        }catch (const BossSchedFailure & e) {
3043 +            PyErr_SetString ( SchedulerError, e.what() );
3044 +            return NULL;
3045          }catch (const std::exception& e) {
3046 <            SWIG_exception(SWIG_RuntimeError, e.what());
3046 >            PyErr_SetString ( BossError, e.what() );
3047 >            return NULL;
3048          }
3049      }
3050      resultobj = PyInt_FromLong((long)result);
# Line 2880 | Line 3096 | static PyObject *_wrap_BossSession_RTupd
3096          try {
3097              result = (int)(arg1)->RTupdate(arg2,arg3,arg4);
3098              
3099 +        }catch (const BossSchedFailure & e) {
3100 +            PyErr_SetString ( SchedulerError, e.what() );
3101 +            return NULL;
3102          }catch (const std::exception& e) {
3103 <            SWIG_exception(SWIG_RuntimeError, e.what());
3103 >            PyErr_SetString ( BossError, e.what() );
3104 >            return NULL;
3105          }
3106      }
3107      resultobj = PyInt_FromLong((long)result);
# Line 2896 | Line 3116 | static PyObject *_wrap_BossSession_listM
3116      BossSession *arg1 = (BossSession *) 0 ;
3117      std::string *arg2 = 0 ;
3118      std::string *arg3 = 0 ;
3119 <    bool arg4 = (bool) false ;
3119 >    std::string const &arg4_defvalue = "" ;
3120 >    std::string *arg4 = (std::string *) &arg4_defvalue ;
3121      std::string const &arg5_defvalue = "" ;
3122      std::string *arg5 = (std::string *) &arg5_defvalue ;
3123 <    std::string const &arg6_defvalue = "" ;
2903 <    std::string *arg6 = (std::string *) &arg6_defvalue ;
3123 >    unsigned int arg6 = (unsigned int) 0 ;
3124      std::vector<std::string > result;
3125      std::string temp2 ;
3126      std::string temp3 ;
3127 +    std::string temp4 ;
3128      std::string temp5 ;
2908    std::string temp6 ;
3129      PyObject * obj0 = 0 ;
3130      PyObject * obj1 = 0 ;
3131      PyObject * obj2 = 0 ;
# Line 2932 | Line 3152 | static PyObject *_wrap_BossSession_listM
3152          }
3153      }
3154      if (obj3) {
3155 <        arg4 = PyInt_AsLong(obj3) ? true : false;
3156 <        if (PyErr_Occurred()) SWIG_fail;
3155 >        {
3156 >            if (PyString_Check(obj3)) {
3157 >                temp4 = std::string(PyString_AsString(obj3));
3158 >                arg4 = &temp4;
3159 >            }else {
3160 >                SWIG_exception(SWIG_TypeError, "string expected");
3161 >            }
3162 >        }
3163      }
3164      if (obj4) {
3165          {
# Line 2946 | Line 3172 | static PyObject *_wrap_BossSession_listM
3172          }
3173      }
3174      if (obj5) {
3175 <        {
3176 <            if (PyString_Check(obj5)) {
2951 <                temp6 = std::string(PyString_AsString(obj5));
2952 <                arg6 = &temp6;
2953 <            }else {
2954 <                SWIG_exception(SWIG_TypeError, "string expected");
2955 <            }
2956 <        }
3175 >        arg6 = (unsigned int) PyInt_AsLong(obj5);
3176 >        if (PyErr_Occurred()) SWIG_fail;
3177      }
3178      {
3179          try {
3180 <            result = (arg1)->listMatch((std::string const &)*arg2,(std::string const &)*arg3,arg4,(std::string const &)*arg5,(std::string const &)*arg6);
3180 >            result = (arg1)->listMatch((std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,arg6);
3181              
3182 +        }catch (const BossSchedFailure & e) {
3183 +            PyErr_SetString ( SchedulerError, e.what() );
3184 +            return NULL;
3185          }catch (const std::exception& e) {
3186 <            SWIG_exception(SWIG_RuntimeError, e.what());
3186 >            PyErr_SetString ( BossError, e.what() );
3187 >            return NULL;
3188          }
3189      }
3190      {
# Line 2975 | Line 3199 | static PyObject *_wrap_BossSession_listM
3199   }
3200  
3201  
3202 < static PyObject *_wrap_BossSession_schedulerQuery(PyObject *self, PyObject *args) {
3202 > static PyObject *_wrap_BossSession_query(PyObject *self, PyObject *args) {
3203      PyObject *resultobj;
3204      BossSession *arg1 = (BossSession *) 0 ;
3205      int arg2 = (int) SCHEDULED ;
# Line 2989 | Line 3213 | static PyObject *_wrap_BossSession_sched
3213      std::string arg7 = (std::string) "" ;
3214      std::string arg8 = (std::string) "" ;
3215      std::string arg9 = (std::string) "" ;
3216 +    unsigned int arg10 = (unsigned int) 0 ;
3217 +    bool arg11 = (bool) false ;
3218      std::string temp3 ;
3219      std::string temp4 ;
3220      std::string temp5 ;
# Line 3000 | Line 3226 | static PyObject *_wrap_BossSession_sched
3226      PyObject * obj6 = 0 ;
3227      PyObject * obj7 = 0 ;
3228      PyObject * obj8 = 0 ;
3229 +    PyObject * obj9 = 0 ;
3230 +    PyObject * obj10 = 0 ;
3231      
3232 <    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOOO:BossSession_schedulerQuery",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) goto fail;
3232 >    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOOOOO:BossSession_query",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10)) goto fail;
3233      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3234      if (obj2) {
3235          {
# Line 3065 | Line 3293 | static PyObject *_wrap_BossSession_sched
3293              SWIG_exception(SWIG_TypeError, "string expected");
3294          }
3295      }
3296 +    if (obj9) {
3297 +        arg10 = (unsigned int) PyInt_AsLong(obj9);
3298 +        if (PyErr_Occurred()) SWIG_fail;
3299 +    }
3300 +    if (obj10) {
3301 +        arg11 = PyInt_AsLong(obj10) ? true : false;
3302 +        if (PyErr_Occurred()) SWIG_fail;
3303 +    }
3304      {
3305          try {
3306 <            (arg1)->schedulerQuery(arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,arg6,arg7,arg8,arg9);
3306 >            (arg1)->query(arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,arg6,arg7,arg8,arg9,arg10,arg11);
3307              
3308 +        }catch (const BossSchedFailure & e) {
3309 +            PyErr_SetString ( SchedulerError, e.what() );
3310 +            return NULL;
3311          }catch (const std::exception& e) {
3312 <            SWIG_exception(SWIG_RuntimeError, e.what());
3312 >            PyErr_SetString ( BossError, e.what() );
3313 >            return NULL;
3314          }
3315      }
3316      Py_INCREF(Py_None); resultobj = Py_None;
# Line 3080 | Line 3320 | static PyObject *_wrap_BossSession_sched
3320   }
3321  
3322  
3323 < static PyObject *_wrap_BossSession_selectTasks(PyObject *self, PyObject *args) {
3323 > static PyObject *_wrap_BossSession_getTasksByName(PyObject *self, PyObject *args) {
3324      PyObject *resultobj;
3325      BossSession *arg1 = (BossSession *) 0 ;
3326 <    std::string const &arg2_defvalue = "all" ;
3327 <    std::string *arg2 = (std::string *) &arg2_defvalue ;
3328 <    std::string const &arg3_defvalue = "" ;
3329 <    std::string *arg3 = (std::string *) &arg3_defvalue ;
3326 >    std::string *arg2 = 0 ;
3327 >    unsigned int result;
3328 >    std::string temp2 ;
3329 >    PyObject * obj0 = 0 ;
3330 >    PyObject * obj1 = 0 ;
3331 >    
3332 >    if(!PyArg_ParseTuple(args,(char *)"OO:BossSession_getTasksByName",&obj0,&obj1)) goto fail;
3333 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3334 >    {
3335 >        if (PyString_Check(obj1)) {
3336 >            temp2 = std::string(PyString_AsString(obj1));
3337 >            arg2 = &temp2;
3338 >        }else {
3339 >            SWIG_exception(SWIG_TypeError, "string expected");
3340 >        }
3341 >    }
3342 >    {
3343 >        try {
3344 >            result = (unsigned int)(arg1)->getTasksByName((std::string const &)*arg2);
3345 >            
3346 >        }catch (const BossSchedFailure & e) {
3347 >            PyErr_SetString ( SchedulerError, e.what() );
3348 >            return NULL;
3349 >        }catch (const std::exception& e) {
3350 >            PyErr_SetString ( BossError, e.what() );
3351 >            return NULL;
3352 >        }
3353 >    }
3354 >    resultobj = PyInt_FromLong((long)result);
3355 >    return resultobj;
3356 >    fail:
3357 >    return NULL;
3358 > }
3359 >
3360 >
3361 > static PyObject *_wrap_BossSession_getTasksByTaskInfo(PyObject *self, PyObject *args) {
3362 >    PyObject *resultobj;
3363 >    BossSession *arg1 = (BossSession *) 0 ;
3364 >    std::string *arg2 = 0 ;
3365 >    unsigned int result;
3366 >    std::string temp2 ;
3367 >    PyObject * obj0 = 0 ;
3368 >    PyObject * obj1 = 0 ;
3369 >    
3370 >    if(!PyArg_ParseTuple(args,(char *)"OO:BossSession_getTasksByTaskInfo",&obj0,&obj1)) goto fail;
3371 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3372 >    {
3373 >        if (PyString_Check(obj1)) {
3374 >            temp2 = std::string(PyString_AsString(obj1));
3375 >            arg2 = &temp2;
3376 >        }else {
3377 >            SWIG_exception(SWIG_TypeError, "string expected");
3378 >        }
3379 >    }
3380 >    {
3381 >        try {
3382 >            result = (unsigned int)(arg1)->getTasksByTaskInfo((std::string const &)*arg2);
3383 >            
3384 >        }catch (const BossSchedFailure & e) {
3385 >            PyErr_SetString ( SchedulerError, e.what() );
3386 >            return NULL;
3387 >        }catch (const std::exception& e) {
3388 >            PyErr_SetString ( BossError, e.what() );
3389 >            return NULL;
3390 >        }
3391 >    }
3392 >    resultobj = PyInt_FromLong((long)result);
3393 >    return resultobj;
3394 >    fail:
3395 >    return NULL;
3396 > }
3397 >
3398 >
3399 > static PyObject *_wrap_BossSession_getTasksByJobName(PyObject *self, PyObject *args) {
3400 >    PyObject *resultobj;
3401 >    BossSession *arg1 = (BossSession *) 0 ;
3402 >    std::string *arg2 = 0 ;
3403 >    unsigned int result;
3404 >    std::string temp2 ;
3405 >    PyObject * obj0 = 0 ;
3406 >    PyObject * obj1 = 0 ;
3407 >    
3408 >    if(!PyArg_ParseTuple(args,(char *)"OO:BossSession_getTasksByJobName",&obj0,&obj1)) goto fail;
3409 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3410 >    {
3411 >        if (PyString_Check(obj1)) {
3412 >            temp2 = std::string(PyString_AsString(obj1));
3413 >            arg2 = &temp2;
3414 >        }else {
3415 >            SWIG_exception(SWIG_TypeError, "string expected");
3416 >        }
3417 >    }
3418 >    {
3419 >        try {
3420 >            result = (unsigned int)(arg1)->getTasksByJobName((std::string const &)*arg2);
3421 >            
3422 >        }catch (const BossSchedFailure & e) {
3423 >            PyErr_SetString ( SchedulerError, e.what() );
3424 >            return NULL;
3425 >        }catch (const std::exception& e) {
3426 >            PyErr_SetString ( BossError, e.what() );
3427 >            return NULL;
3428 >        }
3429 >    }
3430 >    resultobj = PyInt_FromLong((long)result);
3431 >    return resultobj;
3432 >    fail:
3433 >    return NULL;
3434 > }
3435 >
3436 >
3437 > static PyObject *_wrap_BossSession_show(PyObject *self, PyObject *args) {
3438 >    PyObject *resultobj;
3439 >    BossSession *arg1 = (BossSession *) 0 ;
3440 >    std::vector<std::string > *arg2 = 0 ;
3441 >    PyObject *result;
3442 >    PyObject * obj0 = 0 ;
3443 >    PyObject * obj1 = 0 ;
3444 >    
3445 >    if(!PyArg_ParseTuple(args,(char *)"OO:BossSession_show",&obj0,&obj1)) goto fail;
3446 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3447 >    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_std__vectorTstd__string_t,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3448 >    if (arg2 == NULL) {
3449 >        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail;
3450 >    }
3451 >    {
3452 >        try {
3453 >            result = (PyObject *)BossSession_show(arg1,*arg2);
3454 >            
3455 >        }catch (const BossSchedFailure & e) {
3456 >            PyErr_SetString ( SchedulerError, e.what() );
3457 >            return NULL;
3458 >        }catch (const std::exception& e) {
3459 >            PyErr_SetString ( BossError, e.what() );
3460 >            return NULL;
3461 >        }
3462 >    }
3463 >    resultobj = result;
3464 >    return resultobj;
3465 >    fail:
3466 >    return NULL;
3467 > }
3468 >
3469 >
3470 > static PyObject *_wrap_BossSession_CHTools(PyObject *self, PyObject *args) {
3471 >    PyObject *resultobj;
3472 >    BossSession *arg1 = (BossSession *) 0 ;
3473 >    PyObject *result;
3474 >    PyObject * obj0 = 0 ;
3475 >    
3476 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_CHTools",&obj0)) goto fail;
3477 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3478 >    {
3479 >        try {
3480 >            result = (PyObject *)BossSession_CHTools(arg1);
3481 >            
3482 >        }catch (const BossSchedFailure & e) {
3483 >            PyErr_SetString ( SchedulerError, e.what() );
3484 >            return NULL;
3485 >        }catch (const std::exception& e) {
3486 >            PyErr_SetString ( BossError, e.what() );
3487 >            return NULL;
3488 >        }
3489 >    }
3490 >    resultobj = result;
3491 >    return resultobj;
3492 >    fail:
3493 >    return NULL;
3494 > }
3495 >
3496 >
3497 > static PyObject *_wrap_BossSession_ProgramTypes(PyObject *self, PyObject *args) {
3498 >    PyObject *resultobj;
3499 >    BossSession *arg1 = (BossSession *) 0 ;
3500 >    PyObject *result;
3501 >    PyObject * obj0 = 0 ;
3502 >    
3503 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_ProgramTypes",&obj0)) goto fail;
3504 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3505 >    {
3506 >        try {
3507 >            result = (PyObject *)BossSession_ProgramTypes(arg1);
3508 >            
3509 >        }catch (const BossSchedFailure & e) {
3510 >            PyErr_SetString ( SchedulerError, e.what() );
3511 >            return NULL;
3512 >        }catch (const std::exception& e) {
3513 >            PyErr_SetString ( BossError, e.what() );
3514 >            return NULL;
3515 >        }
3516 >    }
3517 >    resultobj = result;
3518 >    return resultobj;
3519 >    fail:
3520 >    return NULL;
3521 > }
3522 >
3523 >
3524 > static PyObject *_wrap_BossSession_RTMons(PyObject *self, PyObject *args) {
3525 >    PyObject *resultobj;
3526 >    BossSession *arg1 = (BossSession *) 0 ;
3527 >    PyObject *result;
3528 >    PyObject * obj0 = 0 ;
3529 >    
3530 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_RTMons",&obj0)) goto fail;
3531 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3532 >    {
3533 >        try {
3534 >            result = (PyObject *)BossSession_RTMons(arg1);
3535 >            
3536 >        }catch (const BossSchedFailure & e) {
3537 >            PyErr_SetString ( SchedulerError, e.what() );
3538 >            return NULL;
3539 >        }catch (const std::exception& e) {
3540 >            PyErr_SetString ( BossError, e.what() );
3541 >            return NULL;
3542 >        }
3543 >    }
3544 >    resultobj = result;
3545 >    return resultobj;
3546 >    fail:
3547 >    return NULL;
3548 > }
3549 >
3550 >
3551 > static PyObject *_wrap_BossSession_schedulers(PyObject *self, PyObject *args) {
3552 >    PyObject *resultobj;
3553 >    BossSession *arg1 = (BossSession *) 0 ;
3554 >    PyObject *result;
3555 >    PyObject * obj0 = 0 ;
3556 >    
3557 >    if(!PyArg_ParseTuple(args,(char *)"O:BossSession_schedulers",&obj0)) goto fail;
3558 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3559 >    {
3560 >        try {
3561 >            result = (PyObject *)BossSession_schedulers(arg1);
3562 >            
3563 >        }catch (const BossSchedFailure & e) {
3564 >            PyErr_SetString ( SchedulerError, e.what() );
3565 >            return NULL;
3566 >        }catch (const std::exception& e) {
3567 >            PyErr_SetString ( BossError, e.what() );
3568 >            return NULL;
3569 >        }
3570 >    }
3571 >    resultobj = result;
3572 >    return resultobj;
3573 >    fail:
3574 >    return NULL;
3575 > }
3576 >
3577 >
3578 > static PyObject *_wrap_BossSession_schedListMatch(PyObject *self, PyObject *args) {
3579 >    PyObject *resultobj;
3580 >    BossSession *arg1 = (BossSession *) 0 ;
3581 >    std::string *arg2 = 0 ;
3582 >    std::string *arg3 = 0 ;
3583      std::string const &arg4_defvalue = "" ;
3584      std::string *arg4 = (std::string *) &arg4_defvalue ;
3585      std::string const &arg5_defvalue = "" ;
3586      std::string *arg5 = (std::string *) &arg5_defvalue ;
3587 <    std::vector<std::string > result;
3587 >    unsigned int arg6 = (unsigned int) 0 ;
3588 >    PyObject *result;
3589      std::string temp2 ;
3590      std::string temp3 ;
3591      std::string temp4 ;
# Line 3101 | Line 3595 | static PyObject *_wrap_BossSession_selec
3595      PyObject * obj2 = 0 ;
3596      PyObject * obj3 = 0 ;
3597      PyObject * obj4 = 0 ;
3598 +    PyObject * obj5 = 0 ;
3599      
3600 <    if(!PyArg_ParseTuple(args,(char *)"O|OOOO:BossSession_selectTasks",&obj0,&obj1,&obj2,&obj3,&obj4)) goto fail;
3600 >    if(!PyArg_ParseTuple(args,(char *)"OOO|OOO:BossSession_schedListMatch",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) goto fail;
3601      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3602 <    if (obj1) {
3603 <        {
3604 <            if (PyString_Check(obj1)) {
3605 <                temp2 = std::string(PyString_AsString(obj1));
3606 <                arg2 = &temp2;
3607 <            }else {
3113 <                SWIG_exception(SWIG_TypeError, "string expected");
3114 <            }
3602 >    {
3603 >        if (PyString_Check(obj1)) {
3604 >            temp2 = std::string(PyString_AsString(obj1));
3605 >            arg2 = &temp2;
3606 >        }else {
3607 >            SWIG_exception(SWIG_TypeError, "string expected");
3608          }
3609      }
3610 <    if (obj2) {
3611 <        {
3612 <            if (PyString_Check(obj2)) {
3613 <                temp3 = std::string(PyString_AsString(obj2));
3614 <                arg3 = &temp3;
3615 <            }else {
3123 <                SWIG_exception(SWIG_TypeError, "string expected");
3124 <            }
3610 >    {
3611 >        if (PyString_Check(obj2)) {
3612 >            temp3 = std::string(PyString_AsString(obj2));
3613 >            arg3 = &temp3;
3614 >        }else {
3615 >            SWIG_exception(SWIG_TypeError, "string expected");
3616          }
3617      }
3618      if (obj3) {
# Line 3144 | Line 3635 | static PyObject *_wrap_BossSession_selec
3635              }
3636          }
3637      }
3638 +    if (obj5) {
3639 +        arg6 = (unsigned int) PyInt_AsLong(obj5);
3640 +        if (PyErr_Occurred()) SWIG_fail;
3641 +    }
3642      {
3643          try {
3644 <            result = (arg1)->selectTasks((std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5);
3644 >            result = (PyObject *)BossSession_schedListMatch(arg1,(std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,arg6);
3645              
3646 +        }catch (const BossSchedFailure & e) {
3647 +            PyErr_SetString ( SchedulerError, e.what() );
3648 +            return NULL;
3649          }catch (const std::exception& e) {
3650 <            SWIG_exception(SWIG_RuntimeError, e.what());
3650 >            PyErr_SetString ( BossError, e.what() );
3651 >            return NULL;
3652          }
3653      }
3654 <    {
3156 <        resultobj = PyTuple_New((&result)->size());
3157 <        for (unsigned int i=0; i<(&result)->size(); i++)
3158 <        PyTuple_SetItem(resultobj,i,
3159 <        SwigString_FromString(((std::vector<std::string > &)result)[i]));
3160 <    }
3654 >    resultobj = result;
3655      return resultobj;
3656      fail:
3657      return NULL;
3658   }
3659  
3660  
3661 < static PyObject *_wrap_BossSession_query(PyObject *self, PyObject *args) {
3661 > static PyObject *_wrap_BossSession_schedulerQuery(PyObject *self, PyObject *args) {
3662      PyObject *resultobj;
3663      BossSession *arg1 = (BossSession *) 0 ;
3664      int arg2 = (int) SCHEDULED ;
# Line 3178 | Line 3672 | static PyObject *_wrap_BossSession_query
3672      std::string arg7 = (std::string) "" ;
3673      std::string arg8 = (std::string) "" ;
3674      std::string arg9 = (std::string) "" ;
3675 <    bool arg10 = (bool) false ;
3676 <    SwigValueWrapper< std::vector<BossTask * > > result;
3675 >    unsigned int arg10 = (unsigned int) 0 ;
3676 >    bool arg11 = (bool) false ;
3677      std::string temp3 ;
3678      std::string temp4 ;
3679      std::string temp5 ;
# Line 3192 | Line 3686 | static PyObject *_wrap_BossSession_query
3686      PyObject * obj7 = 0 ;
3687      PyObject * obj8 = 0 ;
3688      PyObject * obj9 = 0 ;
3689 +    PyObject * obj10 = 0 ;
3690      
3691 <    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOOOO:BossSession_query",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9)) goto fail;
3691 >    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOOOOO:BossSession_schedulerQuery",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10)) goto fail;
3692      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3693      if (obj2) {
3694          {
# Line 3258 | Line 3753 | static PyObject *_wrap_BossSession_query
3753          }
3754      }
3755      if (obj9) {
3756 <        arg10 = PyInt_AsLong(obj9) ? true : false;
3756 >        arg10 = (unsigned int) PyInt_AsLong(obj9);
3757 >        if (PyErr_Occurred()) SWIG_fail;
3758 >    }
3759 >    if (obj10) {
3760 >        arg11 = PyInt_AsLong(obj10) ? true : false;
3761          if (PyErr_Occurred()) SWIG_fail;
3762      }
3763      {
3764          try {
3765 <            result = (arg1)->query(arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,arg6,arg7,arg8,arg9,arg10);
3765 >            BossSession_schedulerQuery(arg1,arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,arg6,arg7,arg8,arg9,arg10,arg11);
3766              
3767 +        }catch (const BossSchedFailure & e) {
3768 +            PyErr_SetString ( SchedulerError, e.what() );
3769 +            return NULL;
3770          }catch (const std::exception& e) {
3771 <            SWIG_exception(SWIG_RuntimeError, e.what());
3771 >            PyErr_SetString ( BossError, e.what() );
3772 >            return NULL;
3773          }
3774      }
3775 <    {
3273 <        std::vector<BossTask * > * resultptr;
3274 <        resultptr = new std::vector<BossTask * >((std::vector<BossTask * > &) result);
3275 <        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_std__vectorTBossTask_p_t, 1);
3276 <    }
3775 >    Py_INCREF(Py_None); resultobj = Py_None;
3776      return resultobj;
3777      fail:
3778      return NULL;
# Line 3287 | Line 3786 | static PyObject * BossSession_swigregist
3786      Py_INCREF(obj);
3787      return Py_BuildValue((char *)"");
3788   }
3290 static PyObject *_wrap_BossTaskException_key_set(PyObject *self, PyObject *args) {
3291    PyObject *resultobj;
3292    BossTaskException *arg1 = (BossTaskException *) 0 ;
3293    char *arg2 ;
3294    PyObject * obj0 = 0 ;
3295    
3296    if(!PyArg_ParseTuple(args,(char *)"Os:BossTaskException_key_set",&obj0,&arg2)) goto fail;
3297    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTaskException,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3298    {
3299        if (arg2) {
3300            arg1->key = (char const *) (new char[strlen(arg2)+1]);
3301            strcpy((char *) arg1->key,arg2);
3302        }else {
3303            arg1->key = 0;
3304        }
3305    }
3306    Py_INCREF(Py_None); resultobj = Py_None;
3307    return resultobj;
3308    fail:
3309    return NULL;
3310 }
3311
3312
3313 static PyObject *_wrap_BossTaskException_key_get(PyObject *self, PyObject *args) {
3314    PyObject *resultobj;
3315    BossTaskException *arg1 = (BossTaskException *) 0 ;
3316    char *result;
3317    PyObject * obj0 = 0 ;
3318    
3319    if(!PyArg_ParseTuple(args,(char *)"O:BossTaskException_key_get",&obj0)) goto fail;
3320    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTaskException,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3321    result = (char *) ((arg1)->key);
3322    
3323    resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)"");
3324    return resultobj;
3325    fail:
3326    return NULL;
3327 }
3328
3329
3789   static PyObject *_wrap_new_BossTaskException(PyObject *self, PyObject *args) {
3790      PyObject *resultobj;
3791      char *arg1 ;
# Line 3337 | Line 3796 | static PyObject *_wrap_new_BossTaskExcep
3796          try {
3797              result = (BossTaskException *)new BossTaskException((char const *)arg1);
3798              
3799 +        }catch (const BossSchedFailure & e) {
3800 +            PyErr_SetString ( SchedulerError, e.what() );
3801 +            return NULL;
3802          }catch (const std::exception& e) {
3803 <            SWIG_exception(SWIG_RuntimeError, e.what());
3803 >            PyErr_SetString ( BossError, e.what() );
3804 >            return NULL;
3805          }
3806      }
3807      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossTaskException, 1);
# Line 3348 | Line 3811 | static PyObject *_wrap_new_BossTaskExcep
3811   }
3812  
3813  
3814 < static PyObject *_wrap_BossTaskException_what(PyObject *self, PyObject *args) {
3814 > static PyObject *_wrap_delete_BossTaskException(PyObject *self, PyObject *args) {
3815      PyObject *resultobj;
3816      BossTaskException *arg1 = (BossTaskException *) 0 ;
3354    char *result;
3817      PyObject * obj0 = 0 ;
3818      
3819 <    if(!PyArg_ParseTuple(args,(char *)"O:BossTaskException_what",&obj0)) goto fail;
3819 >    if(!PyArg_ParseTuple(args,(char *)"O:delete_BossTaskException",&obj0)) goto fail;
3820      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTaskException,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3821      {
3822          try {
3823 <            result = (char *)((BossTaskException const *)arg1)->what();
3823 >            delete arg1;
3824              
3825 +        }catch (const BossSchedFailure & e) {
3826 +            PyErr_SetString ( SchedulerError, e.what() );
3827 +            return NULL;
3828          }catch (const std::exception& e) {
3829 <            SWIG_exception(SWIG_RuntimeError, e.what());
3829 >            PyErr_SetString ( BossError, e.what() );
3830 >            return NULL;
3831          }
3832      }
3833 <    resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)"");
3833 >    Py_INCREF(Py_None); resultobj = Py_None;
3834      return resultobj;
3835      fail:
3836      return NULL;
3837   }
3838  
3839  
3840 < static PyObject *_wrap_delete_BossTaskException(PyObject *self, PyObject *args) {
3840 > static PyObject * BossTaskException_swigregister(PyObject *self, PyObject *args) {
3841 >    PyObject *obj;
3842 >    if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
3843 >    SWIG_TypeClientData(SWIGTYPE_p_BossTaskException, obj);
3844 >    Py_INCREF(obj);
3845 >    return Py_BuildValue((char *)"");
3846 > }
3847 > static PyObject *_wrap_BossTask_job_begin(PyObject *self, PyObject *args) {
3848      PyObject *resultobj;
3849 <    BossTaskException *arg1 = (BossTaskException *) 0 ;
3849 >    BossTask *arg1 = (BossTask *) 0 ;
3850 >    BossTask::job_iterator result;
3851      PyObject * obj0 = 0 ;
3852      
3853 <    if(!PyArg_ParseTuple(args,(char *)"O:delete_BossTaskException",&obj0)) goto fail;
3854 <    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTaskException,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3853 >    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_job_begin",&obj0)) goto fail;
3854 >    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3855      {
3856          try {
3857 <            delete arg1;
3857 >            result = ((BossTask const *)arg1)->job_begin();
3858              
3859 +        }catch (const BossSchedFailure & e) {
3860 +            PyErr_SetString ( SchedulerError, e.what() );
3861 +            return NULL;
3862          }catch (const std::exception& e) {
3863 <            SWIG_exception(SWIG_RuntimeError, e.what());
3863 >            PyErr_SetString ( BossError, e.what() );
3864 >            return NULL;
3865          }
3866      }
3867 <    Py_INCREF(Py_None); resultobj = Py_None;
3867 >    {
3868 >        BossTask::job_iterator * resultptr;
3869 >        resultptr = new BossTask::job_iterator((BossTask::job_iterator &) result);
3870 >        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossTask__job_iterator, 1);
3871 >    }
3872      return resultobj;
3873      fail:
3874      return NULL;
3875   }
3876  
3877  
3878 < static PyObject * BossTaskException_swigregister(PyObject *self, PyObject *args) {
3397 <    PyObject *obj;
3398 <    if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
3399 <    SWIG_TypeClientData(SWIGTYPE_p_BossTaskException, obj);
3400 <    Py_INCREF(obj);
3401 <    return Py_BuildValue((char *)"");
3402 < }
3403 < static PyObject *_wrap_BossTask_appendToPyDict(PyObject *self, PyObject *args) {
3878 > static PyObject *_wrap_BossTask_job_end(PyObject *self, PyObject *args) {
3879      PyObject *resultobj;
3880      BossTask *arg1 = (BossTask *) 0 ;
3881 <    PyObject *arg2 = (PyObject *) 0 ;
3407 <    BossAttributeContainer *arg3 = 0 ;
3408 <    PyObject *result;
3881 >    BossTask::job_iterator result;
3882      PyObject * obj0 = 0 ;
3410    PyObject * obj1 = 0 ;
3411    PyObject * obj2 = 0 ;
3883      
3884 <    if(!PyArg_ParseTuple(args,(char *)"OOO:BossTask_appendToPyDict",&obj0,&obj1,&obj2)) goto fail;
3884 >    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_job_end",&obj0)) goto fail;
3885      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3415    arg2 = obj1;
3416    if ((SWIG_ConvertPtr(obj2,(void **) &arg3, SWIGTYPE_p_BossAttributeContainer,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3417    if (arg3 == NULL) {
3418        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail;
3419    }
3886      {
3887          try {
3888 <            result = (PyObject *)BossTask_appendToPyDict((BossTask const *)arg1,arg2,(BossAttributeContainer const &)*arg3);
3888 >            result = ((BossTask const *)arg1)->job_end();
3889              
3890 +        }catch (const BossSchedFailure & e) {
3891 +            PyErr_SetString ( SchedulerError, e.what() );
3892 +            return NULL;
3893          }catch (const std::exception& e) {
3894 <            SWIG_exception(SWIG_RuntimeError, e.what());
3894 >            PyErr_SetString ( BossError, e.what() );
3895 >            return NULL;
3896          }
3897      }
3898 <    resultobj = result;
3898 >    {
3899 >        BossTask::job_iterator * resultptr;
3900 >        resultptr = new BossTask::job_iterator((BossTask::job_iterator &) result);
3901 >        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossTask__job_iterator, 1);
3902 >    }
3903      return resultobj;
3904      fail:
3905      return NULL;
3906   }
3907  
3908  
3909 < static PyObject *_wrap_BossTask_jobDict(PyObject *self, PyObject *args) {
3909 > static PyObject *_wrap_BossTask_jobsInMemory(PyObject *self, PyObject *args) {
3910      PyObject *resultobj;
3911      BossTask *arg1 = (BossTask *) 0 ;
3912 <    std::vector<BossJob * >::const_iterator *arg2 = 0 ;
3439 <    PyObject *result;
3912 >    unsigned int result;
3913      PyObject * obj0 = 0 ;
3441    PyObject * obj1 = 0 ;
3914      
3915 <    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_jobDict",&obj0,&obj1)) goto fail;
3915 >    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_jobsInMemory",&obj0)) goto fail;
3916      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3445    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_std__vectorTBossJob_p_t__const_iterator,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3446    if (arg2 == NULL) {
3447        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail;
3448    }
3917      {
3918          try {
3919 <            result = (PyObject *)BossTask_jobDict((BossTask const *)arg1,*arg2);
3919 >            result = (unsigned int)((BossTask const *)arg1)->jobsInMemory();
3920              
3921 +        }catch (const BossSchedFailure & e) {
3922 +            PyErr_SetString ( SchedulerError, e.what() );
3923 +            return NULL;
3924          }catch (const std::exception& e) {
3925 <            SWIG_exception(SWIG_RuntimeError, e.what());
3925 >            PyErr_SetString ( BossError, e.what() );
3926 >            return NULL;
3927          }
3928      }
3929 <    resultobj = result;
3929 >    resultobj = PyInt_FromLong((long)result);
3930      return resultobj;
3931      fail:
3932      return NULL;
3933   }
3934  
3935  
3936 < static PyObject *_wrap_BossTask_jobsDict(PyObject *self, PyObject *args) {
3936 > static PyObject *_wrap_BossTask_queryJobPrograms(PyObject *self, PyObject *args) {
3937      PyObject *resultobj;
3938      BossTask *arg1 = (BossTask *) 0 ;
3939 <    PyObject *result;
3939 >    BossJob *arg2 = (BossJob *) 0 ;
3940 >    SwigValueWrapper< std::vector<std::pair<BossProgram,BossProgramExec > > > result;
3941      PyObject * obj0 = 0 ;
3942 +    PyObject * obj1 = 0 ;
3943      
3944 <    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_jobsDict",&obj0)) goto fail;
3944 >    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_queryJobPrograms",&obj0,&obj1)) goto fail;
3945      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3946 +    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_BossJob,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3947      {
3948          try {
3949 <            result = (PyObject *)BossTask_jobsDict(arg1);
3949 >            result = ((BossTask const *)arg1)->queryJobPrograms((BossJob const *)arg2);
3950              
3951 +        }catch (const BossSchedFailure & e) {
3952 +            PyErr_SetString ( SchedulerError, e.what() );
3953 +            return NULL;
3954          }catch (const std::exception& e) {
3955 <            SWIG_exception(SWIG_RuntimeError, e.what());
3955 >            PyErr_SetString ( BossError, e.what() );
3956 >            return NULL;
3957          }
3958      }
3959 <    resultobj = result;
3959 >    {
3960 >        std::vector<std::pair<BossProgram,BossProgramExec > > * resultptr;
3961 >        resultptr = new std::vector<std::pair<BossProgram,BossProgramExec > >((std::vector<std::pair<BossProgram,BossProgramExec > > &) result);
3962 >        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t, 1);
3963 >    }
3964      return resultobj;
3965      fail:
3966      return NULL;
3967   }
3968  
3969  
3970 < static PyObject *_wrap_BossTask_progDict(PyObject *self, PyObject *args) {
3970 > static PyObject *_wrap_BossTask_queryProgram(PyObject *self, PyObject *args) {
3971      PyObject *resultobj;
3972      BossTask *arg1 = (BossTask *) 0 ;
3973 <    std::vector<std::pair<BossProgram,BossProgramExec > >::const_iterator *arg2 = 0 ;
3974 <    PyObject *result;
3973 >    BossJob *arg2 = (BossJob *) 0 ;
3974 >    std::string *arg3 = 0 ;
3975 >    BossProgram result;
3976 >    std::string temp3 ;
3977      PyObject * obj0 = 0 ;
3978      PyObject * obj1 = 0 ;
3979 +    PyObject * obj2 = 0 ;
3980      
3981 <    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_progDict",&obj0,&obj1)) goto fail;
3981 >    if(!PyArg_ParseTuple(args,(char *)"OOO:BossTask_queryProgram",&obj0,&obj1,&obj2)) goto fail;
3982      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3983 <    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3984 <    if (arg2 == NULL) {
3985 <        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail;
3983 >    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_BossJob,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3984 >    {
3985 >        if (PyString_Check(obj2)) {
3986 >            temp3 = std::string(PyString_AsString(obj2));
3987 >            arg3 = &temp3;
3988 >        }else {
3989 >            SWIG_exception(SWIG_TypeError, "string expected");
3990 >        }
3991      }
3992      {
3993          try {
3994 <            result = (PyObject *)BossTask_progDict((BossTask const *)arg1,*arg2);
3994 >            result = ((BossTask const *)arg1)->queryProgram((BossJob const *)arg2,(std::string const &)*arg3);
3995              
3996 +        }catch (const BossSchedFailure & e) {
3997 +            PyErr_SetString ( SchedulerError, e.what() );
3998 +            return NULL;
3999          }catch (const std::exception& e) {
4000 <            SWIG_exception(SWIG_RuntimeError, e.what());
4000 >            PyErr_SetString ( BossError, e.what() );
4001 >            return NULL;
4002          }
4003      }
4004 <    resultobj = result;
4004 >    {
4005 >        BossProgram * resultptr;
4006 >        resultptr = new BossProgram((BossProgram &) result);
4007 >        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossProgram, 1);
4008 >    }
4009      return resultobj;
4010      fail:
4011      return NULL;
4012   }
4013  
4014  
4015 < static PyObject *_wrap_BossTask_jobPrograms(PyObject *self, PyObject *args) {
4015 > static PyObject *_wrap_BossTask_queryProgramExec(PyObject *self, PyObject *args) {
4016      PyObject *resultobj;
4017      BossTask *arg1 = (BossTask *) 0 ;
4018 <    std::string *arg2 = 0 ;
4019 <    PyObject *result;
4020 <    std::string temp2 ;
4018 >    BossJob *arg2 = (BossJob *) 0 ;
4019 >    std::string *arg3 = 0 ;
4020 >    BossProgramExec result;
4021 >    std::string temp3 ;
4022      PyObject * obj0 = 0 ;
4023      PyObject * obj1 = 0 ;
4024 +    PyObject * obj2 = 0 ;
4025      
4026 <    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_jobPrograms",&obj0,&obj1)) goto fail;
4026 >    if(!PyArg_ParseTuple(args,(char *)"OOO:BossTask_queryProgramExec",&obj0,&obj1,&obj2)) goto fail;
4027      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4028 +    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_BossJob,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4029      {
4030 <        if (PyString_Check(obj1)) {
4031 <            temp2 = std::string(PyString_AsString(obj1));
4032 <            arg2 = &temp2;
4030 >        if (PyString_Check(obj2)) {
4031 >            temp3 = std::string(PyString_AsString(obj2));
4032 >            arg3 = &temp3;
4033          }else {
4034              SWIG_exception(SWIG_TypeError, "string expected");
4035          }
4036      }
4037      {
4038          try {
4039 <            result = (PyObject *)BossTask_jobPrograms((BossTask const *)arg1,(std::string const &)*arg2);
4039 >            result = ((BossTask const *)arg1)->queryProgramExec((BossJob const *)arg2,(std::string const &)*arg3);
4040              
4041 +        }catch (const BossSchedFailure & e) {
4042 +            PyErr_SetString ( SchedulerError, e.what() );
4043 +            return NULL;
4044          }catch (const std::exception& e) {
4045 <            SWIG_exception(SWIG_RuntimeError, e.what());
4045 >            PyErr_SetString ( BossError, e.what() );
4046 >            return NULL;
4047          }
4048      }
4049 <    resultobj = result;
4049 >    {
4050 >        BossProgramExec * resultptr;
4051 >        resultptr = new BossProgramExec((BossProgramExec &) result);
4052 >        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossProgramExec, 1);
4053 >    }
4054      return resultobj;
4055      fail:
4056      return NULL;
# Line 3559 | Line 4069 | static PyObject *_wrap_new_BossTask__SWI
4069          try {
4070              result = (BossTask *)new BossTask(arg1);
4071              
4072 +        }catch (const BossSchedFailure & e) {
4073 +            PyErr_SetString ( SchedulerError, e.what() );
4074 +            return NULL;
4075          }catch (const std::exception& e) {
4076 <            SWIG_exception(SWIG_RuntimeError, e.what());
4076 >            PyErr_SetString ( BossError, e.what() );
4077 >            return NULL;
4078          }
4079      }
4080      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossTask, 1);
# Line 3593 | Line 4107 | static PyObject *_wrap_new_BossTask__SWI
4107          try {
4108              result = (BossTask *)new BossTask(arg1,(std::string const &)*arg2);
4109              
4110 +        }catch (const BossSchedFailure & e) {
4111 +            PyErr_SetString ( SchedulerError, e.what() );
4112 +            return NULL;
4113          }catch (const std::exception& e) {
4114 <            SWIG_exception(SWIG_RuntimeError, e.what());
4114 >            PyErr_SetString ( BossError, e.what() );
4115 >            return NULL;
4116          }
4117      }
4118      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossTask, 1);
# Line 3615 | Line 4133 | static PyObject *_wrap_delete_BossTask(P
4133          try {
4134              delete arg1;
4135              
4136 +        }catch (const BossSchedFailure & e) {
4137 +            PyErr_SetString ( SchedulerError, e.what() );
4138 +            return NULL;
4139          }catch (const std::exception& e) {
4140 <            SWIG_exception(SWIG_RuntimeError, e.what());
4140 >            PyErr_SetString ( BossError, e.what() );
4141 >            return NULL;
4142          }
4143      }
4144      Py_INCREF(Py_None); resultobj = Py_None;
# Line 3641 | Line 4163 | static PyObject *_wrap_new_BossTask__SWI
4163          try {
4164              result = (BossTask *)new BossTask((BossTask const &)*arg1);
4165              
4166 +        }catch (const BossSchedFailure & e) {
4167 +            PyErr_SetString ( SchedulerError, e.what() );
4168 +            return NULL;
4169          }catch (const std::exception& e) {
4170 <            SWIG_exception(SWIG_RuntimeError, e.what());
4170 >            PyErr_SetString ( BossError, e.what() );
4171 >            return NULL;
4172          }
4173      }
4174      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossTask, 1);
# Line 3732 | Line 4258 | static PyObject *_wrap_BossTask_id(PyObj
4258                  result = (std::string *) &_result_ref;
4259              }
4260              
4261 +        }catch (const BossSchedFailure & e) {
4262 +            PyErr_SetString ( SchedulerError, e.what() );
4263 +            return NULL;
4264          }catch (const std::exception& e) {
4265 <            SWIG_exception(SWIG_RuntimeError, e.what());
4265 >            PyErr_SetString ( BossError, e.what() );
4266 >            return NULL;
4267          }
4268      }
4269      {
# Line 3760 | Line 4290 | static PyObject *_wrap_BossTask_name(PyO
4290                  result = (std::string *) &_result_ref;
4291              }
4292              
4293 +        }catch (const BossSchedFailure & e) {
4294 +            PyErr_SetString ( SchedulerError, e.what() );
4295 +            return NULL;
4296          }catch (const std::exception& e) {
4297 <            SWIG_exception(SWIG_RuntimeError, e.what());
4297 >            PyErr_SetString ( BossError, e.what() );
4298 >            return NULL;
4299          }
4300      }
4301      {
# Line 3773 | Line 4307 | static PyObject *_wrap_BossTask_name(PyO
4307   }
4308  
4309  
4310 < static PyObject *_wrap_BossTask_taskMap(PyObject *self, PyObject *args) {
4310 > static PyObject *_wrap_BossTask_chain(PyObject *self, PyObject *args) {
4311      PyObject *resultobj;
4312      BossTask *arg1 = (BossTask *) 0 ;
4313 <    std::map<std::string,std::string > result;
4313 >    std::string *arg2 = 0 ;
4314 >    BossChain result;
4315 >    std::string temp2 ;
4316      PyObject * obj0 = 0 ;
4317 +    PyObject * obj1 = 0 ;
4318      
4319 <    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_taskMap",&obj0)) goto fail;
4319 >    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_chain",&obj0,&obj1)) goto fail;
4320      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4321      {
4322 <        try {
4323 <            result = ((BossTask const *)arg1)->taskMap();
4324 <            
4325 <        }catch (const std::exception& e) {
4326 <            SWIG_exception(SWIG_RuntimeError, e.what());
4322 >        if (PyString_Check(obj1)) {
4323 >            temp2 = std::string(PyString_AsString(obj1));
4324 >            arg2 = &temp2;
4325 >        }else {
4326 >            SWIG_exception(SWIG_TypeError, "string expected");
4327          }
4328      }
4329      {
3793        resultobj = PyDict_New();
3794        for (std::map<std::string,std::string >::iterator i=(&result)->begin(); i!=(&result)->end(); ++i) {
3795            PyDict_SetItem(resultobj,
3796            SwigString_FromString(i->first),
3797            SwigString_FromString(i->second));
3798        }
3799    }
3800    return resultobj;
3801    fail:
3802    return NULL;
3803 }
3804
3805
3806 static PyObject *_wrap_BossTask_job_begin(PyObject *self, PyObject *args) {
3807    PyObject *resultobj;
3808    BossTask *arg1 = (BossTask *) 0 ;
3809    BossTask::job_iterator result;
3810    PyObject * obj0 = 0 ;
3811    
3812    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_job_begin",&obj0)) goto fail;
3813    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
3814    {
4330          try {
4331 <            result = ((BossTask const *)arg1)->job_begin();
4331 >            result = ((BossTask const *)arg1)->chain((std::string const &)*arg2);
4332              
4333 +        }catch (const BossSchedFailure & e) {
4334 +            PyErr_SetString ( SchedulerError, e.what() );
4335 +            return NULL;
4336          }catch (const std::exception& e) {
4337 <            SWIG_exception(SWIG_RuntimeError, e.what());
4337 >            PyErr_SetString ( BossError, e.what() );
4338 >            return NULL;
4339          }
4340      }
4341      {
4342 <        BossTask::job_iterator * resultptr;
4343 <        resultptr = new BossTask::job_iterator((BossTask::job_iterator &) result);
4344 <        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossTask__job_iterator, 1);
4342 >        BossChain * resultptr;
4343 >        resultptr = new BossChain((BossChain &) result);
4344 >        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossChain, 1);
4345      }
4346      return resultobj;
4347      fail:
# Line 3830 | Line 4349 | static PyObject *_wrap_BossTask_job_begi
4349   }
4350  
4351  
4352 < static PyObject *_wrap_BossTask_job_end(PyObject *self, PyObject *args) {
4352 > static PyObject *_wrap_BossTask_taskMap(PyObject *self, PyObject *args) {
4353      PyObject *resultobj;
4354      BossTask *arg1 = (BossTask *) 0 ;
4355 <    BossTask::job_iterator result;
4355 >    std::map<std::string,std::string > result;
4356      PyObject * obj0 = 0 ;
4357      
4358 <    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_job_end",&obj0)) goto fail;
4358 >    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_taskMap",&obj0)) goto fail;
4359      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4360      {
4361          try {
4362 <            result = ((BossTask const *)arg1)->job_end();
4362 >            result = ((BossTask const *)arg1)->taskMap();
4363              
4364 +        }catch (const BossSchedFailure & e) {
4365 +            PyErr_SetString ( SchedulerError, e.what() );
4366 +            return NULL;
4367          }catch (const std::exception& e) {
4368 <            SWIG_exception(SWIG_RuntimeError, e.what());
4368 >            PyErr_SetString ( BossError, e.what() );
4369 >            return NULL;
4370          }
4371      }
4372      {
4373 <        BossTask::job_iterator * resultptr;
4374 <        resultptr = new BossTask::job_iterator((BossTask::job_iterator &) result);
4375 <        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_BossTask__job_iterator, 1);
4373 >        resultobj = PyDict_New();
4374 >        for (std::map<std::string,std::string >::iterator i=(&result)->begin(); i!=(&result)->end(); ++i) {
4375 >            PyDict_SetItem(resultobj,
4376 >            SwigString_FromString(i->first),
4377 >            SwigString_FromString(i->second));
4378 >        }
4379      }
4380      return resultobj;
4381      fail:
# Line 3869 | Line 4395 | static PyObject *_wrap_BossTask_jobsMap(
4395          try {
4396              result = ((BossTask const *)arg1)->jobsMap();
4397              
4398 +        }catch (const BossSchedFailure & e) {
4399 +            PyErr_SetString ( SchedulerError, e.what() );
4400 +            return NULL;
4401          }catch (const std::exception& e) {
4402 <            SWIG_exception(SWIG_RuntimeError, e.what());
4402 >            PyErr_SetString ( BossError, e.what() );
4403 >            return NULL;
4404          }
4405      }
4406      {
# Line 3907 | Line 4437 | static PyObject *_wrap_BossTask_jobMap__
4437          try {
4438              result = ((BossTask const *)arg1)->jobMap(arg2,*arg3);
4439              
4440 +        }catch (const BossSchedFailure & e) {
4441 +            PyErr_SetString ( SchedulerError, e.what() );
4442 +            return NULL;
4443          }catch (const std::exception& e) {
4444 <            SWIG_exception(SWIG_RuntimeError, e.what());
4444 >            PyErr_SetString ( BossError, e.what() );
4445 >            return NULL;
4446          }
4447      }
4448      {
# Line 3936 | Line 4470 | static PyObject *_wrap_BossTask_jobMap__
4470          try {
4471              result = ((BossTask const *)arg1)->jobMap(arg2);
4472              
4473 +        }catch (const BossSchedFailure & e) {
4474 +            PyErr_SetString ( SchedulerError, e.what() );
4475 +            return NULL;
4476          }catch (const std::exception& e) {
4477 <            SWIG_exception(SWIG_RuntimeError, e.what());
4477 >            PyErr_SetString ( BossError, e.what() );
4478 >            return NULL;
4479          }
4480      }
4481      {
# Line 4041 | Line 4579 | static PyObject *_wrap_BossTask_programs
4579          try {
4580              result = ((BossTask const *)arg1)->programsMap((BossJob const *)arg2);
4581              
4582 +        }catch (const BossSchedFailure & e) {
4583 +            PyErr_SetString ( SchedulerError, e.what() );
4584 +            return NULL;
4585          }catch (const std::exception& e) {
4586 <            SWIG_exception(SWIG_RuntimeError, e.what());
4586 >            PyErr_SetString ( BossError, e.what() );
4587 >            return NULL;
4588          }
4589      }
4590      {
# Line 4056 | Line 4598 | static PyObject *_wrap_BossTask_programs
4598   }
4599  
4600  
4059 static PyObject *_wrap_BossTask_queryJobPrograms(PyObject *self, PyObject *args) {
4060    PyObject *resultobj;
4061    BossTask *arg1 = (BossTask *) 0 ;
4062    BossJob *arg2 = (BossJob *) 0 ;
4063    SwigValueWrapper< std::vector<std::pair<BossProgram,BossProgramExec > > > result;
4064    PyObject * obj0 = 0 ;
4065    PyObject * obj1 = 0 ;
4066    
4067    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_queryJobPrograms",&obj0,&obj1)) goto fail;
4068    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4069    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_BossJob,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4070    {
4071        try {
4072            result = ((BossTask const *)arg1)->queryJobPrograms((BossJob const *)arg2);
4073            
4074        }catch (const std::exception& e) {
4075            SWIG_exception(SWIG_RuntimeError, e.what());
4076        }
4077    }
4078    {
4079        std::vector<std::pair<BossProgram,BossProgramExec > > * resultptr;
4080        resultptr = new std::vector<std::pair<BossProgram,BossProgramExec > >((std::vector<std::pair<BossProgram,BossProgramExec > > &) result);
4081        resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t, 1);
4082    }
4083    return resultobj;
4084    fail:
4085    return NULL;
4086 }
4087
4088
4601   static PyObject *_wrap_BossTask_declare__SWIG_0(PyObject *self, PyObject *args) {
4602      PyObject *resultobj;
4603      BossTask *arg1 = (BossTask *) 0 ;
# Line 4122 | Line 4634 | static PyObject *_wrap_BossTask_declare_
4634          try {
4635              (arg1)->declare((std::string const &)*arg2,(std::string const &)*arg3);
4636              
4637 +        }catch (const BossSchedFailure & e) {
4638 +            PyErr_SetString ( SchedulerError, e.what() );
4639 +            return NULL;
4640          }catch (const std::exception& e) {
4641 <            SWIG_exception(SWIG_RuntimeError, e.what());
4641 >            PyErr_SetString ( BossError, e.what() );
4642 >            return NULL;
4643          }
4644      }
4645      Py_INCREF(Py_None); resultobj = Py_None;
# Line 4161 | Line 4677 | static PyObject *_wrap_BossTask_declare_
4677          try {
4678              (arg1)->declare(arg2,(std::string const &)*arg3);
4679              
4680 +        }catch (const BossSchedFailure & e) {
4681 +            PyErr_SetString ( SchedulerError, e.what() );
4682 +            return NULL;
4683          }catch (const std::exception& e) {
4684 <            SWIG_exception(SWIG_RuntimeError, e.what());
4684 >            PyErr_SetString ( BossError, e.what() );
4685 >            return NULL;
4686          }
4687      }
4688      Py_INCREF(Py_None); resultobj = Py_None;
# Line 4252 | Line 4772 | static PyObject *_wrap_BossTask_declare(
4772   static PyObject *_wrap_BossTask_remove(PyObject *self, PyObject *args) {
4773      PyObject *resultobj;
4774      BossTask *arg1 = (BossTask *) 0 ;
4775 +    bool arg2 = (bool) false ;
4776      PyObject * obj0 = 0 ;
4777 +    PyObject * obj1 = 0 ;
4778      
4779 <    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_remove",&obj0)) goto fail;
4779 >    if(!PyArg_ParseTuple(args,(char *)"O|O:BossTask_remove",&obj0,&obj1)) goto fail;
4780      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4781 +    if (obj1) {
4782 +        arg2 = PyInt_AsLong(obj1) ? true : false;
4783 +        if (PyErr_Occurred()) SWIG_fail;
4784 +    }
4785      {
4786          try {
4787 <            (arg1)->remove();
4787 >            (arg1)->remove(arg2);
4788              
4789 +        }catch (const BossSchedFailure & e) {
4790 +            PyErr_SetString ( SchedulerError, e.what() );
4791 +            return NULL;
4792          }catch (const std::exception& e) {
4793 <            SWIG_exception(SWIG_RuntimeError, e.what());
4793 >            PyErr_SetString ( BossError, e.what() );
4794 >            return NULL;
4795          }
4796      }
4797      Py_INCREF(Py_None); resultobj = Py_None;
# Line 4276 | Line 4806 | static PyObject *_wrap_BossTask_archive(
4806      BossTask *arg1 = (BossTask *) 0 ;
4807      std::string const &arg2_defvalue = "all" ;
4808      std::string *arg2 = (std::string *) &arg2_defvalue ;
4809 +    bool arg3 = (bool) false ;
4810      std::string temp2 ;
4811      PyObject * obj0 = 0 ;
4812      PyObject * obj1 = 0 ;
4813 +    PyObject * obj2 = 0 ;
4814      
4815 <    if(!PyArg_ParseTuple(args,(char *)"O|O:BossTask_archive",&obj0,&obj1)) goto fail;
4815 >    if(!PyArg_ParseTuple(args,(char *)"O|OO:BossTask_archive",&obj0,&obj1,&obj2)) goto fail;
4816      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4817      if (obj1) {
4818          {
# Line 4292 | Line 4824 | static PyObject *_wrap_BossTask_archive(
4824              }
4825          }
4826      }
4827 +    if (obj2) {
4828 +        arg3 = PyInt_AsLong(obj2) ? true : false;
4829 +        if (PyErr_Occurred()) SWIG_fail;
4830 +    }
4831      {
4832          try {
4833 <            (arg1)->archive((std::string const &)*arg2);
4833 >            (arg1)->archive((std::string const &)*arg2,arg3);
4834              
4835 +        }catch (const BossSchedFailure & e) {
4836 +            PyErr_SetString ( SchedulerError, e.what() );
4837 +            return NULL;
4838          }catch (const std::exception& e) {
4839 <            SWIG_exception(SWIG_RuntimeError, e.what());
4839 >            PyErr_SetString ( BossError, e.what() );
4840 >            return NULL;
4841          }
4842      }
4843      Py_INCREF(Py_None); resultobj = Py_None;
# Line 4320 | Line 4860 | static PyObject *_wrap_BossTask_submit(P
4860      std::string *arg5 = (std::string *) &arg5_defvalue ;
4861      std::string const &arg6_defvalue = "" ;
4862      std::string *arg6 = (std::string *) &arg6_defvalue ;
4863 <    bool arg7 = (bool) false ;
4863 >    unsigned int arg7 = (unsigned int) 0 ;
4864 >    bool arg8 = (bool) false ;
4865      int result;
4866      std::string temp2 ;
4867      std::string temp3 ;
# Line 4334 | Line 4875 | static PyObject *_wrap_BossTask_submit(P
4875      PyObject * obj4 = 0 ;
4876      PyObject * obj5 = 0 ;
4877      PyObject * obj6 = 0 ;
4878 +    PyObject * obj7 = 0 ;
4879      
4880 <    if(!PyArg_ParseTuple(args,(char *)"O|OOOOOO:BossTask_submit",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) goto fail;
4880 >    if(!PyArg_ParseTuple(args,(char *)"O|OOOOOOO:BossTask_submit",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) goto fail;
4881      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
4882      if (obj1) {
4883          {
# Line 4388 | Line 4930 | static PyObject *_wrap_BossTask_submit(P
4930          }
4931      }
4932      if (obj6) {
4933 <        arg7 = PyInt_AsLong(obj6) ? true : false;
4933 >        arg7 = (unsigned int) PyInt_AsLong(obj6);
4934 >        if (PyErr_Occurred()) SWIG_fail;
4935 >    }
4936 >    if (obj7) {
4937 >        arg8 = PyInt_AsLong(obj7) ? true : false;
4938          if (PyErr_Occurred()) SWIG_fail;
4939      }
4940      {
4941          try {
4942 <            result = (int)(arg1)->submit((std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,(std::string const &)*arg6,arg7);
4942 >            result = (int)(arg1)->submit((std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5,(std::string const &)*arg6,arg7,arg8);
4943              
4944 +        }catch (const BossSchedFailure & e) {
4945 +            PyErr_SetString ( SchedulerError, e.what() );
4946 +            return NULL;
4947          }catch (const std::exception& e) {
4948 <            SWIG_exception(SWIG_RuntimeError, e.what());
4948 >            PyErr_SetString ( BossError, e.what() );
4949 >            return NULL;
4950          }
4951      }
4952      resultobj = PyInt_FromLong((long)result);
# Line 4435 | Line 4985 | static PyObject *_wrap_BossTask_reSubmit
4985          try {
4986              result = (int)(arg1)->reSubmit((std::string const &)*arg2,arg3);
4987              
4988 +        }catch (const BossSchedFailure & e) {
4989 +            PyErr_SetString ( SchedulerError, e.what() );
4990 +            return NULL;
4991          }catch (const std::exception& e) {
4992 <            SWIG_exception(SWIG_RuntimeError, e.what());
4992 >            PyErr_SetString ( BossError, e.what() );
4993 >            return NULL;
4994          }
4995      }
4996      resultobj = PyInt_FromLong((long)result);
# Line 4450 | Line 5004 | static PyObject *_wrap_BossTask_kill(PyO
5004      PyObject *resultobj;
5005      BossTask *arg1 = (BossTask *) 0 ;
5006      std::string *arg2 = 0 ;
5007 <    bool arg3 = (bool) false ;
5007 >    unsigned int arg3 = (unsigned int) 0 ;
5008 >    bool arg4 = (bool) false ;
5009      int result;
5010      std::string temp2 ;
5011      PyObject * obj0 = 0 ;
5012      PyObject * obj1 = 0 ;
5013      PyObject * obj2 = 0 ;
5014 +    PyObject * obj3 = 0 ;
5015      
5016 <    if(!PyArg_ParseTuple(args,(char *)"OO|O:BossTask_kill",&obj0,&obj1,&obj2)) goto fail;
5016 >    if(!PyArg_ParseTuple(args,(char *)"OO|OO:BossTask_kill",&obj0,&obj1,&obj2,&obj3)) goto fail;
5017      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5018      {
5019          if (PyString_Check(obj1)) {
# Line 4468 | Line 5024 | static PyObject *_wrap_BossTask_kill(PyO
5024          }
5025      }
5026      if (obj2) {
5027 <        arg3 = PyInt_AsLong(obj2) ? true : false;
5027 >        arg3 = (unsigned int) PyInt_AsLong(obj2);
5028 >        if (PyErr_Occurred()) SWIG_fail;
5029 >    }
5030 >    if (obj3) {
5031 >        arg4 = PyInt_AsLong(obj3) ? true : false;
5032          if (PyErr_Occurred()) SWIG_fail;
5033      }
5034      {
5035          try {
5036 <            result = (int)(arg1)->kill((std::string const &)*arg2,arg3);
5036 >            result = (int)(arg1)->kill((std::string const &)*arg2,arg3,arg4);
5037              
5038 +        }catch (const BossSchedFailure & e) {
5039 +            PyErr_SetString ( SchedulerError, e.what() );
5040 +            return NULL;
5041          }catch (const std::exception& e) {
5042 <            SWIG_exception(SWIG_RuntimeError, e.what());
5042 >            PyErr_SetString ( BossError, e.what() );
5043 >            return NULL;
5044          }
5045      }
5046      resultobj = PyInt_FromLong((long)result);
# Line 4493 | Line 5057 | static PyObject *_wrap_BossTask_getOutpu
5057      std::string *arg2 = (std::string *) &arg2_defvalue ;
5058      std::string const &arg3_defvalue = "" ;
5059      std::string *arg3 = (std::string *) &arg3_defvalue ;
5060 <    bool arg4 = (bool) false ;
5060 >    unsigned int arg4 = (unsigned int) 0 ;
5061      bool arg5 = (bool) false ;
5062 +    bool arg6 = (bool) false ;
5063      int result;
5064      std::string temp2 ;
5065      std::string temp3 ;
# Line 4503 | Line 5068 | static PyObject *_wrap_BossTask_getOutpu
5068      PyObject * obj2 = 0 ;
5069      PyObject * obj3 = 0 ;
5070      PyObject * obj4 = 0 ;
5071 +    PyObject * obj5 = 0 ;
5072      
5073 <    if(!PyArg_ParseTuple(args,(char *)"O|OOOO:BossTask_getOutput",&obj0,&obj1,&obj2,&obj3,&obj4)) goto fail;
5073 >    if(!PyArg_ParseTuple(args,(char *)"O|OOOOO:BossTask_getOutput",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) goto fail;
5074      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5075      if (obj1) {
5076          {
# Line 4527 | Line 5093 | static PyObject *_wrap_BossTask_getOutpu
5093          }
5094      }
5095      if (obj3) {
5096 <        arg4 = PyInt_AsLong(obj3) ? true : false;
5096 >        arg4 = (unsigned int) PyInt_AsLong(obj3);
5097          if (PyErr_Occurred()) SWIG_fail;
5098      }
5099      if (obj4) {
5100          arg5 = PyInt_AsLong(obj4) ? true : false;
5101          if (PyErr_Occurred()) SWIG_fail;
5102      }
5103 +    if (obj5) {
5104 +        arg6 = PyInt_AsLong(obj5) ? true : false;
5105 +        if (PyErr_Occurred()) SWIG_fail;
5106 +    }
5107      {
5108          try {
5109 <            result = (int)(arg1)->getOutput((std::string const &)*arg2,(std::string const &)*arg3,arg4,arg5);
5109 >            result = (int)(arg1)->getOutput((std::string const &)*arg2,(std::string const &)*arg3,arg4,arg5,arg6);
5110              
5111 +        }catch (const BossSchedFailure & e) {
5112 +            PyErr_SetString ( SchedulerError, e.what() );
5113 +            return NULL;
5114          }catch (const std::exception& e) {
5115 <            SWIG_exception(SWIG_RuntimeError, e.what());
5115 >            PyErr_SetString ( BossError, e.what() );
5116 >            return NULL;
5117          }
5118      }
5119      resultobj = PyInt_FromLong((long)result);
# Line 4549 | Line 5123 | static PyObject *_wrap_BossTask_getOutpu
5123   }
5124  
5125  
5126 < static PyObject *_wrap_BossTask_getAllOutput(PyObject *self, PyObject *args) {
5126 > static PyObject *_wrap_BossTask_loadByName(PyObject *self, PyObject *args) {
5127      PyObject *resultobj;
5128      BossTask *arg1 = (BossTask *) 0 ;
5129 <    std::string const &arg2_defvalue = "" ;
4556 <    std::string *arg2 = (std::string *) &arg2_defvalue ;
4557 <    bool arg3 = (bool) false ;
4558 <    bool arg4 = (bool) false ;
5129 >    std::string *arg2 = 0 ;
5130      int result;
5131      std::string temp2 ;
5132      PyObject * obj0 = 0 ;
5133      PyObject * obj1 = 0 ;
5134 +    
5135 +    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_loadByName",&obj0,&obj1)) goto fail;
5136 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5137 +    {
5138 +        if (PyString_Check(obj1)) {
5139 +            temp2 = std::string(PyString_AsString(obj1));
5140 +            arg2 = &temp2;
5141 +        }else {
5142 +            SWIG_exception(SWIG_TypeError, "string expected");
5143 +        }
5144 +    }
5145 +    {
5146 +        try {
5147 +            result = (int)(arg1)->loadByName((std::string const &)*arg2);
5148 +            
5149 +        }catch (const BossSchedFailure & e) {
5150 +            PyErr_SetString ( SchedulerError, e.what() );
5151 +            return NULL;
5152 +        }catch (const std::exception& e) {
5153 +            PyErr_SetString ( BossError, e.what() );
5154 +            return NULL;
5155 +        }
5156 +    }
5157 +    resultobj = PyInt_FromLong((long)result);
5158 +    return resultobj;
5159 +    fail:
5160 +    return NULL;
5161 + }
5162 +
5163 +
5164 + static PyObject *_wrap_BossTask_load(PyObject *self, PyObject *args) {
5165 +    PyObject *resultobj;
5166 +    BossTask *arg1 = (BossTask *) 0 ;
5167 +    int arg2 = (int) SCHEDULED ;
5168 +    std::string const &arg3_defvalue = "all" ;
5169 +    std::string *arg3 = (std::string *) &arg3_defvalue ;
5170 +    std::string const &arg4_defvalue = "" ;
5171 +    std::string *arg4 = (std::string *) &arg4_defvalue ;
5172 +    std::string arg5 = (std::string) "" ;
5173 +    std::string arg6 = (std::string) "" ;
5174 +    std::string arg7 = (std::string) "" ;
5175 +    std::string arg8 = (std::string) "" ;
5176 +    int result;
5177 +    std::string temp3 ;
5178 +    std::string temp4 ;
5179 +    PyObject * obj0 = 0 ;
5180      PyObject * obj2 = 0 ;
5181      PyObject * obj3 = 0 ;
5182 +    PyObject * obj4 = 0 ;
5183 +    PyObject * obj5 = 0 ;
5184 +    PyObject * obj6 = 0 ;
5185 +    PyObject * obj7 = 0 ;
5186      
5187 <    if(!PyArg_ParseTuple(args,(char *)"O|OOO:BossTask_getAllOutput",&obj0,&obj1,&obj2,&obj3)) goto fail;
5187 >    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOO:BossTask_load",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) goto fail;
5188      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5189 <    if (obj1) {
5189 >    if (obj2) {
5190          {
5191 <            if (PyString_Check(obj1)) {
5192 <                temp2 = std::string(PyString_AsString(obj1));
5193 <                arg2 = &temp2;
5191 >            if (PyString_Check(obj2)) {
5192 >                temp3 = std::string(PyString_AsString(obj2));
5193 >                arg3 = &temp3;
5194              }else {
5195                  SWIG_exception(SWIG_TypeError, "string expected");
5196              }
5197          }
5198      }
4578    if (obj2) {
4579        arg3 = PyInt_AsLong(obj2) ? true : false;
4580        if (PyErr_Occurred()) SWIG_fail;
4581    }
5199      if (obj3) {
5200 <        arg4 = PyInt_AsLong(obj3) ? true : false;
5201 <        if (PyErr_Occurred()) SWIG_fail;
5200 >        {
5201 >            if (PyString_Check(obj3)) {
5202 >                temp4 = std::string(PyString_AsString(obj3));
5203 >                arg4 = &temp4;
5204 >            }else {
5205 >                SWIG_exception(SWIG_TypeError, "string expected");
5206 >            }
5207 >        }
5208 >    }
5209 >    if (obj4) {
5210 >        {
5211 >            if (PyString_Check(obj4))
5212 >            arg5 = std::string(PyString_AsString(obj4));
5213 >            else
5214 >            SWIG_exception(SWIG_TypeError, "string expected");
5215 >        }
5216 >    }
5217 >    if (obj5) {
5218 >        {
5219 >            if (PyString_Check(obj5))
5220 >            arg6 = std::string(PyString_AsString(obj5));
5221 >            else
5222 >            SWIG_exception(SWIG_TypeError, "string expected");
5223 >        }
5224 >    }
5225 >    if (obj6) {
5226 >        {
5227 >            if (PyString_Check(obj6))
5228 >            arg7 = std::string(PyString_AsString(obj6));
5229 >            else
5230 >            SWIG_exception(SWIG_TypeError, "string expected");
5231 >        }
5232 >    }
5233 >    if (obj7) {
5234 >        {
5235 >            if (PyString_Check(obj7))
5236 >            arg8 = std::string(PyString_AsString(obj7));
5237 >            else
5238 >            SWIG_exception(SWIG_TypeError, "string expected");
5239 >        }
5240      }
5241      {
5242          try {
5243 <            result = (int)(arg1)->getAllOutput((std::string const &)*arg2,arg3,arg4);
5243 >            result = (int)(arg1)->load(arg2,(std::string const &)*arg3,(std::string const &)*arg4,arg5,arg6,arg7,arg8);
5244              
5245 +        }catch (const BossSchedFailure & e) {
5246 +            PyErr_SetString ( SchedulerError, e.what() );
5247 +            return NULL;
5248          }catch (const std::exception& e) {
5249 <            SWIG_exception(SWIG_RuntimeError, e.what());
5249 >            PyErr_SetString ( BossError, e.what() );
5250 >            return NULL;
5251          }
5252      }
5253      resultobj = PyInt_FromLong((long)result);
# Line 4598 | Line 5257 | static PyObject *_wrap_BossTask_getAllOu
5257   }
5258  
5259  
5260 < static PyObject *_wrap_BossTask_load(PyObject *self, PyObject *args) {
5260 > static PyObject *_wrap_BossTask_schedulerQuery(PyObject *self, PyObject *args) {
5261      PyObject *resultobj;
5262      BossTask *arg1 = (BossTask *) 0 ;
5263      int arg2 = (int) SCHEDULED ;
# Line 4610 | Line 5269 | static PyObject *_wrap_BossTask_load(PyO
5269      std::string arg6 = (std::string) "" ;
5270      std::string arg7 = (std::string) "" ;
5271      std::string arg8 = (std::string) "" ;
5272 +    unsigned int arg9 = (unsigned int) 0 ;
5273      int result;
5274      std::string temp3 ;
5275      std::string temp4 ;
# Line 4620 | Line 5280 | static PyObject *_wrap_BossTask_load(PyO
5280      PyObject * obj5 = 0 ;
5281      PyObject * obj6 = 0 ;
5282      PyObject * obj7 = 0 ;
5283 +    PyObject * obj8 = 0 ;
5284      
5285 <    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOO:BossTask_load",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) goto fail;
5285 >    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOOO:BossTask_schedulerQuery",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) goto fail;
5286      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5287      if (obj2) {
5288          {
# Line 4675 | Line 5336 | static PyObject *_wrap_BossTask_load(PyO
5336              SWIG_exception(SWIG_TypeError, "string expected");
5337          }
5338      }
5339 +    if (obj8) {
5340 +        arg9 = (unsigned int) PyInt_AsLong(obj8);
5341 +        if (PyErr_Occurred()) SWIG_fail;
5342 +    }
5343      {
5344          try {
5345 <            result = (int)(arg1)->load(arg2,(std::string const &)*arg3,(std::string const &)*arg4,arg5,arg6,arg7,arg8);
5345 >            result = (int)(arg1)->schedulerQuery(arg2,(std::string const &)*arg3,(std::string const &)*arg4,arg5,arg6,arg7,arg8,arg9);
5346              
5347 +        }catch (const BossSchedFailure & e) {
5348 +            PyErr_SetString ( SchedulerError, e.what() );
5349 +            return NULL;
5350          }catch (const std::exception& e) {
5351 <            SWIG_exception(SWIG_RuntimeError, e.what());
5351 >            PyErr_SetString ( BossError, e.what() );
5352 >            return NULL;
5353          }
5354      }
5355      resultobj = PyInt_FromLong((long)result);
# Line 4702 | Line 5371 | static PyObject *_wrap_BossTask_query(Py
5371      std::string arg6 = (std::string) "" ;
5372      std::string arg7 = (std::string) "" ;
5373      std::string arg8 = (std::string) "" ;
5374 <    bool arg9 = (bool) false ;
5374 >    unsigned int arg9 = (unsigned int) 0 ;
5375 >    bool arg10 = (bool) false ;
5376      int result;
5377      std::string temp3 ;
5378      std::string temp4 ;
# Line 4714 | Line 5384 | static PyObject *_wrap_BossTask_query(Py
5384      PyObject * obj6 = 0 ;
5385      PyObject * obj7 = 0 ;
5386      PyObject * obj8 = 0 ;
5387 +    PyObject * obj9 = 0 ;
5388      
5389 <    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOOO:BossTask_query",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) goto fail;
5389 >    if(!PyArg_ParseTuple(args,(char *)"O|iOOOOOOOO:BossTask_query",&obj0,&arg2,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9)) goto fail;
5390      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5391      if (obj2) {
5392          {
# Line 4770 | Line 5441 | static PyObject *_wrap_BossTask_query(Py
5441          }
5442      }
5443      if (obj8) {
5444 <        arg9 = PyInt_AsLong(obj8) ? true : false;
5444 >        arg9 = (unsigned int) PyInt_AsLong(obj8);
5445 >        if (PyErr_Occurred()) SWIG_fail;
5446 >    }
5447 >    if (obj9) {
5448 >        arg10 = PyInt_AsLong(obj9) ? true : false;
5449          if (PyErr_Occurred()) SWIG_fail;
5450      }
5451      {
5452          try {
5453 <            result = (int)(arg1)->query(arg2,(std::string const &)*arg3,(std::string const &)*arg4,arg5,arg6,arg7,arg8,arg9);
5453 >            result = (int)(arg1)->query(arg2,(std::string const &)*arg3,(std::string const &)*arg4,arg5,arg6,arg7,arg8,arg9,arg10);
5454              
5455 +        }catch (const BossSchedFailure & e) {
5456 +            PyErr_SetString ( SchedulerError, e.what() );
5457 +            return NULL;
5458          }catch (const std::exception& e) {
5459 <            SWIG_exception(SWIG_RuntimeError, e.what());
5459 >            PyErr_SetString ( BossError, e.what() );
5460 >            return NULL;
5461          }
5462      }
5463      resultobj = PyInt_FromLong((long)result);
# Line 4836 | Line 5515 | static PyObject *_wrap_BossTask_query_ou
5515          try {
5516              ((BossTask const *)arg1)->query_out(*arg2,(jobStates const &)*arg3,(printOption const &)*arg4,arg5);
5517              
5518 +        }catch (const BossSchedFailure & e) {
5519 +            PyErr_SetString ( SchedulerError, e.what() );
5520 +            return NULL;
5521          }catch (const std::exception& e) {
5522 <            SWIG_exception(SWIG_RuntimeError, e.what());
5522 >            PyErr_SetString ( BossError, e.what() );
5523 >            return NULL;
5524          }
5525      }
5526      Py_INCREF(Py_None); resultobj = Py_None;
# Line 4858 | Line 5541 | static PyObject *_wrap_BossTask_clear(Py
5541          try {
5542              (arg1)->clear();
5543              
5544 +        }catch (const BossSchedFailure & e) {
5545 +            PyErr_SetString ( SchedulerError, e.what() );
5546 +            return NULL;
5547 +        }catch (const std::exception& e) {
5548 +            PyErr_SetString ( BossError, e.what() );
5549 +            return NULL;
5550 +        }
5551 +    }
5552 +    Py_INCREF(Py_None); resultobj = Py_None;
5553 +    return resultobj;
5554 +    fail:
5555 +    return NULL;
5556 + }
5557 +
5558 +
5559 + static PyObject *_wrap_BossTask_appendToPyDict(PyObject *self, PyObject *args) {
5560 +    PyObject *resultobj;
5561 +    BossTask *arg1 = (BossTask *) 0 ;
5562 +    PyObject *arg2 = (PyObject *) 0 ;
5563 +    BossAttributeContainer *arg3 = 0 ;
5564 +    PyObject * obj0 = 0 ;
5565 +    PyObject * obj1 = 0 ;
5566 +    PyObject * obj2 = 0 ;
5567 +    
5568 +    if(!PyArg_ParseTuple(args,(char *)"OOO:BossTask_appendToPyDict",&obj0,&obj1,&obj2)) goto fail;
5569 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5570 +    arg2 = obj1;
5571 +    if ((SWIG_ConvertPtr(obj2,(void **) &arg3, SWIGTYPE_p_BossAttributeContainer,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5572 +    if (arg3 == NULL) {
5573 +        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail;
5574 +    }
5575 +    {
5576 +        try {
5577 +            BossTask_appendToPyDict((BossTask const *)arg1,arg2,(BossAttributeContainer const &)*arg3);
5578 +            
5579 +        }catch (const BossSchedFailure & e) {
5580 +            PyErr_SetString ( SchedulerError, e.what() );
5581 +            return NULL;
5582          }catch (const std::exception& e) {
5583 <            SWIG_exception(SWIG_RuntimeError, e.what());
5583 >            PyErr_SetString ( BossError, e.what() );
5584 >            return NULL;
5585          }
5586      }
5587      Py_INCREF(Py_None); resultobj = Py_None;
# Line 4869 | Line 5591 | static PyObject *_wrap_BossTask_clear(Py
5591   }
5592  
5593  
5594 + static PyObject *_wrap_BossTask_jobDict(PyObject *self, PyObject *args) {
5595 +    PyObject *resultobj;
5596 +    BossTask *arg1 = (BossTask *) 0 ;
5597 +    BossJob *arg2 = (BossJob *) 0 ;
5598 +    PyObject *arg3 = (PyObject *) 0 ;
5599 +    PyObject * obj0 = 0 ;
5600 +    PyObject * obj1 = 0 ;
5601 +    PyObject * obj2 = 0 ;
5602 +    
5603 +    if(!PyArg_ParseTuple(args,(char *)"OOO:BossTask_jobDict",&obj0,&obj1,&obj2)) goto fail;
5604 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5605 +    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_BossJob,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5606 +    arg3 = obj2;
5607 +    {
5608 +        try {
5609 +            BossTask_jobDict((BossTask const *)arg1,(BossJob const *)arg2,arg3);
5610 +            
5611 +        }catch (const BossSchedFailure & e) {
5612 +            PyErr_SetString ( SchedulerError, e.what() );
5613 +            return NULL;
5614 +        }catch (const std::exception& e) {
5615 +            PyErr_SetString ( BossError, e.what() );
5616 +            return NULL;
5617 +        }
5618 +    }
5619 +    Py_INCREF(Py_None); resultobj = Py_None;
5620 +    return resultobj;
5621 +    fail:
5622 +    return NULL;
5623 + }
5624 +
5625 +
5626 + static PyObject *_wrap_BossTask_jobsDict(PyObject *self, PyObject *args) {
5627 +    PyObject *resultobj;
5628 +    BossTask *arg1 = (BossTask *) 0 ;
5629 +    PyObject *result;
5630 +    PyObject * obj0 = 0 ;
5631 +    
5632 +    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_jobsDict",&obj0)) goto fail;
5633 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5634 +    {
5635 +        try {
5636 +            result = (PyObject *)BossTask_jobsDict(arg1);
5637 +            
5638 +        }catch (const BossSchedFailure & e) {
5639 +            PyErr_SetString ( SchedulerError, e.what() );
5640 +            return NULL;
5641 +        }catch (const std::exception& e) {
5642 +            PyErr_SetString ( BossError, e.what() );
5643 +            return NULL;
5644 +        }
5645 +    }
5646 +    resultobj = result;
5647 +    return resultobj;
5648 +    fail:
5649 +    return NULL;
5650 + }
5651 +
5652 +
5653 + static PyObject *_wrap_BossTask_job(PyObject *self, PyObject *args) {
5654 +    PyObject *resultobj;
5655 +    BossTask *arg1 = (BossTask *) 0 ;
5656 +    std::string *arg2 = 0 ;
5657 +    PyObject *result;
5658 +    std::string temp2 ;
5659 +    PyObject * obj0 = 0 ;
5660 +    PyObject * obj1 = 0 ;
5661 +    
5662 +    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_job",&obj0,&obj1)) goto fail;
5663 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5664 +    {
5665 +        if (PyString_Check(obj1)) {
5666 +            temp2 = std::string(PyString_AsString(obj1));
5667 +            arg2 = &temp2;
5668 +        }else {
5669 +            SWIG_exception(SWIG_TypeError, "string expected");
5670 +        }
5671 +    }
5672 +    {
5673 +        try {
5674 +            result = (PyObject *)BossTask_job(arg1,(std::string const &)*arg2);
5675 +            
5676 +        }catch (const BossSchedFailure & e) {
5677 +            PyErr_SetString ( SchedulerError, e.what() );
5678 +            return NULL;
5679 +        }catch (const std::exception& e) {
5680 +            PyErr_SetString ( BossError, e.what() );
5681 +            return NULL;
5682 +        }
5683 +    }
5684 +    resultobj = result;
5685 +    return resultobj;
5686 +    fail:
5687 +    return NULL;
5688 + }
5689 +
5690 +
5691 + static PyObject *_wrap_BossTask_Chain(PyObject *self, PyObject *args) {
5692 +    PyObject *resultobj;
5693 +    BossTask *arg1 = (BossTask *) 0 ;
5694 +    std::string *arg2 = 0 ;
5695 +    PyObject *result;
5696 +    std::string temp2 ;
5697 +    PyObject * obj0 = 0 ;
5698 +    PyObject * obj1 = 0 ;
5699 +    
5700 +    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_Chain",&obj0,&obj1)) goto fail;
5701 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5702 +    {
5703 +        if (PyString_Check(obj1)) {
5704 +            temp2 = std::string(PyString_AsString(obj1));
5705 +            arg2 = &temp2;
5706 +        }else {
5707 +            SWIG_exception(SWIG_TypeError, "string expected");
5708 +        }
5709 +    }
5710 +    {
5711 +        try {
5712 +            result = (PyObject *)BossTask_Chain(arg1,(std::string const &)*arg2);
5713 +            
5714 +        }catch (const BossSchedFailure & e) {
5715 +            PyErr_SetString ( SchedulerError, e.what() );
5716 +            return NULL;
5717 +        }catch (const std::exception& e) {
5718 +            PyErr_SetString ( BossError, e.what() );
5719 +            return NULL;
5720 +        }
5721 +    }
5722 +    resultobj = result;
5723 +    return resultobj;
5724 +    fail:
5725 +    return NULL;
5726 + }
5727 +
5728 +
5729 + static PyObject *_wrap_BossTask_jobStates(PyObject *self, PyObject *args) {
5730 +    PyObject *resultobj;
5731 +    BossTask *arg1 = (BossTask *) 0 ;
5732 +    PyObject *result;
5733 +    PyObject * obj0 = 0 ;
5734 +    
5735 +    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_jobStates",&obj0)) goto fail;
5736 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5737 +    {
5738 +        try {
5739 +            result = (PyObject *)BossTask_jobStates(arg1);
5740 +            
5741 +        }catch (const BossSchedFailure & e) {
5742 +            PyErr_SetString ( SchedulerError, e.what() );
5743 +            return NULL;
5744 +        }catch (const std::exception& e) {
5745 +            PyErr_SetString ( BossError, e.what() );
5746 +            return NULL;
5747 +        }
5748 +    }
5749 +    resultobj = result;
5750 +    return resultobj;
5751 +    fail:
5752 +    return NULL;
5753 + }
5754 +
5755 +
5756 + static PyObject *_wrap_BossTask_joblist(PyObject *self, PyObject *args) {
5757 +    PyObject *resultobj;
5758 +    BossTask *arg1 = (BossTask *) 0 ;
5759 +    PyObject *result;
5760 +    PyObject * obj0 = 0 ;
5761 +    
5762 +    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_joblist",&obj0)) goto fail;
5763 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5764 +    {
5765 +        try {
5766 +            result = (PyObject *)BossTask_joblist(arg1);
5767 +            
5768 +        }catch (const BossSchedFailure & e) {
5769 +            PyErr_SetString ( SchedulerError, e.what() );
5770 +            return NULL;
5771 +        }catch (const std::exception& e) {
5772 +            PyErr_SetString ( BossError, e.what() );
5773 +            return NULL;
5774 +        }
5775 +    }
5776 +    resultobj = result;
5777 +    return resultobj;
5778 +    fail:
5779 +    return NULL;
5780 + }
5781 +
5782 +
5783 + static PyObject *_wrap_BossTask_jobStatistic(PyObject *self, PyObject *args) {
5784 +    PyObject *resultobj;
5785 +    BossTask *arg1 = (BossTask *) 0 ;
5786 +    PyObject *result;
5787 +    PyObject * obj0 = 0 ;
5788 +    
5789 +    if(!PyArg_ParseTuple(args,(char *)"O:BossTask_jobStatistic",&obj0)) goto fail;
5790 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5791 +    {
5792 +        try {
5793 +            result = (PyObject *)BossTask_jobStatistic(arg1);
5794 +            
5795 +        }catch (const BossSchedFailure & e) {
5796 +            PyErr_SetString ( SchedulerError, e.what() );
5797 +            return NULL;
5798 +        }catch (const std::exception& e) {
5799 +            PyErr_SetString ( BossError, e.what() );
5800 +            return NULL;
5801 +        }
5802 +    }
5803 +    resultobj = result;
5804 +    return resultobj;
5805 +    fail:
5806 +    return NULL;
5807 + }
5808 +
5809 +
5810 + static PyObject *_wrap_BossTask_progDict(PyObject *self, PyObject *args) {
5811 +    PyObject *resultobj;
5812 +    BossTask *arg1 = (BossTask *) 0 ;
5813 +    std::vector<std::pair<BossProgram,BossProgramExec > >::const_iterator *arg2 = 0 ;
5814 +    PyObject *result;
5815 +    PyObject * obj0 = 0 ;
5816 +    PyObject * obj1 = 0 ;
5817 +    
5818 +    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_progDict",&obj0,&obj1)) goto fail;
5819 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5820 +    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5821 +    if (arg2 == NULL) {
5822 +        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail;
5823 +    }
5824 +    {
5825 +        try {
5826 +            result = (PyObject *)BossTask_progDict((BossTask const *)arg1,*arg2);
5827 +            
5828 +        }catch (const BossSchedFailure & e) {
5829 +            PyErr_SetString ( SchedulerError, e.what() );
5830 +            return NULL;
5831 +        }catch (const std::exception& e) {
5832 +            PyErr_SetString ( BossError, e.what() );
5833 +            return NULL;
5834 +        }
5835 +    }
5836 +    resultobj = result;
5837 +    return resultobj;
5838 +    fail:
5839 +    return NULL;
5840 + }
5841 +
5842 +
5843 + static PyObject *_wrap_BossTask_jobPrograms(PyObject *self, PyObject *args) {
5844 +    PyObject *resultobj;
5845 +    BossTask *arg1 = (BossTask *) 0 ;
5846 +    std::string *arg2 = 0 ;
5847 +    PyObject *result;
5848 +    std::string temp2 ;
5849 +    PyObject * obj0 = 0 ;
5850 +    PyObject * obj1 = 0 ;
5851 +    
5852 +    if(!PyArg_ParseTuple(args,(char *)"OO:BossTask_jobPrograms",&obj0,&obj1)) goto fail;
5853 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5854 +    {
5855 +        if (PyString_Check(obj1)) {
5856 +            temp2 = std::string(PyString_AsString(obj1));
5857 +            arg2 = &temp2;
5858 +        }else {
5859 +            SWIG_exception(SWIG_TypeError, "string expected");
5860 +        }
5861 +    }
5862 +    {
5863 +        try {
5864 +            result = (PyObject *)BossTask_jobPrograms((BossTask const *)arg1,(std::string const &)*arg2);
5865 +            
5866 +        }catch (const BossSchedFailure & e) {
5867 +            PyErr_SetString ( SchedulerError, e.what() );
5868 +            return NULL;
5869 +        }catch (const std::exception& e) {
5870 +            PyErr_SetString ( BossError, e.what() );
5871 +            return NULL;
5872 +        }
5873 +    }
5874 +    resultobj = result;
5875 +    return resultobj;
5876 +    fail:
5877 +    return NULL;
5878 + }
5879 +
5880 +
5881 + static PyObject *_wrap_BossTask_program(PyObject *self, PyObject *args) {
5882 +    PyObject *resultobj;
5883 +    BossTask *arg1 = (BossTask *) 0 ;
5884 +    std::string *arg2 = 0 ;
5885 +    std::string *arg3 = 0 ;
5886 +    PyObject *result;
5887 +    std::string temp2 ;
5888 +    std::string temp3 ;
5889 +    PyObject * obj0 = 0 ;
5890 +    PyObject * obj1 = 0 ;
5891 +    PyObject * obj2 = 0 ;
5892 +    
5893 +    if(!PyArg_ParseTuple(args,(char *)"OOO:BossTask_program",&obj0,&obj1,&obj2)) goto fail;
5894 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5895 +    {
5896 +        if (PyString_Check(obj1)) {
5897 +            temp2 = std::string(PyString_AsString(obj1));
5898 +            arg2 = &temp2;
5899 +        }else {
5900 +            SWIG_exception(SWIG_TypeError, "string expected");
5901 +        }
5902 +    }
5903 +    {
5904 +        if (PyString_Check(obj2)) {
5905 +            temp3 = std::string(PyString_AsString(obj2));
5906 +            arg3 = &temp3;
5907 +        }else {
5908 +            SWIG_exception(SWIG_TypeError, "string expected");
5909 +        }
5910 +    }
5911 +    {
5912 +        try {
5913 +            result = (PyObject *)BossTask_program(arg1,(std::string const &)*arg2,(std::string const &)*arg3);
5914 +            
5915 +        }catch (const BossSchedFailure & e) {
5916 +            PyErr_SetString ( SchedulerError, e.what() );
5917 +            return NULL;
5918 +        }catch (const std::exception& e) {
5919 +            PyErr_SetString ( BossError, e.what() );
5920 +            return NULL;
5921 +        }
5922 +    }
5923 +    resultobj = result;
5924 +    return resultobj;
5925 +    fail:
5926 +    return NULL;
5927 + }
5928 +
5929 +
5930 + static PyObject *_wrap_BossTask_programExec(PyObject *self, PyObject *args) {
5931 +    PyObject *resultobj;
5932 +    BossTask *arg1 = (BossTask *) 0 ;
5933 +    std::string *arg2 = 0 ;
5934 +    std::string *arg3 = 0 ;
5935 +    PyObject *result;
5936 +    std::string temp2 ;
5937 +    std::string temp3 ;
5938 +    PyObject * obj0 = 0 ;
5939 +    PyObject * obj1 = 0 ;
5940 +    PyObject * obj2 = 0 ;
5941 +    
5942 +    if(!PyArg_ParseTuple(args,(char *)"OOO:BossTask_programExec",&obj0,&obj1,&obj2)) goto fail;
5943 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5944 +    {
5945 +        if (PyString_Check(obj1)) {
5946 +            temp2 = std::string(PyString_AsString(obj1));
5947 +            arg2 = &temp2;
5948 +        }else {
5949 +            SWIG_exception(SWIG_TypeError, "string expected");
5950 +        }
5951 +    }
5952 +    {
5953 +        if (PyString_Check(obj2)) {
5954 +            temp3 = std::string(PyString_AsString(obj2));
5955 +            arg3 = &temp3;
5956 +        }else {
5957 +            SWIG_exception(SWIG_TypeError, "string expected");
5958 +        }
5959 +    }
5960 +    {
5961 +        try {
5962 +            result = (PyObject *)BossTask_programExec(arg1,(std::string const &)*arg2,(std::string const &)*arg3);
5963 +            
5964 +        }catch (const BossSchedFailure & e) {
5965 +            PyErr_SetString ( SchedulerError, e.what() );
5966 +            return NULL;
5967 +        }catch (const std::exception& e) {
5968 +            PyErr_SetString ( BossError, e.what() );
5969 +            return NULL;
5970 +        }
5971 +    }
5972 +    resultobj = result;
5973 +    return resultobj;
5974 +    fail:
5975 +    return NULL;
5976 + }
5977 +
5978 +
5979 + static PyObject *_wrap_BossTask_specific(PyObject *self, PyObject *args) {
5980 +    PyObject *resultobj;
5981 +    BossTask *arg1 = (BossTask *) 0 ;
5982 +    std::string *arg2 = 0 ;
5983 +    std::string *arg3 = 0 ;
5984 +    PyObject *result;
5985 +    std::string temp2 ;
5986 +    std::string temp3 ;
5987 +    PyObject * obj0 = 0 ;
5988 +    PyObject * obj1 = 0 ;
5989 +    PyObject * obj2 = 0 ;
5990 +    
5991 +    if(!PyArg_ParseTuple(args,(char *)"OOO:BossTask_specific",&obj0,&obj1,&obj2)) goto fail;
5992 +    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossTask,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
5993 +    {
5994 +        if (PyString_Check(obj1)) {
5995 +            temp2 = std::string(PyString_AsString(obj1));
5996 +            arg2 = &temp2;
5997 +        }else {
5998 +            SWIG_exception(SWIG_TypeError, "string expected");
5999 +        }
6000 +    }
6001 +    {
6002 +        if (PyString_Check(obj2)) {
6003 +            temp3 = std::string(PyString_AsString(obj2));
6004 +            arg3 = &temp3;
6005 +        }else {
6006 +            SWIG_exception(SWIG_TypeError, "string expected");
6007 +        }
6008 +    }
6009 +    {
6010 +        try {
6011 +            result = (PyObject *)BossTask_specific(arg1,(std::string const &)*arg2,(std::string const &)*arg3);
6012 +            
6013 +        }catch (const BossSchedFailure & e) {
6014 +            PyErr_SetString ( SchedulerError, e.what() );
6015 +            return NULL;
6016 +        }catch (const std::exception& e) {
6017 +            PyErr_SetString ( BossError, e.what() );
6018 +            return NULL;
6019 +        }
6020 +    }
6021 +    resultobj = result;
6022 +    return resultobj;
6023 +    fail:
6024 +    return NULL;
6025 + }
6026 +
6027 +
6028   static PyObject * BossTask_swigregister(PyObject *self, PyObject *args) {
6029      PyObject *obj;
6030      if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
# Line 4879 | Line 6035 | static PyObject * BossTask_swigregister(
6035   static PyObject *_wrap_new_BossAdministratorSession(PyObject *self, PyObject *args) {
6036      PyObject *resultobj;
6037      std::string arg1 = (std::string) "" ;
6038 <    bool arg2 = (bool) false ;
6038 >    std::string arg2 = (std::string) "2" ;
6039 >    std::string arg3 = (std::string) "" ;
6040 >    std::string arg4 = (std::string) "" ;
6041 >    bool arg5 = (bool) false ;
6042      BossAdministratorSession *result;
6043      PyObject * obj0 = 0 ;
6044      PyObject * obj1 = 0 ;
6045 +    PyObject * obj2 = 0 ;
6046 +    PyObject * obj3 = 0 ;
6047 +    PyObject * obj4 = 0 ;
6048      
6049 <    if(!PyArg_ParseTuple(args,(char *)"|OO:new_BossAdministratorSession",&obj0,&obj1)) goto fail;
6049 >    if(!PyArg_ParseTuple(args,(char *)"|OOOOO:new_BossAdministratorSession",&obj0,&obj1,&obj2,&obj3,&obj4)) goto fail;
6050      if (obj0) {
6051          {
6052              if (PyString_Check(obj0))
# Line 4894 | Line 6056 | static PyObject *_wrap_new_BossAdministr
6056          }
6057      }
6058      if (obj1) {
6059 <        arg2 = PyInt_AsLong(obj1) ? true : false;
6059 >        {
6060 >            if (PyString_Check(obj1))
6061 >            arg2 = std::string(PyString_AsString(obj1));
6062 >            else
6063 >            SWIG_exception(SWIG_TypeError, "string expected");
6064 >        }
6065 >    }
6066 >    if (obj2) {
6067 >        {
6068 >            if (PyString_Check(obj2))
6069 >            arg3 = std::string(PyString_AsString(obj2));
6070 >            else
6071 >            SWIG_exception(SWIG_TypeError, "string expected");
6072 >        }
6073 >    }
6074 >    if (obj3) {
6075 >        {
6076 >            if (PyString_Check(obj3))
6077 >            arg4 = std::string(PyString_AsString(obj3));
6078 >            else
6079 >            SWIG_exception(SWIG_TypeError, "string expected");
6080 >        }
6081 >    }
6082 >    if (obj4) {
6083 >        arg5 = PyInt_AsLong(obj4) ? true : false;
6084          if (PyErr_Occurred()) SWIG_fail;
6085      }
6086      {
6087          try {
6088 <            result = (BossAdministratorSession *)new BossAdministratorSession(arg1,arg2);
6088 >            result = (BossAdministratorSession *)new BossAdministratorSession(arg1,arg2,arg3,arg4,arg5);
6089              
6090 +        }catch (const BossSchedFailure & e) {
6091 +            PyErr_SetString ( SchedulerError, e.what() );
6092 +            return NULL;
6093          }catch (const std::exception& e) {
6094 <            SWIG_exception(SWIG_RuntimeError, e.what());
6094 >            PyErr_SetString ( BossError, e.what() );
6095 >            return NULL;
6096          }
6097      }
6098      resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_BossAdministratorSession, 1);
# Line 4923 | Line 6113 | static PyObject *_wrap_delete_BossAdmini
6113          try {
6114              delete arg1;
6115              
6116 +        }catch (const BossSchedFailure & e) {
6117 +            PyErr_SetString ( SchedulerError, e.what() );
6118 +            return NULL;
6119          }catch (const std::exception& e) {
6120 <            SWIG_exception(SWIG_RuntimeError, e.what());
6120 >            PyErr_SetString ( BossError, e.what() );
6121 >            return NULL;
6122          }
6123      }
6124      Py_INCREF(Py_None); resultobj = Py_None;
# Line 4946 | Line 6140 | static PyObject *_wrap_BossAdministrator
6140          try {
6141              result = (int)(arg1)->configureDB();
6142              
6143 +        }catch (const BossSchedFailure & e) {
6144 +            PyErr_SetString ( SchedulerError, e.what() );
6145 +            return NULL;
6146          }catch (const std::exception& e) {
6147 <            SWIG_exception(SWIG_RuntimeError, e.what());
6147 >            PyErr_SetString ( BossError, e.what() );
6148 >            return NULL;
6149          }
6150      }
6151      resultobj = PyInt_FromLong((long)result);
# Line 4980 | Line 6178 | static PyObject *_wrap_BossAdministrator
6178          try {
6179              result = (int)(arg1)->configureRTMonDB((std::string const &)*arg2);
6180              
6181 +        }catch (const BossSchedFailure & e) {
6182 +            PyErr_SetString ( SchedulerError, e.what() );
6183 +            return NULL;
6184          }catch (const std::exception& e) {
6185 <            SWIG_exception(SWIG_RuntimeError, e.what());
6185 >            PyErr_SetString ( BossError, e.what() );
6186 >            return NULL;
6187          }
6188      }
6189      resultobj = PyInt_FromLong((long)result);
# Line 5014 | Line 6216 | static PyObject *_wrap_BossAdministrator
6216          try {
6217              result = (int)(arg1)->deleteCHTool((std::string const &)*arg2);
6218              
6219 +        }catch (const BossSchedFailure & e) {
6220 +            PyErr_SetString ( SchedulerError, e.what() );
6221 +            return NULL;
6222          }catch (const std::exception& e) {
6223 <            SWIG_exception(SWIG_RuntimeError, e.what());
6223 >            PyErr_SetString ( BossError, e.what() );
6224 >            return NULL;
6225          }
6226      }
6227      resultobj = PyInt_FromLong((long)result);
# Line 5048 | Line 6254 | static PyObject *_wrap_BossAdministrator
6254          try {
6255              result = (int)(arg1)->deleteProgramType((std::string const &)*arg2);
6256              
6257 +        }catch (const BossSchedFailure & e) {
6258 +            PyErr_SetString ( SchedulerError, e.what() );
6259 +            return NULL;
6260          }catch (const std::exception& e) {
6261 <            SWIG_exception(SWIG_RuntimeError, e.what());
6261 >            PyErr_SetString ( BossError, e.what() );
6262 >            return NULL;
6263          }
6264      }
6265      resultobj = PyInt_FromLong((long)result);
# Line 5082 | Line 6292 | static PyObject *_wrap_BossAdministrator
6292          try {
6293              result = (int)(arg1)->deleteRTMon((std::string const &)*arg2);
6294              
6295 +        }catch (const BossSchedFailure & e) {
6296 +            PyErr_SetString ( SchedulerError, e.what() );
6297 +            return NULL;
6298          }catch (const std::exception& e) {
6299 <            SWIG_exception(SWIG_RuntimeError, e.what());
6299 >            PyErr_SetString ( BossError, e.what() );
6300 >            return NULL;
6301          }
6302      }
6303      resultobj = PyInt_FromLong((long)result);
# Line 5116 | Line 6330 | static PyObject *_wrap_BossAdministrator
6330          try {
6331              result = (int)(arg1)->deleteScheduler((std::string const &)*arg2);
6332              
6333 +        }catch (const BossSchedFailure & e) {
6334 +            PyErr_SetString ( SchedulerError, e.what() );
6335 +            return NULL;
6336          }catch (const std::exception& e) {
6337 <            SWIG_exception(SWIG_RuntimeError, e.what());
6337 >            PyErr_SetString ( BossError, e.what() );
6338 >            return NULL;
6339          }
6340      }
6341      resultobj = PyInt_FromLong((long)result);
# Line 5182 | Line 6400 | static PyObject *_wrap_BossAdministrator
6400          try {
6401              result = (int)(arg1)->registerCHTool((std::string const &)*arg2,arg3,arg4,arg5,arg6);
6402              
6403 +        }catch (const BossSchedFailure & e) {
6404 +            PyErr_SetString ( SchedulerError, e.what() );
6405 +            return NULL;
6406          }catch (const std::exception& e) {
6407 <            SWIG_exception(SWIG_RuntimeError, e.what());
6407 >            PyErr_SetString ( BossError, e.what() );
6408 >            return NULL;
6409          }
6410      }
6411      resultobj = PyInt_FromLong((long)result);
# Line 5272 | Line 6494 | static PyObject *_wrap_BossAdministrator
6494          try {
6495              result = (int)(arg1)->registerProgram((std::string const &)*arg2,arg3,arg4,arg5,arg6,arg7,arg8);
6496              
6497 +        }catch (const BossSchedFailure & e) {
6498 +            PyErr_SetString ( SchedulerError, e.what() );
6499 +            return NULL;
6500          }catch (const std::exception& e) {
6501 <            SWIG_exception(SWIG_RuntimeError, e.what());
6501 >            PyErr_SetString ( BossError, e.what() );
6502 >            return NULL;
6503          }
6504      }
6505      resultobj = PyInt_FromLong((long)result);
# Line 5348 | Line 6574 | static PyObject *_wrap_BossAdministrator
6574          try {
6575              result = (int)(arg1)->registerRTMon((std::string const &)*arg2,arg3,arg4,arg5,arg6,arg7);
6576              
6577 +        }catch (const BossSchedFailure & e) {
6578 +            PyErr_SetString ( SchedulerError, e.what() );
6579 +            return NULL;
6580          }catch (const std::exception& e) {
6581 <            SWIG_exception(SWIG_RuntimeError, e.what());
6581 >            PyErr_SetString ( BossError, e.what() );
6582 >            return NULL;
6583          }
6584      }
6585      resultobj = PyInt_FromLong((long)result);
# Line 5377 | Line 6607 | static PyObject *_wrap_BossAdministrator
6607      std::string arg13 = (std::string) "" ;
6608      bool arg14 = (bool) false ;
6609      bool arg15 = (bool) false ;
6610 +    bool arg16 = (bool) false ;
6611 +    bool arg17 = (bool) false ;
6612      int result;
6613      std::string temp2 ;
6614      std::string temp11 ;
# Line 5395 | Line 6627 | static PyObject *_wrap_BossAdministrator
6627      PyObject * obj12 = 0 ;
6628      PyObject * obj13 = 0 ;
6629      PyObject * obj14 = 0 ;
6630 +    PyObject * obj15 = 0 ;
6631 +    PyObject * obj16 = 0 ;
6632      
6633 <    if(!PyArg_ParseTuple(args,(char *)"OO|OOOOOOOOOOOOO:BossAdministratorSession_registerScheduler",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10,&obj11,&obj12,&obj13,&obj14)) goto fail;
6633 >    if(!PyArg_ParseTuple(args,(char *)"OO|OOOOOOOOOOOOOOO:BossAdministratorSession_registerScheduler",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10,&obj11,&obj12,&obj13,&obj14,&obj15,&obj16)) goto fail;
6634      if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_BossAdministratorSession,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
6635      {
6636          if (PyString_Check(obj1)) {
# Line 5504 | Line 6738 | static PyObject *_wrap_BossAdministrator
6738          arg15 = PyInt_AsLong(obj14) ? true : false;
6739          if (PyErr_Occurred()) SWIG_fail;
6740      }
6741 +    if (obj15) {
6742 +        arg16 = PyInt_AsLong(obj15) ? true : false;
6743 +        if (PyErr_Occurred()) SWIG_fail;
6744 +    }
6745 +    if (obj16) {
6746 +        arg17 = PyInt_AsLong(obj16) ? true : false;
6747 +        if (PyErr_Occurred()) SWIG_fail;
6748 +    }
6749      {
6750          try {
6751 <            result = (int)(arg1)->registerScheduler((std::string const &)*arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,(std::string const &)*arg11,arg12,arg13,arg14,arg15);
6751 >            result = (int)(arg1)->registerScheduler((std::string const &)*arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,(std::string const &)*arg11,arg12,arg13,arg14,arg15,arg16,arg17);
6752              
6753 +        }catch (const BossSchedFailure & e) {
6754 +            PyErr_SetString ( SchedulerError, e.what() );
6755 +            return NULL;
6756          }catch (const std::exception& e) {
6757 <            SWIG_exception(SWIG_RuntimeError, e.what());
6757 >            PyErr_SetString ( BossError, e.what() );
6758 >            return NULL;
6759          }
6760      }
6761      resultobj = PyInt_FromLong((long)result);
# Line 5531 | Line 6777 | static PyObject *_wrap_BossAdministrator
6777          try {
6778              result = (arg1)->help();
6779              
6780 +        }catch (const BossSchedFailure & e) {
6781 +            PyErr_SetString ( SchedulerError, e.what() );
6782 +            return NULL;
6783          }catch (const std::exception& e) {
6784 <            SWIG_exception(SWIG_RuntimeError, e.what());
6784 >            PyErr_SetString ( BossError, e.what() );
6785 >            return NULL;
6786          }
6787      }
6788      {
# Line 5570 | Line 6820 | static PyObject *_wrap_BossAdministrator
6820          try {
6821              result = (arg1)->SQL(arg2,arg3);
6822              
6823 +        }catch (const BossSchedFailure & e) {
6824 +            PyErr_SetString ( SchedulerError, e.what() );
6825 +            return NULL;
6826          }catch (const std::exception& e) {
6827 <            SWIG_exception(SWIG_RuntimeError, e.what());
6827 >            PyErr_SetString ( BossError, e.what() );
6828 >            return NULL;
6829          }
6830      }
6831      {
# Line 5642 | Line 6896 | static PyObject *_wrap_BossAdministrator
6896          try {
6897              result = (int)(arg1)->purge((std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4,(std::string const &)*arg5);
6898              
6899 +        }catch (const BossSchedFailure & e) {
6900 +            PyErr_SetString ( SchedulerError, e.what() );
6901 +            return NULL;
6902          }catch (const std::exception& e) {
6903 <            SWIG_exception(SWIG_RuntimeError, e.what());
6903 >            PyErr_SetString ( BossError, e.what() );
6904 >            return NULL;
6905          }
6906      }
6907      resultobj = PyInt_FromLong((long)result);
# Line 5673 | Line 6931 | static PyObject *_wrap_BossAdministrator
6931          try {
6932              result = (int)(arg1)->registerPlugins(arg2);
6933              
6934 +        }catch (const BossSchedFailure & e) {
6935 +            PyErr_SetString ( SchedulerError, e.what() );
6936 +            return NULL;
6937          }catch (const std::exception& e) {
6938 <            SWIG_exception(SWIG_RuntimeError, e.what());
6938 >            PyErr_SetString ( BossError, e.what() );
6939 >            return NULL;
6940          }
6941      }
6942      resultobj = PyInt_FromLong((long)result);
# Line 5721 | Line 6983 | static PyMethodDef SwigMethods[] = {
6983           { (char *)"vector_string___delslice__", _wrap_vector_string___delslice__, METH_VARARGS },
6984           { (char *)"delete_vector_string", _wrap_delete_vector_string, METH_VARARGS },
6985           { (char *)"vector_string_swigregister", vector_string_swigregister, METH_VARARGS },
5724         { (char *)"BossSession_show", _wrap_BossSession_show, METH_VARARGS },
5725         { (char *)"BossSession_CHTools", _wrap_BossSession_CHTools, METH_VARARGS },
5726         { (char *)"BossSession_ProgramTypes", _wrap_BossSession_ProgramTypes, METH_VARARGS },
5727         { (char *)"BossSession_RTMons", _wrap_BossSession_RTMons, METH_VARARGS },
5728         { (char *)"BossSession_schedulers", _wrap_BossSession_schedulers, METH_VARARGS },
5729         { (char *)"BossSession_schedListMatch", _wrap_BossSession_schedListMatch, METH_VARARGS },
5730         { (char *)"BossSession_queryTasks", _wrap_BossSession_queryTasks, METH_VARARGS },
6986           { (char *)"new_BossSession", _wrap_new_BossSession, METH_VARARGS },
6987           { (char *)"delete_BossSession", _wrap_delete_BossSession, METH_VARARGS },
6988           { (char *)"BossSession_resetDB", _wrap_BossSession_resetDB, METH_VARARGS },
6989           { (char *)"BossSession_clear", _wrap_BossSession_clear, METH_VARARGS },
6990 +         { (char *)"BossSession_task_begin", _wrap_BossSession_task_begin, METH_VARARGS },
6991 +         { (char *)"BossSession_task_end", _wrap_BossSession_task_end, METH_VARARGS },
6992 +         { (char *)"BossSession_tasksInMemory", _wrap_BossSession_tasksInMemory, METH_VARARGS },
6993 +         { (char *)"BossSession_locate", _wrap_BossSession_locate, METH_VARARGS },
6994           { (char *)"BossSession_makeBossTask", _wrap_BossSession_makeBossTask, METH_VARARGS },
6995           { (char *)"BossSession_destroyBossTask", _wrap_BossSession_destroyBossTask, METH_VARARGS },
6996 +         { (char *)"BossSession_showCHTools", _wrap_BossSession_showCHTools, METH_VARARGS },
6997 +         { (char *)"BossSession_showProgramTypes", _wrap_BossSession_showProgramTypes, METH_VARARGS },
6998 +         { (char *)"BossSession_showRTMon", _wrap_BossSession_showRTMon, METH_VARARGS },
6999 +         { (char *)"BossSession_showSchedulers", _wrap_BossSession_showSchedulers, METH_VARARGS },
7000           { (char *)"BossSession_defaultCHTool", _wrap_BossSession_defaultCHTool, METH_VARARGS },
7001           { (char *)"BossSession_defaultProgramType", _wrap_BossSession_defaultProgramType, METH_VARARGS },
7002           { (char *)"BossSession_defaultRTMon", _wrap_BossSession_defaultRTMon, METH_VARARGS },
# Line 5743 | Line 7006 | static PyMethodDef SwigMethods[] = {
7006           { (char *)"BossSession_showConfigs", _wrap_BossSession_showConfigs, METH_VARARGS },
7007           { (char *)"BossSession_RTupdate", _wrap_BossSession_RTupdate, METH_VARARGS },
7008           { (char *)"BossSession_listMatch", _wrap_BossSession_listMatch, METH_VARARGS },
5746         { (char *)"BossSession_schedulerQuery", _wrap_BossSession_schedulerQuery, METH_VARARGS },
5747         { (char *)"BossSession_selectTasks", _wrap_BossSession_selectTasks, METH_VARARGS },
7009           { (char *)"BossSession_query", _wrap_BossSession_query, METH_VARARGS },
7010 +         { (char *)"BossSession_getTasksByName", _wrap_BossSession_getTasksByName, METH_VARARGS },
7011 +         { (char *)"BossSession_getTasksByTaskInfo", _wrap_BossSession_getTasksByTaskInfo, METH_VARARGS },
7012 +         { (char *)"BossSession_getTasksByJobName", _wrap_BossSession_getTasksByJobName, METH_VARARGS },
7013 +         { (char *)"BossSession_show", _wrap_BossSession_show, METH_VARARGS },
7014 +         { (char *)"BossSession_CHTools", _wrap_BossSession_CHTools, METH_VARARGS },
7015 +         { (char *)"BossSession_ProgramTypes", _wrap_BossSession_ProgramTypes, METH_VARARGS },
7016 +         { (char *)"BossSession_RTMons", _wrap_BossSession_RTMons, METH_VARARGS },
7017 +         { (char *)"BossSession_schedulers", _wrap_BossSession_schedulers, METH_VARARGS },
7018 +         { (char *)"BossSession_schedListMatch", _wrap_BossSession_schedListMatch, METH_VARARGS },
7019 +         { (char *)"BossSession_schedulerQuery", _wrap_BossSession_schedulerQuery, METH_VARARGS },
7020           { (char *)"BossSession_swigregister", BossSession_swigregister, METH_VARARGS },
5750         { (char *)"BossTaskException_key_set", _wrap_BossTaskException_key_set, METH_VARARGS },
5751         { (char *)"BossTaskException_key_get", _wrap_BossTaskException_key_get, METH_VARARGS },
7021           { (char *)"new_BossTaskException", _wrap_new_BossTaskException, METH_VARARGS },
5753         { (char *)"BossTaskException_what", _wrap_BossTaskException_what, METH_VARARGS },
7022           { (char *)"delete_BossTaskException", _wrap_delete_BossTaskException, METH_VARARGS },
7023           { (char *)"BossTaskException_swigregister", BossTaskException_swigregister, METH_VARARGS },
7024 <         { (char *)"BossTask_appendToPyDict", _wrap_BossTask_appendToPyDict, METH_VARARGS },
7025 <         { (char *)"BossTask_jobDict", _wrap_BossTask_jobDict, METH_VARARGS },
7026 <         { (char *)"BossTask_jobsDict", _wrap_BossTask_jobsDict, METH_VARARGS },
7027 <         { (char *)"BossTask_progDict", _wrap_BossTask_progDict, METH_VARARGS },
7028 <         { (char *)"BossTask_jobPrograms", _wrap_BossTask_jobPrograms, METH_VARARGS },
7024 >         { (char *)"BossTask_job_begin", _wrap_BossTask_job_begin, METH_VARARGS },
7025 >         { (char *)"BossTask_job_end", _wrap_BossTask_job_end, METH_VARARGS },
7026 >         { (char *)"BossTask_jobsInMemory", _wrap_BossTask_jobsInMemory, METH_VARARGS },
7027 >         { (char *)"BossTask_queryJobPrograms", _wrap_BossTask_queryJobPrograms, METH_VARARGS },
7028 >         { (char *)"BossTask_queryProgram", _wrap_BossTask_queryProgram, METH_VARARGS },
7029 >         { (char *)"BossTask_queryProgramExec", _wrap_BossTask_queryProgramExec, METH_VARARGS },
7030           { (char *)"delete_BossTask", _wrap_delete_BossTask, METH_VARARGS },
7031           { (char *)"new_BossTask", _wrap_new_BossTask, METH_VARARGS },
7032           { (char *)"BossTask_id", _wrap_BossTask_id, METH_VARARGS },
7033           { (char *)"BossTask_name", _wrap_BossTask_name, METH_VARARGS },
7034 +         { (char *)"BossTask_chain", _wrap_BossTask_chain, METH_VARARGS },
7035           { (char *)"BossTask_taskMap", _wrap_BossTask_taskMap, METH_VARARGS },
5766         { (char *)"BossTask_job_begin", _wrap_BossTask_job_begin, METH_VARARGS },
5767         { (char *)"BossTask_job_end", _wrap_BossTask_job_end, METH_VARARGS },
7036           { (char *)"BossTask_jobsMap", _wrap_BossTask_jobsMap, METH_VARARGS },
7037           { (char *)"BossTask_jobMap", _wrap_BossTask_jobMap, METH_VARARGS },
7038           { (char *)"BossTask_programsMap", _wrap_BossTask_programsMap, METH_VARARGS },
5771         { (char *)"BossTask_queryJobPrograms", _wrap_BossTask_queryJobPrograms, METH_VARARGS },
7039           { (char *)"BossTask_declare", _wrap_BossTask_declare, METH_VARARGS },
7040           { (char *)"BossTask_remove", _wrap_BossTask_remove, METH_VARARGS },
7041           { (char *)"BossTask_archive", _wrap_BossTask_archive, METH_VARARGS },
# Line 5776 | Line 7043 | static PyMethodDef SwigMethods[] = {
7043           { (char *)"BossTask_reSubmit", _wrap_BossTask_reSubmit, METH_VARARGS },
7044           { (char *)"BossTask_kill", _wrap_BossTask_kill, METH_VARARGS },
7045           { (char *)"BossTask_getOutput", _wrap_BossTask_getOutput, METH_VARARGS },
7046 <         { (char *)"BossTask_getAllOutput", _wrap_BossTask_getAllOutput, METH_VARARGS },
7046 >         { (char *)"BossTask_loadByName", _wrap_BossTask_loadByName, METH_VARARGS },
7047           { (char *)"BossTask_load", _wrap_BossTask_load, METH_VARARGS },
7048 +         { (char *)"BossTask_schedulerQuery", _wrap_BossTask_schedulerQuery, METH_VARARGS },
7049           { (char *)"BossTask_query", _wrap_BossTask_query, METH_VARARGS },
7050           { (char *)"BossTask_query_out", _wrap_BossTask_query_out, METH_VARARGS },
7051           { (char *)"BossTask_clear", _wrap_BossTask_clear, METH_VARARGS },
7052 +         { (char *)"BossTask_appendToPyDict", _wrap_BossTask_appendToPyDict, METH_VARARGS },
7053 +         { (char *)"BossTask_jobDict", _wrap_BossTask_jobDict, METH_VARARGS },
7054 +         { (char *)"BossTask_jobsDict", _wrap_BossTask_jobsDict, METH_VARARGS },
7055 +         { (char *)"BossTask_job", _wrap_BossTask_job, METH_VARARGS },
7056 +         { (char *)"BossTask_Chain", _wrap_BossTask_Chain, METH_VARARGS },
7057 +         { (char *)"BossTask_jobStates", _wrap_BossTask_jobStates, METH_VARARGS },
7058 +         { (char *)"BossTask_joblist", _wrap_BossTask_joblist, METH_VARARGS },
7059 +         { (char *)"BossTask_jobStatistic", _wrap_BossTask_jobStatistic, METH_VARARGS },
7060 +         { (char *)"BossTask_progDict", _wrap_BossTask_progDict, METH_VARARGS },
7061 +         { (char *)"BossTask_jobPrograms", _wrap_BossTask_jobPrograms, METH_VARARGS },
7062 +         { (char *)"BossTask_program", _wrap_BossTask_program, METH_VARARGS },
7063 +         { (char *)"BossTask_programExec", _wrap_BossTask_programExec, METH_VARARGS },
7064 +         { (char *)"BossTask_specific", _wrap_BossTask_specific, METH_VARARGS },
7065           { (char *)"BossTask_swigregister", BossTask_swigregister, METH_VARARGS },
7066           { (char *)"new_BossAdministratorSession", _wrap_new_BossAdministratorSession, METH_VARARGS },
7067           { (char *)"delete_BossAdministratorSession", _wrap_delete_BossAdministratorSession, METH_VARARGS },
# Line 5806 | Line 7087 | static PyMethodDef SwigMethods[] = {
7087   /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
7088  
7089   static swig_type_info _swigt__p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t[] = {{"_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t", 0, "std::vector<std::pair<BossProgram,BossProgramExec > > *", 0},{"_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t"},{0}};
5809 static swig_type_info _swigt__p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator[] = {{"_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator", 0, "std::vector<std::pair<BossProgram,BossProgramExec > >::const_iterator *", 0},{"_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator"},{0}};
7090   static swig_type_info _swigt__p_XMLDoc[] = {{"_p_XMLDoc", 0, "XMLDoc *", 0},{"_p_XMLDoc"},{0}};
7091 < static swig_type_info _swigt__p_std__vectorTBossTask_p_t[] = {{"_p_std__vectorTBossTask_p_t", 0, "std::vector<BossTask * > *", 0},{"_p_std__vectorTBossTask_p_t"},{0}};
7091 > static swig_type_info _swigt__p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator[] = {{"_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator", 0, "std::vector<std::pair<BossProgram,BossProgramExec > >::const_iterator *", 0},{"_p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator"},{0}};
7092 > static swig_type_info _swigt__p_BossProgramExec[] = {{"_p_BossProgramExec", 0, "BossProgramExec *", 0},{"_p_BossProgramExec"},{0}};
7093 > static swig_type_info _swigt__p_BossChain[] = {{"_p_BossChain", 0, "BossChain *", 0},{"_p_BossChain"},{0}};
7094   static swig_type_info _swigt__p_std__mapTstd__string_std__mapTstd__string_std__string_t_t[] = {{"_p_std__mapTstd__string_std__mapTstd__string_std__string_t_t", 0, "std::map<std::string,std::map<std::string,std::string > > *", 0},{"_p_std__mapTstd__string_std__mapTstd__string_std__string_t_t"},{0}};
7095   static swig_type_info _swigt__p_BossTask[] = {{"_p_BossTask", 0, "BossTask *", 0},{"_p_BossTask"},{0}};
7096   static swig_type_info _swigt__p_BossTaskException[] = {{"_p_BossTaskException", 0, "BossTaskException *", 0},{"_p_BossTaskException"},{0}};
7097   static swig_type_info _swigt__p_std__ostream[] = {{"_p_std__ostream", 0, "std::ostream *", 0},{"_p_std__ostream"},{0}};
7098 < static swig_type_info _swigt__p_BossAttributeContainer[] = {{"_p_BossAttributeContainer", 0, "BossAttributeContainer *", 0},{"_p_BossAttributeContainer"},{0}};
7098 > static swig_type_info _swigt__p_BossProgram[] = {{"_p_BossProgram", 0, "BossProgram *", 0},{"_p_BossProgram"},{0}};
7099   static swig_type_info _swigt__p_printOption[] = {{"_p_printOption", 0, "printOption const &", 0},{"_p_printOption"},{0}};
7100 + static swig_type_info _swigt__p_BossAttributeContainer[] = {{"_p_BossAttributeContainer", 0, "BossAttributeContainer *", 0},{"_p_BossAttributeContainer"},{0}};
7101   static swig_type_info _swigt__p_BossJob[] = {{"_p_BossJob", 0, "BossJob *", 0},{"_p_BossJob"},{0}};
7102   static swig_type_info _swigt__p_BossDatabase[] = {{"_p_BossDatabase", 0, "BossDatabase *", 0},{"_p_BossDatabase"},{0}};
7103   static swig_type_info _swigt__p_BossSession[] = {{"_p_BossSession", 0, "BossSession *", 0},{"_p_BossSession"},{0}};
# Line 5822 | Line 7105 | static swig_type_info _swigt__p_std__vec
7105   static swig_type_info _swigt__p_std__mapTstd__string_std__string_t[] = {{"_p_std__mapTstd__string_std__string_t", 0, "std::map<std::string,std::string > *", 0},{"_p_std__mapTstd__string_std__string_t"},{0}};
7106   static swig_type_info _swigt__p_BossAdministratorSession[] = {{"_p_BossAdministratorSession", 0, "BossAdministratorSession *", 0},{"_p_BossAdministratorSession"},{0}};
7107   static swig_type_info _swigt__p_BossTask__job_iterator[] = {{"_p_BossTask__job_iterator", 0, "BossTask::job_iterator const *", 0},{"_p_BossTask__job_iterator"},{"_p_std__vectorTBossJob_p_t__const_iterator"},{0}};
7108 + static swig_type_info _swigt__p_BossSession__task_iterator[] = {{"_p_BossSession__task_iterator", 0, "BossSession::task_iterator const *", 0},{"_p_BossSession__task_iterator"},{0}};
7109   static swig_type_info _swigt__p_std__vectorTBossJob_p_t__const_iterator[] = {{"_p_std__vectorTBossJob_p_t__const_iterator", 0, "std::vector<BossJob * >::const_iterator *", 0},{"_p_std__vectorTBossJob_p_t__const_iterator"},{"_p_BossTask__job_iterator"},{0}};
7110   static swig_type_info _swigt__p_jobStates[] = {{"_p_jobStates", 0, "jobStates const &", 0},{"_p_jobStates"},{0}};
7111  
7112   static swig_type_info *swig_types_initial[] = {
7113   _swigt__p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t,
5830 _swigt__p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator,
7114   _swigt__p_XMLDoc,
7115 < _swigt__p_std__vectorTBossTask_p_t,
7115 > _swigt__p_std__vectorTstd__pairTBossProgram_BossProgramExec_t_t__const_iterator,
7116 > _swigt__p_BossProgramExec,
7117 > _swigt__p_BossChain,
7118   _swigt__p_std__mapTstd__string_std__mapTstd__string_std__string_t_t,
7119   _swigt__p_BossTask,
7120   _swigt__p_BossTaskException,
7121   _swigt__p_std__ostream,
7122 < _swigt__p_BossAttributeContainer,
7122 > _swigt__p_BossProgram,
7123   _swigt__p_printOption,
7124 + _swigt__p_BossAttributeContainer,
7125   _swigt__p_BossJob,
7126   _swigt__p_BossDatabase,
7127   _swigt__p_BossSession,
# Line 5843 | Line 7129 | _swigt__p_std__vectorTstd__string_t,
7129   _swigt__p_std__mapTstd__string_std__string_t,
7130   _swigt__p_BossAdministratorSession,
7131   _swigt__p_BossTask__job_iterator,
7132 + _swigt__p_BossSession__task_iterator,
7133   _swigt__p_std__vectorTBossJob_p_t__const_iterator,
7134   _swigt__p_jobStates,
7135   0
# Line 5887 | Line 7174 | SWIGEXPORT(void) SWIG_init(void) {
7174      }
7175      SWIG_InstallConstants(d,swig_const_table);
7176      
7177 +    
7178 +    // define custom exceptions
7179 +    PyObject *e;
7180 +    PyMethodDef tp_methods = {
7181 +        NULL, NULL, 0, NULL
7182 +    };
7183 +    e = Py_InitModule("BossSession", &tp_methods);
7184 +    // generic BOSS exception
7185 +    BossError = PyErr_NewException("BossSession.BossError", NULL, NULL);
7186 +    Py_INCREF(BossError);
7187 +    PyModule_AddObject(e, "BossError", BossError);
7188 +    // scheduler interaction BOSS exception
7189 +    SchedulerError = PyErr_NewException("BossSession.BossError.SchedulerError", BossError, NULL);
7190 +    Py_INCREF(SchedulerError);
7191 +    PyModule_AddObject(e, "SchedulerError", SchedulerError);
7192 +    
7193   }
7194  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines