Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

InterfaceRationaleExamplesKnown customersPriorityNotes
ILoggerImplement a different logging mechanismSerilog, MEFEssity, EcclesiasticalHigh
IDependencyMapperAdd dependency mapping independently from any DI implementation

For custom DI implementations: read dependency mappings

For any other customization: write dependency mappings

Essity, EcclesiasticalVery High
DD4T ViewModel base attributesSee ViewModel base attributes for a complete overviewVarious extensions to the ViewModel attributesFujitsu, Essity, RicohHigh
ICacheAgentImplement a different caching mechanismRedis, serialized cache agentEssity, EcclesiasticalHigh
IPublicationResolverImplement a custom publication resolving mechanismCommon practice is to create a publication resolver wrapped around the DynamicMappingsRetriever (which isn't out of the box in DD4T). Other use cases would be to use browser settings or Geolocation. ManyLowIn Web 8 one could argue that the DynamicMappingsRetriever is always an improvement, and DXA 2.0 does not support older Tridion versions.
ILoggerCritical, Error, Warning, Information, DebugLog through the mechanism provided by DD4TManyHigh
ILinkResolver / DefaultLinkResolverResolveUrl (2 overloads)Extend link resolving mechanismEssity, FujitsuHighExamples: to remove file extensions, always link to canonical url, cross-site scripting (Fujitsu)
IRichTextResolver / DefaultRichTextResolverResolveExtend rich text resolving mechanismEssityHighExamples: select correct CDN url out of a set (used with ECL), custom logic depending on the schema of the target component
IMessageProviderStartCreate custom cache invalidation mechanismVasco, FujitsuMediumMostly used (I think) because of problems in the official DD4T version (see https://github.com/dd4t/DD4T.Caching.ApacheMQ).
ILoggerCritical, Error, Warning, Information, DebugLog through the mechanism provided by DD4TManyHigh
ILinkResolver / DefaultLinkResolverResolveUrl (2 overloads)Extend link resolving mechanismEssity, FujitsuHighExamples: to remove file extensions, always link to canonical url, cross-site scripting (Fujitsu)
IRichTextResolver / DefaultRichTextResolverResolve
Essity
Select correct CDN url out of a set (used with ECL)
IPageProvider / IComponentPresentationProvider / IBinaryProvider /