Ejemplo n.º 1
0
        /// <summary>
        /// Generates GraphQL mutations.
        /// </summary>
        /// <param name="buildQuery">Delegate to build a mutation query</param>
        /// <param name="callback">callback that receives the mutation response</param>
        public void Mutation(MutationDelegate buildQuery, MutationResponseHandler callback)
        {
            MutationQuery query = new MutationQuery();

            buildQuery(query);

            Mutation(query, callback);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Sends GraphQL mutations to a GraphQL endpoint.
        /// </summary>
        /// <param name="query">mutation to be sent to GraphQL endpoint</param>
        /// <param name="callback">callback that receives the mutation response</param>
        public void Mutation(MutationQuery query, MutationResponseHandler callback)
        {
#if SHOPIFY_VERBOSE_DEBUG
            Console.WriteLine("Sending Mutation: " + query.ToString() + "\n");
#endif

            Loader.Load(query.ToString(), (string response, string error) => {
#if SHOPIFY_VERBOSE_DEBUG
                Console.WriteLine("Response: " + response + "\n");
                Console.WriteLine("Error: " + error + "\n");
#endif

                if (error != null)
                {
                    callback(new MutationResponse(error));
                }
                else
                {
                    callback(new MutationResponse(GetJSON(response)));
                }
            });
        }