Interface ServiceLevelRatioCalculatorInput
public interface ServiceLevelRatioCalculatorInput
A
ServiceLevelRatioCalculatorInput is an object providing
all required information for the Function returned by a
ServiceLevelRatioCalculator to override the default algorithm
that calculates the individual service level ratio for an Issue.- Since:
- 12.14
-
Method Summary
Modifier and TypeMethodDescriptionlongThe method returns the calculation timestamp which is the current time when the loop for the calculation for all issues starts.doubleThe method returns the calculated default service level ratio for theIssue.longThe method returns the total elapsed time of theIssuein milliseconds since it has been created.longThe method returns the sum of inactive time of theIssuein milliseconds, e.g.longbooleanThe method returns true if the calculation must subtract any inactive time periods like inactive business hours.
-
Method Details
-
getCalculationTimestamp
long getCalculationTimestamp()The method returns the calculation timestamp which is the current time when the loop for the calculation for all issues starts. AServiceLevelRatioCalculatoralways should use the calculation timestamp to calculate the service level ratio instead ofSystem.currentTimeMillis(). During a calculation loop over all issues in the backlog it is necessary to calculate all individual issues with the same calculation timestamp in order to avoid general contract violation of sort algorithms.- Returns:
- the calculation timestamp for the calculation which equals the time at the start of the current service level calculation loop
- Since:
- 12.14
-
getElapsedServiceLevelTime
long getElapsedServiceLevelTime()The method returns the total elapsed time of theIssuein milliseconds since it has been created. This time is used by the default algorithm to calculate the service level ratio for anIssue.- Returns:
- the total elapsed time of the
Issuesince creation in milliseconds. - Since:
- 12.14
-
getInactiveServiceLevelTime
long getInactiveServiceLevelTime()The method returns the sum of inactive time of theIssuein milliseconds, e.g. the time passed during inactive business hours.- Returns:
- the total inactive time of the
Issuein milliseconds. - Since:
- 12.14
-
getTargetServiceLevelTime
long getTargetServiceLevelTime()The method returns the target service level time defined by theCategoryconfiguration of theIssue. If theCategorydoes not define a target service level time then the target service level time defined by theTenantof theIssuewill be returned. If theTenantdoes not define a target service level time then the target service level time defined by the global system configuration will be returned. -
getDefaultServiceLevelRatio
double getDefaultServiceLevelRatio()The method returns the calculated default service level ratio for theIssue.- Returns:
- the service level ratio of the default implementation
- Since:
- 12.14
-
isSubstractInactiveTimeRequired
boolean isSubstractInactiveTimeRequired()The method returns true if the calculation must subtract any inactive time periods like inactive business hours. If aServiceLevelRatioCalculatorplugin provides a specific function to calculate the service level ratio of anIssueit has to calculate the ratio either with or without considering the inactive time periods of theIssuedepending on the return value of this method. To get the absolute waiting time please refer to the methodgetElapsedServiceLevelTime(). To get the inactive time periods please refer to the methodgetInactiveServiceLevelTime().- Returns:
- indicates whether the calculation has to subtract any inactive time periods during calculation
- Since:
- 12.14
-