Commit 196c9f80 authored by Mukund Sivaraman's avatar Mukund Sivaraman
Browse files

Merge branch 'trac3040'

parents 7f4bf2e2 dbabac08
@startuml
participant auth as "b10-auth"
participant auth as ":b10-auth"
[-> auth: new/initial config\n(datasrc cfg)
activate auth
participant list as "Configurable\nClientList"
participant list as ":Configurable\nClientList"
create list
auth -> list: <<construct>>
auth -> list: configure(cfg)
activate list
create CacheConfig
list -> CacheConfig: <<construct>> (cfg)
participant cache_config as ":CacheConfig"
create cache_config
list -> cache_config: <<construct>> (cfg)
participant zt_segment as "ZoneTable\nSegment\n(Local)"
participant zt_segment as ":ZoneTable\nSegment\n(Local)"
create zt_segment
list -> zt_segment: <<construct>>
activate zt_segment
create ZoneTable
zt_segment -> ZoneTable: <<construct>>
participant zone_table as ":ZoneTable"
create zone_table
zt_segment -> zone_table: <<construct>>
deactivate zt_segment
......@@ -30,47 +32,50 @@ note over zt_segment: Local segments are\nalways writable
zt_segment --> list: true
deactivate zt_segment
loop for each zone in CacheConfig
list -> CacheConfig: getLoadAction()
activate CacheConfig
loop for each zone in cache_config
list -> cache_config: getLoadAction()
activate cache_config
create LoadAction
CacheConfig -> LoadAction: <<construct>>
participant la1 as "la1:LoadAction"
create la1
cache_config -> la1: <<construct>>
participant LoadAction.2
participant la2 as "la2:LoadAction"
CacheConfig --> list : LoadAction
cache_config --> list : la1
deactivate CacheConfig
deactivate cache_config
create ZoneWriter
list -> ZoneWriter: <<construct>> (load_action)
participant w1 as "w1:ZoneWriter"
create w1
list -> w1: <<construct>> (la1)
participant ZoneWriter.2
participant w2 as "w2:ZoneWriter"
list -> ZoneWriter: load()
activate ZoneWriter
ZoneWriter -> LoadAction: (funcall)
activate LoadAction
list -> w1: load()
activate w1
w1 -> la1: (funcall)
activate la1
create ZoneData
LoadAction -> ZoneData: <<construct>> via helpers
participant zd1 as "zd1:ZoneData"
create zd1
la1 -> zd1: <<construct>> via helpers
participant ZoneData.2
participant zd2 as "zd2:ZoneData"
LoadAction --> ZoneWriter: ZoneData
deactivate LoadAction
deactivate ZoneWriter
la1 --> w1: zd1
deactivate la1
deactivate w1
list -> ZoneWriter: install()
activate ZoneWriter
list -> w1: install()
activate w1
ZoneWriter -> ZoneTable: addZone(ZoneData)
activate ZoneTable
ZoneTable --> ZoneWriter: NULL (no old data)
deactivate ZoneTable
w1 -> zone_table: addZone(zd1)
activate zone_table
zone_table --> w1: NULL (no old data)
deactivate zone_table
deactivate ZoneWriter
deactivate w1
end
......@@ -82,55 +87,55 @@ deactivate auth
[-> auth: reload\n(zonename)
activate auth
auth -> list: getCachedZoneWriter\n(zone_name)
auth -> list: getCachedw1\n(zone_name)
activate list
list -> CacheConfig: getLoadAction()
activate CacheConfig
list -> cache_config: getLoadAction()
activate cache_config
create LoadAction.2
CacheConfig -> LoadAction.2: <<construct>>
create la2
cache_config -> la2: <<construct>>
CacheConfig --> list : LoadAction.2
cache_config --> list : la2
deactivate CacheConfig
deactivate cache_config
create ZoneWriter.2
list -> ZoneWriter.2: <<construct>> (load_action)
create w2
list -> w2: <<construct>> (la2)
list --> auth: ZoneWriter.2
list --> auth: w2
deactivate list
auth -> ZoneWriter.2: load()
activate ZoneWriter.2
ZoneWriter.2 -> LoadAction.2: (funcall)
activate LoadAction.2
auth -> w2: load()
activate w2
w2 -> la2: (funcall)
activate la2
create ZoneData.2
LoadAction.2 -> ZoneData.2: <<construct>> via helpers
create zd2
la2 -> zd2: <<construct>> via helpers
LoadAction.2 --> ZoneWriter.2: ZoneData.2
deactivate LoadAction.2
deactivate ZoneWriter.2
la2 --> w2: zd2
deactivate la2
deactivate w2
auth -> ZoneWriter.2: install()
activate ZoneWriter.2
auth -> w2: install()
activate w2
ZoneWriter.2 -> ZoneTable: addZone(ZoneData.2)
activate ZoneTable
ZoneTable --> ZoneWriter.2: ZoneData (old data)
deactivate ZoneTable
w2 -> zone_table: addZone(zd2)
activate zone_table
zone_table --> w2: zd1 (old data)
deactivate zone_table
deactivate ZoneWriter.2
deactivate w2
auth -> ZoneWriter.2: cleanup()
activate ZoneWriter.2
auth -> w2: cleanup()
activate w2
ZoneWriter.2 -> ZoneData: <<destroy>>
destroy ZoneData
deactivate ZoneWriter.2
w2 -> zd1: <<destroy>>
destroy zd1
deactivate w2
deactivate auth
......
@startuml
participant auth as "b10-auth"
participant auth as ":b10-auth"
[-> auth: new/initial config\n(datasrc cfg)
activate auth
participant list as "Configurable\nClientList"
participant list as ":Configurable\nClientList"
create list
auth -> list: <<construct>>
auth -> list: configure(cfg)
activate list
participant CacheConfig as ":CacheConfig"
create CacheConfig
list -> CacheConfig: <<construct>> (cfg)
participant zt_segment as "ZoneTable\nSegment\n(Mapped)"
participant zt_segment as ":ZoneTable\nSegment\n(Mapped)"
create zt_segment
list -> zt_segment: <<construct>>
......@@ -46,7 +47,7 @@ activate list
list -> zt_segment: reset\n(READ_ONLY,\nsegmentparam)
activate zt_segment
participant segment as "Memory\nSegment\n(Mapped)"
participant segment as "seg1:Memory\nSegment\n(Mapped)"
create segment
zt_segment -> segment: <<construct>>
......@@ -68,9 +69,9 @@ 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>>
participant segment2 as "seg2:Memory\nSegment\n(Mapped)"
create segment2
zt_segment -> segment2: <<construct>>
deactivate zt_segment
deactivate list
......
@startuml
participant memmgr as "memmgr"
participant memmgr as ":b10-memmgr"
[-> memmgr: new/initial config\n(datasrc cfg)
activate memmgr
participant list as "Configurable\nClientList"
participant list as ":Configurable\nClientList"
create list
memmgr -> list: <<construct>>
memmgr -> list: configure(cfg)
activate list
participant CacheConfig as ":CacheConfig"
create CacheConfig
list -> CacheConfig: <<construct>> (cfg)
participant zt_segment as "ZoneTable\nSegment\n(Mapped)"
participant zt_segment as ":ZoneTable\nSegment\n(Mapped)"
create zt_segment
list -> zt_segment: <<construct>>
......@@ -39,12 +40,13 @@ activate list
list -> zt_segment: reset\n(READ_WRITE,\nsegmentparam)
activate zt_segment
participant segment as "Memory\nSegment\n(Mapped)"
participant segment as "seg1:Memory\nSegment\n(Mapped)"
create segment
zt_segment -> segment: <<construct>>
participant segment.2 as "Memory\nSegment\n(Mapped)\n2"
participant segment.2 as "seg2:Memory\nSegment\n(Mapped)"
participant ZoneTable as ":ZoneTable"
create ZoneTable
zt_segment -> ZoneTable: <<construct>>
......@@ -65,17 +67,19 @@ activate list
list -> CacheConfig: getLoadAction()
activate CacheConfig
participant LoadAction as "la:LoadAction"
create LoadAction
CacheConfig -> LoadAction: <<construct>>
CacheConfig --> list : LoadAction
CacheConfig --> list : la
deactivate CacheConfig
participant ZoneWriter as "zw:ZoneWriter"
create ZoneWriter
list -> ZoneWriter: <<construct>> (load_action)
list -> ZoneWriter: <<construct>> (la)
list --> memmgr: ZoneWriter
list --> memmgr: zw
deactivate list
......@@ -85,17 +89,18 @@ activate ZoneWriter
ZoneWriter -> LoadAction: (funcall)
activate LoadAction
participant ZoneData as "zd:ZoneData"
create ZoneData
LoadAction -> ZoneData: <<construct>> via helpers
LoadAction --> ZoneWriter: ZoneData
LoadAction --> ZoneWriter: zd
deactivate LoadAction
deactivate ZoneWriter
memmgr -> ZoneWriter: install()
activate ZoneWriter
ZoneWriter -> ZoneTable: addZone(ZoneData)
ZoneWriter -> ZoneTable: addZone(zd)
activate ZoneTable
ZoneTable --> ZoneWriter: NULL (no old data)
deactivate ZoneTable
......
@startuml
participant memmgr as "memmgr"
participant memmgr as ":b10-memmgr"
[-> memmgr: reload\n(zonename)
activate memmgr
participant list as "Configurable\nClientList"
participant list as ":Configurable\nClientList"
memmgr -> list: getCachedZoneWriter\n(zone_name)
activate list
participant CacheConfig
participant CacheConfig as ":CacheConfig"
participant zt_segment as "ZoneTable\nSegment\n(Mapped)"
participant segment as "Memory\nSegment\n(Mapped)"
participant segment.2 as "Memory\nSegment\n(Mapped)\n2"
participant zt_segment as ":ZoneTable\nSegment\n(Mapped)"
participant segment as "existing:Memory\nSegment\n(Mapped)"
participant segment2 as "new:Memory\nSegment\n(Mapped)"
list -> zt_segment: isWritable()
activate zt_segment
......@@ -22,17 +22,18 @@ deactivate zt_segment
list -> CacheConfig: getLoadAction()
activate CacheConfig
participant ZoneTable
participant ZoneWriter
participant ZoneTable as ":ZoneTable"
participant ZoneWriter as "zw:ZoneWriter"
participant LoadAction as "la:LoadAction"
create LoadAction
CacheConfig -> LoadAction: <<construct>>
CacheConfig --> list: LoadAction
CacheConfig --> list: la
deactivate CacheConfig
create ZoneWriter
list -> ZoneWriter: <<construct>> (LoadAction)
list --> memmgr: ZoneWriter
list -> ZoneWriter: <<construct>> (la)
list --> memmgr: zw
deactivate list
memmgr -> ZoneWriter: load()
......@@ -40,21 +41,22 @@ activate ZoneWriter
ZoneWriter -> LoadAction: (funcall)
activate LoadAction
participant ZoneData
participant ZoneData as "zd_existing\n:ZoneData"
participant ZoneData2 as "zd_new\n:ZoneData"
create ZoneData.2
LoadAction -> ZoneData.2: <<construct>> via helpers
create ZoneData2
LoadAction -> ZoneData2: <<construct>> via helpers
LoadAction --> ZoneWriter: ZoneData.2
LoadAction --> ZoneWriter: zd_new
deactivate LoadAction
deactivate ZoneWriter
memmgr -> ZoneWriter: install()
activate ZoneWriter
ZoneWriter -> ZoneTable: addZone(ZoneData.2)
ZoneWriter -> ZoneTable: addZone(zd_new)
activate ZoneTable
ZoneTable --> ZoneWriter: ZoneData (old data)
ZoneTable --> ZoneWriter: zd_existing (old data)
deactivate ZoneTable
deactivate ZoneWriter
......@@ -77,8 +79,8 @@ activate zt_segment
zt_segment -> segment: <<destroy>>
destroy segment
create segment.2
zt_segment -> segment.2: <<construct>>
create segment2
zt_segment -> segment2: <<construct>>
deactivate zt_segment
deactivate list
......
......@@ -4,65 +4,65 @@ hide members
note "Automatic placement of classes\ndoesn't look good. This diagram\nhas to be improved." as n1
Auth "1" *-d-> "*" ConfigurableClientList
Auth -d-> DataSourceClient
Auth -d-> ZoneWriter
Auth -d-> ZoneTableAccessor
Auth -d-> DataSourceStatus
Auth -d-> ZoneTableIterator
ConfigurableClientList "1" *-d-> "*" DataSourceInfo
Auth "1" *--> "*" ConfigurableClientList
Auth --> DataSourceClient
Auth --> ZoneWriter
Auth --> ZoneTableAccessor
Auth --> DataSourceStatus
Auth --> ZoneTableIterator
ConfigurableClientList "1" *--> "*" DataSourceInfo
ConfigurableClientList ..> ZoneTableSegment : <<reset>>
ConfigurableClientList ..d-> DataSourceStatus : <<create>>
ConfigurableClientList ..> DataSourceStatus : <<create>>
ConfigurableClientList ..> ZoneWriter : <<create>>
ConfigurableClientList ..> ZoneTableAccessor : <<create>>
DataSourceInfo "1" *-u-> "*" DataSourceClient
DataSourceInfo "1" *-r-> "*" CacheConfig
DataSourceInfo "1" *-d-> "*" ZoneTableSegment
DataSourceInfo "1" *--> "*" DataSourceClient
DataSourceInfo "1" *--> "*" CacheConfig
DataSourceInfo "1" *--> "*" ZoneTableSegment
ZoneTableAccessor ..> ZoneTableIterator : <<create>>
ZoneTableAccessorCache -> CacheConfig
ZoneTableAccessorCache --> CacheConfig
ZoneTableAccessorCache ..> ZoneTableIteratorCache : <<create>>
ZoneTableAccessorCache -u-o ZoneTableAccessor
ZoneTableAccessorCache --o ZoneTableAccessor
ZoneTableIteratorCache -u-o ZoneTableIterator
ZoneTableIteratorCache -u-> CacheConfig
ZoneTableIteratorCache --o ZoneTableIterator
ZoneTableIteratorCache --> CacheConfig
ZoneWriter -d-> ZoneTableSegment
ZoneWriter --> ZoneTableSegment
ZoneWriter ..> ZoneData : add/replace
ZoneTableSegment "1" *-r-> "1" ZoneTableHeader
ZoneTableSegment "1" *-d-> "1" MemorySegment
ZoneTableSegment "1" *--> "1" ZoneTableHeader
ZoneTableSegment "1" *--> "1" MemorySegment
CacheConfig ..> LoadAction
LoadAction ..> ZoneData : create
LoadAction *-> ZoneDataLoader
LoadAction *--> ZoneDataLoader
ZoneDataLoader -> ZoneData
ZoneDataLoader *-> ZoneDataUpdater
ZoneDataLoader -> MemorySegment
ZoneDataLoader --> ZoneData
ZoneDataLoader *--> ZoneDataUpdater
ZoneDataLoader --> MemorySegment
ZoneDataUpdater -> ZoneData
ZoneDataUpdater --> ZoneData
ZoneDataUpdater ..> RdataSet : create
ZoneDataUpdater ..> RdataSet : add
ZoneTableHeader "1" *-d-> "1" ZoneTable
ZoneTable "1" *-d-> "1" ZoneData
ZoneData "1" *-d-> "1" RdataSet
ZoneTableHeader "1" *--> "1" ZoneTable
ZoneTable "1" *--> "1" ZoneData
ZoneData "1" *--> "1" RdataSet
loadFromFile -d-o LoadAction
IteratorLoader -d-o LoadAction
LoadFromFile --o LoadAction
IteratorLoader --o LoadAction
MemorySegmentMapped -d-o MemorySegment
MemorySegmentLocal -d-o MemorySegment
MemorySegmentMapped --o MemorySegment
MemorySegmentLocal --o MemorySegment
ZoneTableSegmentMapped -d-o ZoneTableSegment
ZoneTableSegmentLocal -d-o ZoneTableSegment
ZoneTableSegmentMapped --o ZoneTableSegment
ZoneTableSegmentLocal --o ZoneTableSegment
ZoneTableSegmentMapped *-d-> MemorySegmentMapped
ZoneTableSegmentLocal *-d-> MemorySegmentLocal
ZoneTableSegmentMapped *--> MemorySegmentMapped
ZoneTableSegmentLocal *--> MemorySegmentLocal
@enduml
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment