You are here:
Abstraction Framework for Multiplay Subscription Management (Managed Package)
The abstraction framework is a blackbox service that provides an interface between the Multiplay Subscription Management product model and the core components (such as the OmniScripts and Integration Procedures) that interact with the product model.
This feature is part of the Communications Cloud managed package.
When you start using Multiplay Subscription Management, it is configured to work with the reference product model that it is associated with by default. However, as different mobile service providers organize their product models in different ways, Multiplay Subscription Management workflows are designed so that they can be quickly and easily configured for use with different product models. The abstraction framework makes it possible to configure different product models and switch from one product model to another without making extensive changes to the Multiplay Subscription Management workflows and core components.
This framework relies on custom metadata to represent the product model. When the product model changes, the custom metadata used by the abstraction framework must be updated accordingly, but changes to the core components used by workflows are minimal.
- About the Abstraction Framework (Managed Package)
The abstraction framework uses an Integration Procedure to get input from a workflow, query the product model based on that input, and update products, attributes, or fields, as required. In Multiplay Subscription Management workflows, the abstraction framework Integration Procedure is invoked in various workflows from the relevant OmniScripts or Integration Procedures. - Abstraction Framework Concepts and Terminology (Managed Package)
The abstraction framework abstracts out the essential structure of a product model so that it can locate a product or an attribute anywhere in the product model, without any knowledge of the product model itself. - Customize the Abstraction Framework (Managed Package)
When you get started with your Multiplay Subscription Management org, the workflows are configured to use the abstraction framework by default. However, if you want to use the same workflows on a different product model, if you want to extend the product model, or if you want to modify the workflows or create new workflows that use the abstraction framework, then you will need to update or extend the abstraction framework. - Use Custom Metadata to Represent Your Product Model (Managed Package)
Using the abstraction framework requires you to accurately represent your product model by providing custom metadata in the format the framework expects. Here are a few examples of how a product and an attribute can be represented using custom metadata. - Update the Custom Metadata for Your Product Model (Managed Package)
To enable the abstraction framework to access your product model, the custom metadata corresponding to your product model must be made available in your org. You can make your custom metadata available in your org in various ways. - Abstraction Framework Methods and Patterns (Managed Package)
The abstraction framework is implemented using Integration Procedures and Apex classes. The Apex classes include several methods and patterns that are used to fetch data from a specified order, match the input expected to the input received from the workflow, and then update the data based on the input received from the workflow. - Options for the Abstraction Framework (Managed Package)
The abstraction framework provides options that allow you to make changes in an order at a grandular and well defined level. For complex or deep product model hierachies, you can constrain the query to specific levels of the product model. For orders where a product can occur in multiple line items, you can specify a context ID to ensure that changes are made to the appropriate line item only.

