public abstract class AbstractScoreDefinition<S extends Score<S>> extends Object implements ScoreDefinition<S>, Serializable
ScoreDefinition.ScoreDefinition,
HardSoftScoreDefinition,
Serialized Form| Constructor and Description |
|---|
AbstractScoreDefinition(String[] levelLabels) |
| Modifier and Type | Method and Description |
|---|---|
protected static BigDecimal |
divide(BigDecimal dividend,
BigDecimal divisor) |
protected static double |
divide(double dividend,
double divisor) |
protected static int |
divide(int dividend,
int divisor) |
protected static long |
divide(long dividend,
long divisor) |
String |
formatScore(S score)
|
String |
getInitLabel()
Returns the label for
Score.getInitScore(). |
String[] |
getLevelLabels()
Returns a label for each score level.
|
int |
getLevelsSize()
Returns the length of
Score.toLevelNumbers() for every Score of this definition. |
boolean |
isCompatibleArithmeticArgument(Score score) |
protected static BigDecimal |
sanitize(BigDecimal number) |
protected static double |
sanitize(double number) |
protected static int |
sanitize(int number) |
protected static long |
sanitize(long number) |
String |
toString() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitbuildOptimisticBound, buildPessimisticBound, buildScoreHolder, buildScoreInliner, divideBySanitizedDivisor, fromLevelNumbers, getFeasibleLevelsSize, getOneSoftestScore, getScoreClass, getZeroScore, isNegativeOrZero, isPositiveOrZero, parseScorepublic AbstractScoreDefinition(String[] levelLabels)
levelLabels - never null, as defined by ScoreDefinition.getLevelLabels()protected static int sanitize(int number)
protected static long sanitize(long number)
protected static double sanitize(double number)
protected static BigDecimal sanitize(BigDecimal number)
protected static int divide(int dividend,
int divisor)
protected static long divide(long dividend,
long divisor)
protected static double divide(double dividend,
double divisor)
protected static BigDecimal divide(BigDecimal dividend, BigDecimal divisor)
public String getInitLabel()
ScoreDefinitionScore.getInitScore().getInitLabel in interface ScoreDefinition<S extends Score<S>>ScoreDefinition.getLevelLabels()public int getLevelsSize()
ScoreDefinitionScore.toLevelNumbers() for every Score of this definition.
For example: returns 2 on HardSoftScoreDefinition.getLevelsSize in interface ScoreDefinition<S extends Score<S>>public String[] getLevelLabels()
ScoreDefinition{"hard score", "soft score "} on HardSoftScoreDefinition.
It does not include the ScoreDefinition.getInitLabel().
getLevelLabels in interface ScoreDefinition<S extends Score<S>>ScoreDefinition.getLevelsSize(), each element is never nullpublic String formatScore(S score)
ScoreDefinitionformatScore in interface ScoreDefinition<S extends Score<S>>score - never nullScoreDefinition.parseScore(String)public boolean isCompatibleArithmeticArgument(Score score)
isCompatibleArithmeticArgument in interface ScoreDefinition<S extends Score<S>>score - never nullScore.add(Score),
Score.subtract(Score) and Comparable.compareTo(Object) for scores of this score definition.Copyright © 2006–2021 JBoss by Red Hat. All rights reserved.