public static CompareStrings ( string x, string y, uint uCompareType ) : bool | ||
x | string | |
y | string | |
uCompareType | uint | |
return | bool |
public static bool CompareStrings(string x, string y, uint uCompareType)
{
if(x == null) { Debug.Assert(false); return false; }
if(y == null) { Debug.Assert(false); return false; }
if(uCompareType == EcasUtil.StdStringCompareEquals)
return x.Equals(y, StrUtil.CaseIgnoreCmp);
if(uCompareType == EcasUtil.StdStringCompareStartsWith)
return x.StartsWith(y, StrUtil.CaseIgnoreCmp);
if(uCompareType == EcasUtil.StdStringCompareEndsWith)
return x.EndsWith(y, StrUtil.CaseIgnoreCmp);
Debug.Assert(uCompareType == EcasUtil.StdStringCompareContains);
return (x.IndexOf(y, StrUtil.CaseIgnoreCmp) >= 0);
}
private static bool IsMatchEnvironmentVar(EcasCondition c, EcasContext ctx) { string strName = EcasUtil.GetParamString(c.Parameters, 0, true); uint uCompareType = EcasUtil.GetParamEnum(c.Parameters, 1, EcasUtil.StdStringCompareEquals, EcasUtil.StdStringCompare); string strValue = EcasUtil.GetParamString(c.Parameters, 2, true); if (string.IsNullOrEmpty(strName) || (strValue == null)) { return(false); } try { string strVar = Environment.GetEnvironmentVariable(strName); if (strVar == null) { return(false); } return(EcasUtil.CompareStrings(strVar, strValue, uCompareType)); } catch (Exception) { Debug.Assert(false); } return(false); }