Getting Started


Step 1: Install the latest Breezz Package

The Breezz Package should be installed for System Administrators only.

You have to assign Breezz Admin permission set to any user who should be able to configure Breezz Framework.


Step 2: Breezz Configuration

Breezz framework offers multiple interfaces and virtual classes that can be implemented or extended. However, Managed Packages do not recognize public classes from different namespaces. To enable Breezz to dynamically create instances of public classes within the package subscriber’s scope, Breezz Plugin class has to be introduced. You can either create such a class in your organization manually, or you can generate it from Breezz UI. Once you have done this, make sure that Breezz SetupGeneral SetupPlugins ConfigurationBase Apex Plugin is populated with yout BreezzPlugin class.

Breezz Plugin Configuration Breezz Plugin Configuration

 1global with sharing class BreezzPlugin implements forvendi.BreezzPlugins.BaseApexPlugin {
 2    global Object createInstance(String className) {
 3        if (String.isBlank(className)) {
 4            return null;
 5        }
 6
 7        Type classType = Type.forName(className);
 8        return classType?.newInstance();
 9    }
10
11    global Boolean hasCustomPermission(String permissionName) {
12        return FeatureManagement.checkPermission(permissionName);
13    }
14
15    global forvendi.ApexTypeInfo[] searchForClassImplementation(
16            String searchText,
17            String interfaceName,
18            Integer numberOfRecord) {
19        forvendi.ApexTypeInfo[] classInfo = new forvendi.ApexTypeInfo[]{};
20        for (ApexTypeImplementor apexType : [SELECT ClassName, ClassNamespacePrefix
21                FROM ApexTypeImplementor
22                WHERE ClassName LIKE :( '%' + searchText + '%') AND IsConcrete=TRUE AND InterfaceName =:interfaceName
23                ORDER BY ClassName ASC
24                LIMIT :numberOfRecord]) {
25            forvendi.ApexTypeInfo typeInfo = new forvendi.ApexTypeInfo();
26            typeInfo.className = apexType.ClassName;
27            typeInfo.classNamespacePrefix = apexType.ClassNamespacePrefix;
28            classInfo.add(typeInfo);
29        }
30
31        return classInfo;
32    }
33}

Step 3: Start the Breezz Scheduler

Breezz Scheduler is activated from the Dashboard. Breezz Scheduler is used to run scheduled jobs in configurable time intervals and also is used for internal processes like platform health metrics calculation. Scheduler Stats Scheduler Stats To run Breezz Scheduler:

  • login as System User
  • go to the Breezz App application → click Dashboard → and click Start Scheduler button.

Breezz Scheduler can also be started manually from Apex, to start Scheduler please log in as System User (user with Breezz Admin permission which is responsible for internal system processes) and run below Apex script from the Developer Console → Debug → Open Execute Anonymous Window:

forvendi.BreezzApi.SCHEDULER.run();

Above code should generate Breezz Scheduler Job records based on the Breezz Scheduler Config and Breezz Metric Config.

All changes in the Scheduler Jobs or Breezz Metrics are automatically applied every 10 minutes, to speed up job recreation please use below Apex script (remember to use System User).

forvendi.BreezzApi.SCHEDULER.kill();
forvendi.BreezzApi.SCHEDULER.run();

or

forvendi.BreezzApi.SCHEDULER.rerun();

Step 4: (required for non validated package) Allow to Deploy Metadata from Non-Certified Package Versions via Apex

Go to the SetupApex Settings and mark the Deploy Metadata from Non-Certified Package Versions via Apex flag.

Apex Metadata Apex Metadata


Step 5: (optional) Disable or change the Metrics Lifespan

The Developer sandboxes have limited data storage this is why we should reduce the number of created metrics records.

  • To disable metrics functionality go to the Breezz App → click Metrics Setup → select the Disable in the Enable Metrics dropdown as below: Metrics Setup Disable Metrics Setup Disable

  • To change the Metrics records lifespan go to the Breezz App → click Metrics Setup → select the Enable in the Enable Metrics dropdown and change Metrics Lifespan value to 2 days as in following screenshot: Metrics Setup Enable Metrics Setup Enable