Beispiel #1
0
class Coordinator():
    _sync = {'commit': '1', 'set_cohorts': '2'}
    _async = ['hello_world']
    _ref = []
    _parallel = []


    def __init__(self):
        self.cohort = None
        self.abort = False
        print 'hola que tal! init'


    def set_cohorts(self,cohortlist):
        self.amulti = AMulti(cohortlist)
        print 'self.amulti', self.amulti
        self.smulti = SMulti(self._atom, cohortlist)
        print 'self.smulti', self.smulti
        return True

    def commit(self):
        vote = COMMIT
        votes = self.smulti.vote_request()
        #print votes
        if votes.__contains__(ABORT):
            self.abort = True
        self.final_decision()
        print 'hola que tal!'
        return True

    def final_decision(self):
        if self.abort==True:
            self.amulti.global_abort()
        else:
            self.amulti.global_commit()