WCM, Sling and JCR Helpers

WCM, Sling and JCR Helpers

Most of what is listed here is either implemented as part of http://wcm.io/ as small helper methods or sling/wcm commons functionality - or obsolete/superseded by Sling and AEM functionality.

Application Helper Features

  • Prio 2 Page object cache infrastructure extensible by page object readers

  • Later DOM HTML API and Java-based Component Model

    • If we still require this type of components

  • Prio 2 Content types/Mime types, File extension

  • Prio 2 Escape helper methods

  • Prio 2 URL Parameter parsing methods

  • Prio 2 Version information: Make the version(s) of the deployed application accessible from the outside via (hidden) URL

WCM Helper Features

  • Prio 2 Common page and resource filter implementations

  • Prio 2 Helper for ignoring well-known AEM properties with special meanings, or resources with it (e.g. from MSM that hides components that are deleted with an MSM inheritance, but still present in the repository)

  • Prio 2 htx -> html redirection

WCM Helper Templates

  • Prio 1 Text Resource Template

  • Later "Directory Upload" Template - Supports uploading a ZIP that is extracted into a folder structure - supports uploading of whole microsites with static HTML and resources or other mini frontend-only applications that can be references via their URL

  • Prio 1 "Structure Element" Template

  • Later "Smart Activate Tree" Template - Does not single page activation, but packages a content package with all relevant packages, activates the whole content package to the publish instances, and marks the relevant pages as activated

Sling Helper Features

  • Prio 2 Helpers for detection resource modifications and set not-modified-since headers

  • Prio 1 Abstract default implementation of background service with best practices

    • Avoid long-running JCR sessions

    • Do not use administrative session

    • Cluster/topology-aware

    • Provide dependency injection

  • Prio 2 Helper classes for resource types, run modes, Sling URLs

    • Check which of these features are available in Sling API as well, or where Sling API may be fixed or extended

    • Proper support of run modes, remove old-style runmode support already deprecated in Sling/CQ

  • Prio 1 adaptTo extension for "adaptNotNull"

  • Prio 2 Sling Suffix handler infrastructure (maybe with an API that is easier to understand)

JCR Helper Features

  • Later Helper methods for handling binary nodes and mime types inside JCR