private IList<cookie> GetCookies(long uid, string cookieName, bool isAsync, GetCookiesCallback callback, Object state)
        {
            var parameterList = new Dictionary<string, string> { { "method", "facebook.data.getCookies" } };
            Utilities.AddRequiredParameter(parameterList, "uid", uid);
            Utilities.AddOptionalParameter(parameterList, "name", cookieName);

            if (isAsync)
            {
                SendRequestAsync<data_getCookies_response, IList<cookie>>(parameterList, !string.IsNullOrEmpty(Session.SessionKey), new FacebookCallCompleted<IList<cookie>>(callback), state, "cookie");
                return null;
            }

            return SendRequest<data_getCookies_response>(parameterList, !string.IsNullOrEmpty(Session.SessionKey)).cookie;
        }
 /// <summary>
 /// Get Cookies for the specified user. 
 /// </summary>
 /// <example>
 /// <code>
 /// 
 /// </code>
 /// </example>
 /// <param name="uid">User id </param>
 /// <param name="callback">The AsyncCallback delegate</param>
 /// <param name="state">An object containing state information for this asynchronous request</param>        
 /// <returns>A list of cookies</returns>
 public IList<cookie> GetCookiesAsync(long uid, GetCookiesCallback callback, Object state)
 {
     return GetCookiesAsync(uid, null, callback, state);
 }
 /// <summary>
 /// Get Cookies for the specified user. 
 /// </summary>
 /// <example>
 /// <code>
 /// 
 /// </code>
 /// </example>
 /// <param name="uid">User id </param>
 /// <param name="cookieName">Optional- Cookie name </param>
 /// <param name="callback">The AsyncCallback delegate</param>
 /// <param name="state">An object containing state information for this asynchronous request</param>        
 /// <returns>A list of cookies</returns>
 public IList<cookie> GetCookiesAsync(long uid, string cookieName, GetCookiesCallback callback, Object state)
 {
     return GetCookies(uid, cookieName, true, callback, state);
 }
 /// <summary>
 /// Get Cookies for the specified user. 
 /// </summary>
 /// <example>
 /// <code>
 /// 
 /// </code>
 /// </example>
 /// <param name="callback">The AsyncCallback delegate</param>
 /// <param name="state">An object containing state information for this asynchronous request</param>        
 /// <returns>A list of cookies</returns>
 public IList<cookie> GetCookiesAsync(GetCookiesCallback callback, Object state)
 {
     return GetCookiesAsync(Session.UserId, callback, state);
 }