Changeset 52ccac6 in flexoentity


Ignore:
Timestamp:
10/27/25 11:34:39 (3 months ago)
Author:
Enrico Schwass <ennoausberlin@…>
Branches:
master
Children:
ca39274
Parents:
a3227e7
Message:

fix obsolete state handling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • flexoentity/flexo_entity.py

    ra3227e7 r52ccac6  
    247247        # special case: marking obsolete
    248248        if target_state == EntityState.OBSOLETE:
     249            self.flexo_id = FlexOID(self.flexo_id.flexo_id[:-1] + "O")
    249250            self.state = target_state
    250251            return
     
    334335
    335336    def obsolete(self):
     337        allowed = self.allowed_transitions()
     338        if "OBSOLETE" not in allowed:
     339            raise ValueError(
     340                f"Illegal state transition: {self.state.name} -> OBSOLETE. "
     341                f"Allowed: {', '.join(allowed) or 'none'}"
     342            )
    336343        if self.state != EntityState.OBSOLETE:
    337344            self._transition(EntityState.OBSOLETE)
     
    387394        if new_state == EntityState.APPROVED:
    388395            self.approve()
    389         elif new_state == EntityState.SIGNED:
     396        elif new_state == EntityState.APPROVED_AND_SIGNED:
    390397            self.sign()
    391398        elif new_state == EntityState.PUBLISHED:
     
    394401            self.obsolete()
    395402        else:
    396             raise RuntimeError(f"No handler for state transition to {new_state.name}")
     403            raise RuntimeError(f"No handler for state transition to {new_state}")
Note: See TracChangeset for help on using the changeset viewer.