| 139 | COMMITTER_ROLES) |
| 140 | |
| 141 | def handle(self): |
| 142 | current_state = None |
| 143 | try: |
| 144 | current_state = self.get_current_state() |
| 145 | except EventError: |
| 146 | # In case of error (more than one state) we clear state labels |
| 147 | # only possible if a label has been manually added. |
| 148 | self.clear_current_state() |
| 149 | next_state = self.compute_next_state(current_state) |
| 150 | if not current_state or current_state != next_state: |
| 151 | if current_state: |
| 152 | self.clear_current_state() |
| 153 | self.set_state(next_state) |
| 154 | |
| 155 | def get_current_state(self): |
| 156 | """ |