/** * time stamps this schedule item in the underlying storage by udpating the content of the column * 'bigs:alive' with the current date only if the existing uuid is the same of this process. * * @param dataSource the datasource object where this schedule item is stored * @return true if the update was successful, false otherwise (if the existing uuid is different, * meaning that somebody else is working on this schedule item) */ public Boolean markAlive(DataSource dataSource) { Table table = dataSource.getTable(ScheduleItem.tableName); Put put = table.createPutObject(this.getRowkey()); this.lastUpdate = new Date(Core.getTime()); put = this.fillPutObject(put); put = Data.fillInHostMetadata(put); Boolean r = table.checkAndPut(this.getRowkey(), "bigs", "uuid", Core.myUUID.getBytes(), put); return r; }