Exemplo n.º 1
0
        public string Validate(StringResourceContext aResourceContext, string aResourceIdTemp, HeaderId aResourceId)
        {
            if (string.IsNullOrEmpty(aResourceIdTemp))
            {
                return("ID can not be empty.");
            }

            if (aResourceId.Value == StringEnhancer.Constants.kInvalidID.Value || !IsInValidRange(aResourceId))
            {
                if (IDValidator.IsValidInteger(aResourceIdTemp) || IDValidator.IsHexaRepresentation(aResourceIdTemp) && !IsInValidRange(aResourceIdTemp))
                {
                    return($"ID can not be less than {UiConstants.kMinId} or greater than {UiConstants.kMaxId}.");
                }
                else
                {
                    return("Integer or hexadecimal format is required.");
                }
            }

            if (aResourceContext.IdExists(aResourceId))
            {
                return("Another resource with this ID already exists.");
            }

            return(null);
        }
Exemplo n.º 2
0
        public RCFileItem GetStringResourceByName(string aStringResourceName)
        {
            if (!HeaderContent.NameToID.ContainsKey(aStringResourceName))
            {
                return(null);
            }

            var currentResourceID = new HeaderId(HeaderContent.NameToID[aStringResourceName]);

            if (IDValidator.IsRecurrentCase(currentResourceID, HeaderContent))
            {
                IDNormalizer.NormalizeRecurrenceForID(currentResourceID, HeaderContent);
            }
            if (IDValidator.IsHexaRepresentation(currentResourceID))
            {
                IDNormalizer.NormalizeHexaID(currentResourceID);
            }

            if (!IDValidator.IsValid(currentResourceID, HeaderContent))
            {
                return(null);
            }

            return(mRCFileContent.GetStringLineForName(aStringResourceName, currentResourceID));
        }
 public void SetValidator(IDValidator validator)
 {
     Validator = validator;
     if (validator != null)
     {
         validator.MinLength = MinLength;
         validator.MaxLength = MaxLength;
     }
 }
Exemplo n.º 4
0
        public bool IsInValidRange(string aString)
        {
            int intRepr;

            if (IDValidator.IsHexaRepresentation(aString))
            {
                intRepr = Convert.ToInt32(aString, 16);
            }
            else if (IDValidator.IsValidInteger(aString))
            {
                intRepr = int.Parse(aString);
            }
            else
            {
                return(false);
            }

            return(intRepr >= UiConstants.kMinId && intRepr <= UiConstants.kMaxId);
        }
Exemplo n.º 5
0
 public void Setup()
 {
     this.validator = new IDValidator();
 }