Facebook.FacebookOAuthClient.BuildApplicationAccessTokenParameters C# (CSharp) Method

BuildApplicationAccessTokenParameters() private method

private BuildApplicationAccessTokenParameters ( object>.IDictionary parameters, string &name, string &path ) : object>.IDictionary
parameters object>.IDictionary
name string
path string
return object>.IDictionary
        private IDictionary<string, object> BuildApplicationAccessTokenParameters(IDictionary<string, object> parameters, out string name, out string path)
        {
            name = FacebookUtils.DOMAIN_MAP_GRAPH;
            path = "/oauth/access_token";

            var defaultParameters = new Dictionary<string, object>
                                        {
                                            { "client_id", AppId },
                                            { "client_secret", AppSecret },
                                            { "grant_type", "client_credentials" }
                                        };

            var mergedParameters = FacebookUtils.Merge(defaultParameters, parameters);

            if (mergedParameters["client_id"] == null || string.IsNullOrEmpty(mergedParameters["client_id"].ToString()))
            {
                throw new ArgumentException("client_id required");
            }

            if (mergedParameters["client_secret"] == null || string.IsNullOrEmpty(mergedParameters["client_secret"].ToString()))
            {
                throw new ArgumentException("client_secret required");
            }

            if (mergedParameters["grant_type"] == null || string.IsNullOrEmpty(mergedParameters["grant_type"].ToString()))
            {
                throw new ArgumentException("grant_type required");
            }

            return mergedParameters;
        }