Oracle Fusion Middleware Java API Reference for Oracle ADF Mobile Client
11g Release 1 (11.1.1)

E17503-02

oracle.jbo.rules
Class JboPrecisionScaleValidator

java.lang.Object
  extended by oracle.jbo.rules.AbstractValidator
      extended by oracle.jbo.rules.JboAbstractValidator
          extended by oracle.jbo.rules.JboPrecisionScaleValidator
All Implemented Interfaces:
JboValidatorHints, JboValidatorInterface, ValidatorConstants, VariableManagerOwner, VariableManagerOwnerBase

public class JboPrecisionScaleValidator
extends JboAbstractValidator
implements JboValidatorInterface

Implements precision and scale validation for numeric attributes and length validation for string and character attributes. The framework applies this validator to Entity Object attributes whose definitions inlcude XML metadata precision or scale values.

This validator is invoked by an Entity Objects's validate() method when an attribute with defined precision or scale is modified.


Field Summary
static int DEFAULT_SCALE
           
 
Fields inherited from class oracle.jbo.rules.JboAbstractValidator
CLASS_INSTANCE, mValidatingAttr
 
Fields inherited from class oracle.jbo.rules.AbstractValidator
m_children, m_props, mbInverse, mDescription, mErrorMessageClass, mMsgExpr, mMsgId, mMsgIds, mResourceBundleId, mTriggeringAttributeNames, mTriggeringAttributes, mValidatingAttrName
 
Fields inherited from interface oracle.jbo.rules.ValidatorConstants
ATTR, ATTR_STR, EO, EO_STR, EQUALTO, EXPR, EXPR_STR, GREATERTHAN, GREATERTHANEQUALTO, JBO, JBO_STR, LESSTHAN, LESSTHANEQUALTO, LITERAL, LITERAL_STR, MANDATORY_STR, mCompOperTypeVals, mRhsTypeVals, mSeverityVals, PNAME_CompareLength, PNAME_CompareType, PNAME_CompareValue, PNAME_DataType, PNAME_ErrorMessageExpressions, PNAME_ErrorMessageId, PNAME_ErrorMessageIds, PNAME_Exposed, PNAME_ForPersonalization, PNAME_Inverse, PNAME_Name, PNAME_OnAttribute, PNAME_OnAttributes, PNAME_OnCondition, PNAME_OperandType, PNAME_Severity, PNAME_Subtype, PNAME_TransactionLevel, PNAME_ValidationBeanClass, PNAME_ValName, PNAME_xmlns, PRECISION_SCALE_STR, SEVERITY_ERROR, SEVERITY_RECOVERABLE_ERROR, SEVERITY_VETOABLE_WARNING, SEVERITY_WARNING, SQL, SQL_STR, VALIDATION_XMLNS, VALIDATOR_MSG_ID_PREFIX, VO, VO_STR, VO_USAGE, VO_USAGE_STR
 
Constructor Summary
JboPrecisionScaleValidator()
          Creates a default validator.
 
Method Summary
 java.lang.String getDefXMLElementTag()
           
 java.lang.String getDescription()
          Gets the description of this validator.
 java.lang.String getErrorMsgId()
           
 int getPrecision()
          Gets the precision value.
 int getScale()
          Gets the scale value.
static JboPrecisionScaleValidator getSingleton()
           
protected  void initialize(JboValidatorContext evObj)
           
 void setDescription(java.lang.String description)
          Sets the description of this validator.
 void setPrecision(int prec)
          Sets the precision value.
 void setScale(int scale)
          Sets the scale value.
 java.lang.String toString()
          Internal: Applications should not use this method.
 boolean validateValue(java.lang.Object value)
          Validates a value.
static boolean validateValue(java.lang.Object value, int prec, int scale)
          Tests the Entity Object against this validator's precision and scale values.
static boolean validateValueDouble(java.lang.String valStr, double value, int prec, int scale)
           
static boolean validateValueLong(java.lang.String valStr, long value, int prec, int scale)
           
static boolean validateValueObject(java.lang.Object value, int prec, int scale)
           
 boolean validateValueWithContext(JboValidatorContext evObj, java.lang.Object value)
          Validates an Entity Object by invoking validateValue().
 
Methods inherited from class oracle.jbo.rules.JboAbstractValidator
applyValidatorPersonalization, clone, closeObject, endInit, getDefXMLNameSpace, getFullName, getImageLoc, getName, getTriggeringAttributeDefs, getTriggeringAttributeNames, getValidatingAttributeName, getValueToValidate, getXMLElementTag, isDirty, isForPersonalization, isNew, isReadOnly, raiseException, resolve, setDirty, setForPersonalization, setInitialized, setName, setNew, setNewValue, setTriggeringAttributeNames, setValidatingAttribute, setValidatingAttribute, validate, validateMany
 
