diff options
Diffstat (limited to 'doc/sphinx/uml/lease-states.uml')
-rw-r--r-- | doc/sphinx/uml/lease-states.uml | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/doc/sphinx/uml/lease-states.uml b/doc/sphinx/uml/lease-states.uml new file mode 100644 index 0000000..66de2bb --- /dev/null +++ b/doc/sphinx/uml/lease-states.uml @@ -0,0 +1,38 @@ +@startuml + +title lease states (Kea 1.8.0) + +agent "Free" as free +note left : not in the lease database + +agent "Assigned" as assigned + +agent "Assigned expired" as assigned_expired + +agent "Declined" as declined + +agent "Declined expired" as declined_expired + +agent "Expired-Reclaimed" as reclaimed + +free ---> assigned : assignment + +assigned -> assigned_expired : after valid lifetime +assigned -> assigned : renew query +assigned ---> declined : decline query +assigned -up-> free : release query + +declined --> declined_expired : after probation period + +assigned_expired -up-> assigned : reuse +declined_expired -up-> assigned : reuse + +assigned_expired ---> reclaimed : reclaim +declined_expired ---> free : remove + +reclaimed -up-> assigned : reuse +reclaimed -up--> free : remove + +declined_expired -[hidden]-> reclaimed + +@enduml |