Verint Community is committed to upgrade safety through use of supported APIs and extensibility points. As changes are required, obsolete APIs and extensibility points are identified in our API documentation and are only removed after a full version release after obsolescence. In the 12.x release, some previously obsolete APIs and extensibility points were removed according to this policy.
Support for Custom Property Controls Removed in Favor of Property Templates
In 10.2, a few UI extensibility points were marked as obsolete:
- Plugin types exposing configuration options using Telligent.DynamicConfguration directly (and indirectly configuration metadata referencing IPropertyControl implementations), specifically:
- ActivityStoryEmbeddableContentFragmentType (version 1)
- IApplicationMerger (version 1)
- IAuthenticationPlugin (version 1)
- IConfigurablePlugin (version 1)
- IContentConverter (version 1 and 2)
- ICustomNavigationPlugin (version 1)
- IEmbeddableContentFragmentType (version 1)
- IGroupCustomNavigationPlugin (version 1)
- IGroupDefaultCustomNavigationPlugin (version 1)
- IManageableApplicationType (version 1)
- IRenderableConfigurablePlugin (version 1)
- IRequiredConfigurationPlugin (version 1)
- IScriptedContentFragmentContextProvider (version 1)
- ISecuredApplicationMerger (version 1)
- ISecuredContentConverter (version 1 and version 2)
- ISiteCustomNavigationPlugin (version 1)
- IUserCustomNavigationPlugin (version 1)
- IUserDefaultCustomNavigationPlugin (version 1)
- IValidatableContentConverter (version 1)
- Widget/theme/automation configuration specifying custom control types or rule types by class name.
- Legacy code-based widgets dependent on System.Web.UI.Control-based rendering.
In 12.0, these obsolete extensibility points were removed as we continue to transition the codebase to be completely independent from ASP.Net server controls. The removal of this support improves the performance and control of dynamic configuration forms by only supporting the newer rendering pipeline.
Effects and Recommended Updates
Legacy Plugin Types
The plugin types listed above will no longer be recognized starting in version 12. Any implementation of these older types should be updated to a supported version (which were also made available when these types were first marked obsolete in 10.2). See Plugin API Documentation for specific versions and differences. In most cases, the only difference is in how configuration options are defined and the support for local property template definitions via extensions to the updated plugin type.
For plugins that made use of custom control types for configuration options, review Dynamic Configuration templates and rules and transition to those or implement custom property templates using the extension to the plugin type that requires the custom property UI or rule. Note that many old property controls were combined via configuration options on the property templates that replaced them--so be sure to review the options exposed by property templates, specifically, to see what is supported out of the box.
Legacy Widget/Theme/Automation Configuration
Legacy configuration in scripted customizations that referenced out-of-the-box property controls or rules will be automatically migrated at runtime to use the replacement shared property template or shared rule. When working on scripted customizations for 10.2+, it is recommended that you use the updated configuration definition syntax and embedded or shared property templates / rules instead of relying on the automatic migration (the migration will cause the site to run slightly slower as a replacement is found for legacy configuration definitions).
See also:
- Available shared property templates and rules
- How to embed a property template in a scripted customization
Legacy Compiled Widgets
Legacy compiled widgets should migrate to one of the following:
-
Telligent.Evolution.Extensibility.UI.Version2.IContentFragment
-
Telligent.Evolution.Extensiblity.UI.Version2.IInstanceBasedContentFragment
-
Telligent.Evolution.Extensibility.UI.Version2.ConfigurableContentFragmentBase
- A scripted widget