1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- @startuml
- participant auth as "b10-auth"
- [-> auth: new/initial config\n(datasrc cfg)
- activate auth
- participant list as "Configurable\nClientList"
- create list
- auth -> list: <<construct>>
- auth -> list: configure(cfg)
- activate list
- create CacheConfig
- list -> CacheConfig: <<construct>> (cfg)
- participant zt_segment as "ZoneTable\nSegment\n(Mapped)"
- create zt_segment
- list -> zt_segment: <<construct>>
- list -> zt_segment: isWritable()
- activate zt_segment
- note over zt_segment: Segment not writable\nwhen not reset
- zt_segment --> list: false
- deactivate zt_segment
- deactivate list
- auth -> list: getStatus()
- activate list
- list --> auth: DataSourceStatus[]
- deactivate list
- [<- auth: subscribe to\nmemmgr group
- deactivate auth
- ...
- [-> auth: command from\nmemmgr\n(datasrc_name,\nsegmentparam)
- activate auth
- auth -> list: resetMemorySegment\n(datasrc_name,\nREAD_ONLY,\nsegmentparam)
- activate list
- list -> zt_segment: reset\n(READ_ONLY,\nsegmentparam)
- activate zt_segment
- participant segment as "Memory\nSegment\n(Mapped)"
- create segment
- zt_segment -> segment: <<construct>>
- deactivate zt_segment
- deactivate list
- deactivate auth
- ...
- [-> auth: command from\nmemmgr\n(datasrc_name,\nsegmentparam)
- activate auth
- auth -> list: resetMemorySegment\n(datasrc_name,\nREAD_ONLY,\nsegmentparam)
- activate list
- list -> zt_segment: reset\n(READ_ONLY,\nsegmentparam)
- activate zt_segment
- zt_segment -> segment: <<destroy>>
- destroy segment
- participant segment.2 as "Memory\nSegment\n(Mapped)\n2"
- create segment.2
- zt_segment -> segment.2: <<construct>>
- deactivate zt_segment
- deactivate list
- deactivate auth
- ...
- [-> auth: reload\n(zonename)
- activate auth
- auth -> list: getCachedZoneWriter\n(zone_name)
- activate list
- list -> zt_segment: isWritable()
- activate zt_segment
- note over zt_segment: Segment not writable\nas it is READ_ONLY
- zt_segment --> list: false
- deactivate zt_segment
- list --> auth: CACHE_NOT_WRITABLE
- deactivate list
- deactivate auth
- @enduml
|