Broadleaf Microservices
  • v1.0.0-latest-prod

TMForum Extensions Module

Important
The TMForum Extension Library is not available for general use. An extended commercial license is needed in order to obtain and use this functionality. Please contact a Broadleaf representative for more details

Background

TMForum is global association of telco and tech companies. Members of this alliance consist of several organizations and leaders in the communications and digital service providers (CSPs), telephony, cable operators, network operators, cloud providers, digital infrastructure providers, software suppliers, and equipment suppliers space. One of the primary goals and responsibilities of this forum is to maintain a set of: Frameworks, Recipes, Standards, and Blueprints to help align and unlock value and new opportunities in this ecosystem - holistically referred to as the Open Digital Architecture (ODA).

As of 2024, Broadleaf has joined TMForum as a member and will be contributing to and building out framework capabilities to adopt TMForum specific standards.

Architecture

TMForum has very specific requirements around API implementations, and with those requirements come a lot of net new concepts.

In Broadleaf, we have separated these TMF-specific concepts into a series of extension modules that sit on top of the base Broadleaf framework. The details around module structure are explained in this article.

As an example, TMF687 provides a standardized mechanism and API in support of Stock Management concepts. In Broadleaf, stock management concerns are handled through Inventory Services. When you deploy Inventory Services and the broadleaf-tmforum-inventory-services module is available alongside it as an included dependency, additional endpoints and TMForum specific domains will be available for use.

Enabling TMForum Compliant APIs

Important
The TMForum Extension Library is not available for general use. An extended commercial license is needed in order to obtain and use this functionality. Please contact a Broadleaf representative for more details

Manifest-based Projects

For manifest-based Broadleaf projects, you will need to register the following TMForum Extensions dependency in your manifest.yml file.

extensions:
- artifactId: broadleaf-tmforum-starter-base
  groupId: com.broadleafcommerce.microservices
  version: [x.y.z-version]

Once you’ve added this to your manifest, you can just run ./mvnw clean install flex:generate to update your flex packages accordingly.

Legacy Project Structure

If you are not using a manifest-based project, you will need to manually define the TMForum Extension Maven dependency in every Flex Package that you are running (e.g. browse, cart, processing, and supporting if running the Balanced Flex Package).

<dependency>
    <groupId>com.broadleafcommerce.microservices</groupId>
    <artifactId>broadleaf-tmforum-starter-base</artifactId>
    <version>[x.y.z-version]</version>
</dependency>

Supported TMForum Open APIs

Table 1. Broadleaf TMForum API Support with required core service
TMForum API TMForum API Version Support Extended Broadleaf Service(s)

TMF620 - Catalog Management

v5

Catalog Services, Pricing Services

TMF687 - Stock Management

v4

Inventory Services