| '------------------------------------------------------------------------------- |
| ' Copyright (c) 2020-2021, Arm Limited and Contributors. All rights reserved. |
| ' |
| ' SPDX-License-Identifier: BSD-3-Clause |
| ' |
| '------------------------------------------------------------------------------- |
| |
| @startuml |
| |
| class service_location_strategy |
| { |
| {abstract} service_context query(service_name) |
| } |
| |
| class service_locator <<singleton>> |
| { |
| void init() |
| void register_strategy(strategy) |
| service_context query(service_name) |
| } |
| |
| service_locator --> "0..*" service_location_strategy |
| |
| @enduml |