Global Class: DEPRECATED
From AgileApps Support Wiki
Revision as of 05:40, 9 July 2021 by imported>Aeric (moved Global Class to Global Class: DEPRECATED: DEPRECATED)
ISVs can create custom pages at global level for use by Tenants. This feature gives Service Providers the ability to design and build classes once, then make the custom work available to multiple tenants.
Users who are logged into a Service Provider tenancy can create custom pages.
To create a Global Class: Prerequisite Before you create a class, you need to decide what package to put it in. Here are a few notes to help you make that decision:
- Packages let you organize classes into different directories according to their functionality, their usability, or any other category that makes sense. (The only rule is that classes in one package have a qualitatively different kind of functionality compared with those in another package.)
- Packages help to avoid class name collision. (The same class name can be used in different packages.)
- Classes in the same package can access each others package-protected fields and methods, as well as their public members, without doing an import. So classes that cooperate with each other extensively generally belong in the same package.
- Classes that are part of a different package can be accessed with an import declaration.
To add a class:
- Click > Customization > Developer Resources > Classes
- Click [New Class]
- Fill in the class properties.
- Click [Next]
A class template appears. - Provide the code for the class.
- Click [Save]
Class properties
- Package
- The package name
- The platform supplies this part: com.platform.{namespace},
where {namespace} is defined in the Developer Configuration settings of the current tenancy. - You supply this part: {packagename}
- The result is the fully-qualified package path for the class: com.platform.{namespace}.{packagename}
- The platform supplies this part: com.platform.{namespace},
- Class Name
- The name of the class. Must consist of alphanumeric characters (a-z,A-Z,0-9) or underscores (_). Must start with an alphabetic character (a-z,A-Z) or underscore (_).
- Java code
- Enter Java code in the text area.
- Considerations
- Usage is hierarchical, meaning that:
- ISVs can create Global Classes, which can be used by Tenants
- Java Packages:
- The Package name of all classes starts with: com.platform.{namespace};
- The {namespace} is defined by the ISV as part of the Developer Configuration settings
- The namespace (along with the rest of the package path) must be specified to access the global class.
- Runtime considerations:
- At run time, ISV class loader loads the global class