Class AddFailedThumbnailActionExecuter

  • All Implemented Interfaces:
    ActionExecuter, LoggingAwareExecuter, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanNameAware

    public class AddFailedThumbnailActionExecuter
    extends ActionExecuterAbstractBase
    This ActionExecuter implementation is used to record a failed thumbnail attempt having occurred on a source node. For the specified thumbnail definition name and the specified failure datetime, this action executer applies the cm:failedThumbnailSource aspect and creates a cm:failedThumbnail child to store the failure data.

    Some pieces of content cannot be thumbnailed. This can happen for various reasons, e.g.

    • there is something in the content itself which is challenging, complex or not compliant with the relevant spec.
    • there is something missing from the relevant library/ies which are trying to produce the thumbnail.
    Some content can take a not insignificant amount of time in producing the thumbnail - only to fail. This cost is borne each time a create-thumbnail action is run on that content, which happens each time a user looks at the doclib page for that content in Share. For problematic documents that take a long time to fail, this can add up to a significant cpu cost on the repository server. Therefore we limit the frequency with which the repository retries to create thumbnails.

    The details of how these thumbnail creations are limited is described in NodeEligibleForRethumbnailingEvaluator.

    Since:
    3.5.0
    Author:
    Neil Mc Erlean
    See Also:
    FailedThumbnailInfo, NodeEligibleForRethumbnailingEvaluator, ThumbnailServiceImpl.init()
    • Field Detail

      • PARAM_THUMBNAIL_DEFINITION_NAME

        public static final java.lang.String PARAM_THUMBNAIL_DEFINITION_NAME
        The name of the failed thumbnail definition e.g. doclib.
        See Also:
        Constant Field Values
      • PARAM_FAILURE_DATETIME

        public static final java.lang.String PARAM_FAILURE_DATETIME
        The parameter defines the failure datetime to be recorded against the source node. We explicitly require a parameterised value for this (rather than simply using 'now') because this action is executed asynchronously and there is the possibility that the time of action execution is later than the actual failure time.
        See Also:
        Constant Field Values
    • Constructor Detail

      • AddFailedThumbnailActionExecuter

        public AddFailedThumbnailActionExecuter()