![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Objective-C) Viewing a Simple Three-Step Execution PlanSee more CURL ExamplesThis example demonstrates a straightforward, valid dependency chain that results in a three-step execution plan. The goal is not to execute the requests, but to inspect how the plan is constructed using The target Because
When Note: This example requires Chilkat v11.5.0 or greater. For more information, see https://www.chilkatsoft.com/curl_dependency_engine.asp
#import <CkoHttpCurl.h> #import <NSString.h> #import <CkoJsonObject.h> BOOL success = NO; CkoHttpCurl *httpCurl = [[CkoHttpCurl alloc] init]; // The target curl command requires {{order_id}}. NSString *targetCurl = @"curl -X GET https://api.example.com/orders/{{order_id}}"; // Define a helper function that produces order_id from customer_id. NSString *fnName = @"getOrderId"; [httpCurl AddFunction: fnName curl: @"curl -X GET https://api.example.com/order-id?customer={{customer_id}}"]; [httpCurl AddOutput: fnName jsonPath: @"order.id" varName: @"order_id"]; // Define a helper function that produces customer_id from account_name. fnName = @"getCustomerId"; [httpCurl AddFunction: fnName curl: @"curl -X GET https://api.example.com/customer-id?account={{account_name}}"]; [httpCurl AddOutput: fnName jsonPath: @"customer.id" varName: @"customer_id"]; // Provide the starting known input. [httpCurl SetVar: @"account_name" varValue: @"acme"]; // Examine the execution plan without running any requests. CkoJsonObject *planJson = [[CkoJsonObject alloc] init]; planJson.EmitCompact = NO; success = [httpCurl ExaminePlan: targetCurl json: planJson]; // Success is expected to be YES. NSLog(@"%@%d",@"success = ",success); NSLog(@"%@",[planJson Emit]); // Expected result: // // { // "plan": [{ // "function": "getCustomerId", // "inputs": ["account_name"], // "outputs": ["customer_id"] // },{ // "function": "getOrderId", // "inputs": ["customer_id"], // "outputs": ["order_id"] // },{ // "function": "targetCurl", // "inputs": ["order_id"], // "outputs": [] // }] // } |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.