arcadia 7; // Separate lifetime probe: preserve this authored note and all stable IDs. project lifetime_probe "Delayed receiver lifetime" id "20000000-0000-4000-8000-000000000001" { oa_activity prepare "Prepare request" id "20000000-0000-4000-8000-000000000002" {} oa_activity serve "Serve request" id "20000000-0000-4000-8000-000000000003" {} interaction service "Service request" id "20000000-0000-4000-8000-000000000004" { source @prepare; target @serve; } oa_scenario lifetime_conversation "Receiver created on demand" id "20000000-0000-4000-8000-000000000005" { viewpoint OperationalActivity; steps [@before_birth, @create_receiver, @service_call, @delete_receiver]; } oa_lifeline requester "Requester" id "20000000-0000-4000-8000-000000000006" { parent @lifetime_conversation; represented @prepare; } oa_lifeline provider "Provider" id "20000000-0000-4000-8000-000000000007" { parent @lifetime_conversation; represented @serve; } oa_occurrence before_birth "Prepare before receiver exists" id "20000000-0000-4000-8000-000000000008" { parent @lifetime_conversation; body { Action { action @prepare; lifeline @requester; }; }; } oa_occurrence create_receiver "Create receiver" id "20000000-0000-4000-8000-000000000009" { parent @lifetime_conversation; body { Exchange { exchange @service; sender @requester; receiver @provider; message_kind Create; }; }; } oa_occurrence service_call "Call receiver" id "20000000-0000-4000-8000-00000000000a" { parent @lifetime_conversation; body { Exchange { exchange @service; sender @requester; receiver @provider; message_kind Call; }; }; } // Death ends the visible activation but deliberately does not invent a Reply. oa_occurrence delete_receiver "Delete receiver" id "20000000-0000-4000-8000-00000000000b" { parent @lifetime_conversation; body { Exchange { exchange @service; sender @requester; receiver @provider; message_kind Delete; }; }; } }