Methods inherited from class oracle.jbo.rules.AbstractValidator
beginInit, convertToJava, createException, createExprValueSupplier, ensureVariableManager, getErrorMessageClass, getErrorMsgExpressions, getInverse, getMessageBundleClass, getOnCondition, getOperandType, getOwner, getProps, getResourceBundleDef, getResourceBundleId, getSeverity, getValidatorSubType, getVariableManager, hasCustomErrorMsgId, hasValidationCondition, hasVariables, initErrMsgParms, initFromXml, initTriggeringAttributeDefs, initValidatorProperties, isMovedToAttrLevel, isTransactionLevel, isTransactionLevel, isValidatable, parseSeverityStr, prepareException, raiseException, readStringArrayList, readUserObjectTrim, setDefaultDescription, setErrorMessageClass, setErrorMsgExpressions, setErrorMsgId, setErrorMsgIds, setInverse, setOnCondition, setOperandType, setProp, setResourceBundleDef, setResourceBundleId, setSeverity, setTransactionLevel, setValidatingAttributeName
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface oracle.jbo.rules.JboValidatorInterface
validate
 
Methods inherited from interface oracle.jbo.rules.JboValidatorHints
initValidatorProperties, isTransactionLevel
 

Field Detail

DEFAULT_SCALE

public static final int DEFAULT_SCALE
See Also:
Constant Field Values
Constructor Detail

JboPrecisionScaleValidator

public JboPrecisionScaleValidator()
Creates a default validator.

Use setPrecision and setScale to configure the validatior.

Method Detail

getSingleton

public static JboPrecisionScaleValidator getSingleton()

initialize

protected void initialize(JboValidatorContext evObj)
Overrides:
initialize in class JboAbstractValidator

validateValueWithContext

public boolean validateValueWithContext(JboValidatorContext evObj,
                                        java.lang.Object value)
Validates an Entity Object by invoking validateValue().

Overrides:
validateValueWithContext in class JboAbstractValidator
Parameters:
evObj - an event object indicating the Entity Object to be validated.
Throws:
AttrSetValException - if validation fails.

validateValue

public boolean validateValue(java.lang.Object value)
Description copied from class: JboAbstractValidator
Validates a value.

Subclasses must implement this method.

Specified by:
validateValue in class JboAbstractValidator
Parameters:
value - the object to be validated.
Returns:
true if the object is valid.

validateValueDouble

public static boolean validateValueDouble(java.lang.String valStr,
                                          double value,
                                          int prec,
                                          int scale)

validateValueLong

public static boolean validateValueLong(java.lang.String valStr,
                                        long value,
                                        int prec,
                                        int scale)

validateValueObject

public static boolean validateValueObject(java.lang.Object value,
                                          int prec,
                                          int scale)

validateValue

public static boolean validateValue(java.lang.Object value,
                                    int prec,
                                    int scale)
Tests the Entity Object against this validator's precision and scale values.

The precision value is the maximum allowed number of digits in a number, or the number of characters in a string. The scale value, when less than zero, is the minimum number of digits following the decimal point, and when greater than zero, is the minimum number of digits preceeding the decimal point.

Parameters:
value - the Entity Object to be tested.
Returns:
true if value is valid.

getPrecision

public int getPrecision()
Gets the precision value. For strings, "precision" refers to length.

Returns:
the precision value.

getScale

public int getScale()
Gets the scale value. If scale validation is not to be performed this value is -127.


setPrecision

public void setPrecision(int prec)
Sets the precision value. For strings, "precision" refers to length.

Parameters:
prec - the new precision value.

setScale

public void setScale(int scale)
Sets the scale value. If scale validation is not to be performed this value should be -127.

Parameters:
scale - the new scale value.

toString

public java.lang.String toString()
Internal: Applications should not use this method.

Overrides:
toString in class java.lang.Object

getDescription

public java.lang.String getDescription()
Gets the description of this validator.

Specified by:
getDescription in interface JboValidatorInterface
Overrides:
getDescription in class AbstractValidator
Returns:
a documentation string.

getErrorMsgId

public java.lang.String getErrorMsgId()
Overrides:
getErrorMsgId in class JboAbstractValidator

setDescription

public void setDescription(java.lang.String description)
Sets the description of this validator.

Specified by:
setDescription in interface JboValidatorInterface
Overrides:
setDescription in class AbstractValidator
Parameters:
description - a documentation string.

getDefXMLElementTag

public java.lang.String getDefXMLElementTag()
Specified by:
getDefXMLElementTag in class JboAbstractValidator

Oracle Fusion Middleware Java API Reference for Oracle ADF Mobile Client
11g Release 1 (11.1.1)

E17503-02

Copyright © 2011, Oracle and/or its affiliates. All rights reserved.