Ashish Chopra created SLING-7820:
------------------------------------

             Summary: Scheduler's WhiteboardHandler impl not in sync with 
Scheduler's Javadoc
                 Key: SLING-7820
                 URL: https://issues.apache.org/jira/browse/SLING-7820
             Project: Sling
          Issue Type: Bug
          Components: Commons
    Affects Versions: Commons Scheduler 2.7.2
            Reporter: Ashish Chopra
             Fix For: Commons Scheduler 2.7.2


[Sling Commons Scheduler's 
Javadoc|https://github.com/apache/sling-org-apache-sling-commons-scheduler/blob/d954255a750113c024a9323ed0d5d85d1ee69a5a/src/main/java/org/apache/sling/commons/scheduler/Scheduler.java#L26-L48]
 asserts that:
{quote} A job can be scheduled either by creating a {{ScheduleOptions}} 
instance through one of the scheduler methods and then calling 
{{schedule(Object, ScheduleOptions)}} or by using the whiteboard pattern and 
registering a Runnable service with either the 
{{PROPERTY_SCHEDULER_EXPRESSION}} or {{PROPERTY_SCHEDULER_PERIOD} property. *If 
both properties are specified, only {{PROPERTY_SCHEDULER_PERIOD}} is considered 
for scheduling.*{quote}
The part in *bold* above suggests that {{PROPERTY_SCHEDULER_PERIOD}} has a 
higher precedence than {{PROPERTY_SCHEDULER_EXPRESSION}} in case both are 
present for a component.
However, the implementation in 
[{{WhiteboardHandler#register}}|https://github.com/apache/sling-org-apache-sling-commons-scheduler/blame/d954255a750113c024a9323ed0d5d85d1ee69a5a/src/main/java/org/apache/sling/commons/scheduler/impl/WhiteboardHandler.java#L189]
 does the opposite. It gives {{PROPERTY_SCHEDULER_EXPRESSION}} a higher 
precedence by evaluating it first.

Either the Javadoc, or the implementation must be modified to keep both in sync.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to