public static IUserInfo ExtractUserInfo(string contextInfo) { if (contextInfo == null) { return new ReconstructedUserInfo { IsUserRecognized = false, UserName = null, Workstation = null } } ; string prefix1 = "Rhetos:"; string prefix2 = "Alpha:"; int positionUser; if (contextInfo.StartsWith(prefix1)) { positionUser = prefix1.Length; } else if (contextInfo.StartsWith(prefix2)) { positionUser = prefix2.Length; } else { return new ReconstructedUserInfo { IsUserRecognized = false, UserName = null, Workstation = null } }; var result = new ReconstructedUserInfo(); int positionWorkstation = contextInfo.IndexOf(',', positionUser); if (positionWorkstation > -1) { result.UserName = contextInfo.Substring(positionUser, positionWorkstation - positionUser); result.Workstation = contextInfo.Substring(positionWorkstation + 1); } else { result.UserName = contextInfo.Substring(positionUser); result.Workstation = ""; } result.UserName = result.UserName.Trim(); if (result.UserName == "") { result.UserName = null; } result.Workstation = result.Workstation.Trim(); if (result.Workstation == "") { result.Workstation = null; } result.IsUserRecognized = result.UserName != null; return(result); }
public static IUserInfo ExtractUserInfo(string contextInfo) { if (contextInfo == null) return new ReconstructedUserInfo { IsUserRecognized = false, UserName = null, Workstation = null }; string prefix1 = "Rhetos:"; string prefix2 = "Alpha:"; int positionUser; if (contextInfo.StartsWith(prefix1)) positionUser = prefix1.Length; else if (contextInfo.StartsWith(prefix2)) positionUser = prefix2.Length; else return new ReconstructedUserInfo { IsUserRecognized = false, UserName = null, Workstation = null }; var result = new ReconstructedUserInfo(); int positionWorkstation = contextInfo.IndexOf(',', positionUser); if (positionWorkstation > -1) { result.UserName = contextInfo.Substring(positionUser, positionWorkstation - positionUser); result.Workstation = contextInfo.Substring(positionWorkstation + 1); } else { result.UserName = contextInfo.Substring(positionUser); result.Workstation = ""; } result.UserName = result.UserName.Trim(); if (result.UserName == "") result.UserName = null; result.Workstation = result.Workstation.Trim(); if (result.Workstation == "") result.Workstation = null; result.IsUserRecognized = result.UserName != null; return result; }