src/samples/3rdparty/basicconcept-syncall.msc
# found on
# http://leon.work.billydev.com/projects/billypds.core/tools/doc/sequence/
msc {
hscale="1.9", arcgradient="8";
# The entities
BILLY,YOU;
# Small gap before the boxes
|||;
# some arrows
YOU=>BILLY [ label = "call changes.xml?time=2012-01-01+12:01:01", linecolor="green" ];
YOU<=BILLY [ label = "give back type(s) and id's (22,33,44,55,66) of changed entities", linecolor="gray" ];
|||;
YOU rbox YOU [ linecolor="gray", textcolor="#555555", label = "if type='details' and amount > 0 in response" ];
YOU>>BILLY [ label = " then call details.xml?id=22,33", linecolor="green" ];
YOU<<BILLY [ label = "give back detailed propertie(s)", linecolor="gray" ];
YOU<=YOU [ label = "if property's status='live' then make property bookable", linecolor="green" ];
YOU<=YOU [ label = "if property's status='ready' or 'inactive' then make property not bookable", linecolor="green" ];
YOU<=YOU [ label = "update (or add new) properties in local db", linecolor="green" ];
YOU rbox YOU [ linecolor="gray", textcolor="#555555", label = "if type='availability' and amount > 0 in response" ];
YOU>>BILLY [ label = "then call availability.xml?id=22,33", linecolor="green" ];
YOU<<BILLY [ label = "give back detailed availability of propertie(s)", linecolor="gray" ];
YOU<=YOU [ label = "update (or add new) availability in local db", linecolor="green" ];
YOU rbox YOU [ linecolor="gray", textcolor="#555555", label = "if type='rates' and amount > 0 in response" ];
YOU>>BILLY [ label = "1) then call rates.xml?id=44", linecolor="green" ];
YOU>>BILLY [ label = "2) then call rate_anomaly.xml?id=44", linecolor="green" ];
YOU>>BILLY [ label = "3) then call rate_longstay.xml?id=44", linecolor="green" ];
YOU<<BILLY [ label = "response(s) of rates(1), markups/markdowns(2), longstay discount(3) of propertie(s)", linecolor="gray" ];
YOU<=YOU [ label = "update (or add new) in local db", linecolor="green" ];
YOU rbox YOU [ linecolor="gray", textcolor="#555555", label = "if type='provider' and amount > 0 in response" ];
YOU>>BILLY [ label = "1) then call providers.xml?id=66", linecolor="green" ];
YOU>>BILLY [ label = "2) then call details.xml?provider_id=66", linecolor="green" ];
YOU<<BILLY [ label = "response(s) with provider and details", linecolor="gray" ];
YOU<=YOU [ label = "update (or add new) provider(details) in local db", linecolor="green" ];
YOU rbox YOU [ linecolor="gray", textcolor="#555555", label = "if type='stay-minimum' and amount > 0 in response" ];
YOU>>BILLY [ label = "then call stay_minimum.xml?id=77", linecolor="green" ];
YOU<<BILLY [ label = "give back minimum stay of propertie(s)", linecolor="gray" ];
YOU<=YOU [ label = "update (or add new) propertie(s) in local db", linecolor="green" ];
YOU rbox YOU [ linecolor="gray", textcolor="#555555", label = "if type='booking' and amount > 0 in response" ];
YOU>>BILLY [ label = "then call booking_view.xml?id=77", linecolor="green" ];
YOU<<BILLY [ label = "give back detailed booking(s)", linecolor="gray" ];
YOU<=YOU [ label = "update (or add new) booking(s) in local db", linecolor="green" ];
|||;
BILLY rbox YOU [ label="You are synchronized! Repeat every 15 minutes", textbgcolour="#7fff7f" ];
YOU=>>YOU [ label = "lean back, drink coffee" ];
}
# ** = status 'live' = boekbaar, alle content aviable
# 'ready' = niet boekbaar,content maar nog niet avaiable / boekbaar
# 'inactive' = niet boekbaar,
#