...
Model | The generic model (IPage / IComponent / etc) should be ported to the new framework. Since the model service from a DXA perspective shouldn't use the generic model anyway, there is no conflict. This applies to the default implementation of the model as well as the contracts. In many implementations the implementation is used instead of the interface, because the interface is read-only. |
Factories | DD4T 2 has factories that give access to generic types (IPage, IComponentPresentation, etc). This is indispensible, so we must include this in our facade. |
ViewModels (factory + attributes) | The entire ViewModel layer must be included in the facade. That - combined with the fact that the PageFactory / ComponentPresentationFactory are also in the facade - will guarantee that the DD4T ViewModels will continue to work. |
Caching | The ICacheAgent interface must still be supported as well as the DefaultCacheAgent and NullCacheAgent implementations. This should not be a problem. Should have: support for JMS listener approach (unless DXA 2 contains a better alternative for cache invalidation). |
Configuration | The IDD4TConfiguration interface must be supported. The exposed properties (settings) must be mapped to the new settings in DXA 2. |
Link resolving | ILinkResolver and DefaultLinkResolver must be supported. |
Rich text resolving | IRichTextResolver and DefaultRichTextResolver must be supported. |
Publication resolving | IPublicationResolver and DefaultPublicationResolvermust be supported. |
MVC |
|
Binaries | The DD4T approach to SDL-managed binaries is to store them on the file system when they are requested the first time, and serve them from there on subsequent requests. This approach must continue to be supported. Support for the BinaryDistributionModule is optional (it's also fine if this is replaced by a better alternative). |
Image resizing | ImageHelper.ResizeToWidth should be supported (or an alternative must be offered) → only affects views so lower prio |
XPM |
|
Providers | The Tridion/SDLWeb providers themselves are a nice to have, but the interface should be supported. I don't know of any custom implementations but it is conceivable. |
Other stuff |
|
...