/// <summary> /// Gets the user's name and avatar base on the User ID. /// </summary> /// <param name="uID">A string containing the user id.</param> /// <returns>It returns the avatar and name in header.</returns> public Stream SyncProfile(string uID) { uID = (uID != null) ? uID.Trim() : uID; Stream resultStream = null; #region log user request and response /*********************************************** * To log user request and response ***********************************************/ if (_logRequestResponse) { LogManager.CurrentInstance.InfoLogger.LogInfo( System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, System.Reflection.MethodBase.GetCurrentMethod().Name + "===>" + "Request ===> userID : " + uID); } #endregion // #region Verify User //var request = OperationContext.Current.IncomingMessageProperties[HttpRequestMessageProperty.Name] as HttpRequestMessageProperty; //string keyFromClient = request.Headers["key"]; //if (NeeoUtility.AuthenticateUserRequest(uID, keyFromClient)) //{ // #endregion ulong temp = 0; uID = uID.Trim(); if (NeeoUtility.IsNullOrEmpty(uID) || !ulong.TryParse(uID, out temp)) { NeeoUtility.SetServiceResponseHeaders((CustomHttpStatusCode)HttpStatusCode.BadRequest); } else { NeeoUser user = new NeeoUser(uID); try { SetHeaderForSyncProfile(user.GetUserProfileName()); resultStream = user.GetAvatarStream(); } catch (ApplicationException appExp) { NeeoUtility.SetServiceResponseHeaders((CustomHttpStatusCode)(Convert.ToInt32(appExp.Message))); } catch (Exception exp) { LogManager.CurrentInstance.ErrorLogger.LogError( System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, exp.Message, exp); NeeoUtility.SetServiceResponseHeaders(CustomHttpStatusCode.UnknownError); } } return(resultStream); //} //else //{ // NeeoUtility.SetServiceResponseHeaders((CustomHttpStatusCode) HttpStatusCode.Unauthorized); // return resultStream; //} }