Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(158)

Side by Side Diff: runtime/include/dart_api.h

Issue 897193002: Finish moving service protocol to json rpc. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: code review Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « runtime/bin/vmservice/server.dart ('k') | runtime/observatory/bin/shell.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 2 * Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
3 * for details. All rights reserved. Use of this source code is governed by a 3 * for details. All rights reserved. Use of this source code is governed by a
4 * BSD-style license that can be found in the LICENSE file. 4 * BSD-style license that can be found in the LICENSE file.
5 */ 5 */
6 6
7 #ifndef INCLUDE_DART_API_H_ 7 #ifndef INCLUDE_DART_API_H_
8 #define INCLUDE_DART_API_H_ 8 #define INCLUDE_DART_API_H_
9 9
10 /** \mainpage Dart Embedding API Reference 10 /** \mainpage Dart Embedding API Reference
(...skipping 2752 matching lines...) Expand 10 before | Expand all | Expand 10 after
2763 DART_EXPORT Dart_Port Dart_ServiceWaitForLoadPort(); 2763 DART_EXPORT Dart_Port Dart_ServiceWaitForLoadPort();
2764 2764
2765 2765
2766 /** 2766 /**
2767 * A service request callback function. 2767 * A service request callback function.
2768 * 2768 *
2769 * These callbacks, registered by the embedder, are called when the VM receives 2769 * These callbacks, registered by the embedder, are called when the VM receives
2770 * a service request it can't handle and the service request command name 2770 * a service request it can't handle and the service request command name
2771 * matches one of the embedder registered handlers. 2771 * matches one of the embedder registered handlers.
2772 * 2772 *
2773 * \param name The service request command name. Always the first entry 2773 * \param method The rpc method name.
2774 * in the arguments array. Will match the name the callback was 2774 * \param param_keys Service requests can have key-value pair parameters. The
2775 * registered with.
2776 * \param arguments The service request command arguments. Incoming service
2777 * request paths are split like file system paths and flattened into an array
2778 * (e.g. /foo/bar becomes the array ["foo", "bar"].
2779 * \param num_arguments The length of the arguments array.
2780 * \param option_keys Service requests can have options key-value pairs. The
2781 * keys and values are flattened and stored in arrays. 2775 * keys and values are flattened and stored in arrays.
2782 * \param option_values The values associated with the keys. 2776 * \param param_values The values associated with the keys.
2783 * \param num_options The length of the option_keys and option_values array. 2777 * \param num_params The length of the param_keys and param_values arrays.
2784 * \param user_data The user_data pointer registered with this handler. 2778 * \param user_data The user_data pointer registered with this handler.
2785 * 2779 *
2786 * \return Returns a C string containing a valid JSON object. The returned 2780 * \return Returns a C string containing a valid JSON object. The returned
2787 * pointer will be freed by the VM by calling free. 2781 * pointer will be freed by the VM by calling free.
2788 */ 2782 */
2789 typedef const char* (*Dart_ServiceRequestCallback)( 2783 typedef const char* (*Dart_ServiceRequestCallback)(
2790 const char* name, 2784 const char* method,
2791 const char** arguments, 2785 const char** param_keys,
2792 intptr_t num_arguments, 2786 const char** param_values,
2793 const char** option_keys, 2787 intptr_t num_params,
2794 const char** option_values,
2795 intptr_t num_options,
2796 void* user_data); 2788 void* user_data);
2797 2789
2798 /** 2790 /**
2799 * Register a Dart_ServiceRequestCallback to be called to handle requests 2791 * Register a Dart_ServiceRequestCallback to be called to handle requests
2800 * with name on a specific isolate. The callback will be invoked with the 2792 * with name on a specific isolate. The callback will be invoked with the
2801 * current isolate set to the request target. 2793 * current isolate set to the request target.
2802 * 2794 *
2803 * \param name The name of the command that this callback is responsible for. 2795 * \param name The name of the command that this callback is responsible for.
2804 * \param callback The callback to invoke. 2796 * \param callback The callback to invoke.
2805 * \param user_data The user data passed to the callback. 2797 * \param user_data The user data passed to the callback.
(...skipping 17 matching lines...) Expand all
2823 * NOTE: If multiple callbacks with the same name are registered, only the 2815 * NOTE: If multiple callbacks with the same name are registered, only the
2824 * last callback registered will be remembered. 2816 * last callback registered will be remembered.
2825 */ 2817 */
2826 DART_EXPORT void Dart_RegisterRootServiceRequestCallback( 2818 DART_EXPORT void Dart_RegisterRootServiceRequestCallback(
2827 const char* name, 2819 const char* name,
2828 Dart_ServiceRequestCallback callback, 2820 Dart_ServiceRequestCallback callback,
2829 void* user_data); 2821 void* user_data);
2830 2822
2831 2823
2832 #endif /* INCLUDE_DART_API_H_ */ /* NOLINT */ 2824 #endif /* INCLUDE_DART_API_H_ */ /* NOLINT */
OLDNEW
« no previous file with comments | « runtime/bin/vmservice/server.dart ('k') | runtime/observatory/bin/shell.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698