| // Copyright 2018 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| library fuchsia.modular; |
| |
| /// The IntentHandler interface is exposed by modules which wish to handle |
| /// intents on the behalf of other modules or agents. |
| /// |
| /// The modular framework expects any module which declares support for intent |
| /// handling in its module manifest to expose IntentHandler in its outgoing |
| /// services. |
| /// |
| /// Any time the framework receives an intent which is to be handled by a specific |
| /// module its `IntentHandler` will be called with the intent it is meant to handle. |
| [Discoverable] |
| protocol IntentHandler { |
| /// Handles the provided intent. Any links referenced in the intent parameters |
| /// will be in the namespace of the handling component, and can be retrieved via |
| /// `ModuleContext.GetLink`. |
| HandleIntent(Intent intent); |
| }; |