Ejemplo n.º 1
0
        //ready to Launched status change happens by the AmazonHITTableManager


        //Completed tasks are removed from the TaskTable
        //Thus, we check if tasks are still pernding
        //if not tasks for a GUID are pending its deemed as complete
        //then save the results and chnage status to completed
        public static void processLaunchedJobs()
        {
            SatyamJobSubmissionsTableAccess jobDB = new SatyamJobSubmissionsTableAccess();
            List <string> guidList  = jobDB.getAllJobGUIDSByStatus(JobStatus.launched);
            List <string> readyList = jobDB.getAllJobGUIDSByStatus(JobStatus.ready);

            guidList.AddRange(readyList);


            SatyamTaskTableAccess taskDB = new SatyamTaskTableAccess();

            foreach (String GUID in guidList)
            {
                if (GUID == "SINGLE_OBJECT_LABLING_DEMO")
                {
                    continue;
                }
                List <int> IDList = taskDB.getAllIDsByGUID(GUID);
                if (IDList.Count == 0)
                {
                    SatyamSaveResults.SaveByGUIDRequester(GUID);
                    SatyamSaveResults.SaveByGUIDSatyam(GUID);
                    SatyamSaveAggregatedResult.SaveByGUIDRequester(GUID);
                    SatyamSaveAggregatedResult.SaveByGUIDSatyam(GUID);
                    jobDB.UpdateEntryStatus(GUID, JobStatus.completed);
                }
            }

            jobDB.close();
            taskDB.close();
        }