OLD | NEW |
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /** | 5 /** |
6 * Support for client code that extends the analysis server by adding new assist | 6 * Support for client code that extends the analysis server by adding new assist |
7 * contributors. | 7 * contributors. |
| 8 * |
| 9 * Plugins can register assist contributors. The registered contributors will be |
| 10 * used to get assists any time a client issues an 'edit.getAssists' request. |
| 11 * |
| 12 * If a plugin wants to add assists, it should implement the class |
| 13 * [AssistContributor] and then register the contributor by including code like |
| 14 * the following in the plugin's registerExtensions method: |
| 15 * |
| 16 * @override |
| 17 * void registerExtensions(RegisterExtension registerExtension) { |
| 18 * ... |
| 19 * registerExtension( |
| 20 * ASSIST_CONTRIBUTOR_EXTENSION_POINT_ID, |
| 21 * new MyAssistContributor()); |
| 22 * ... |
| 23 * } |
8 */ | 24 */ |
9 library analysis_server.plugin.assist; | 25 library analysis_server.plugin.assist; |
10 | 26 |
11 import 'package:analysis_server/edit/assist/assist_core.dart'; | 27 import 'package:analysis_server/edit/assist/assist_core.dart'; |
12 import 'package:analysis_server/src/plugin/server_plugin.dart'; | 28 import 'package:analysis_server/src/plugin/server_plugin.dart'; |
13 import 'package:plugin/plugin.dart'; | 29 import 'package:plugin/plugin.dart'; |
14 | 30 |
15 /** | 31 /** |
16 * The identifier of the extension point that allows plugins to register assist | 32 * The identifier of the extension point that allows plugins to register assist |
17 * contributors. The object used as an extension must be an [AssistContributor]. | 33 * contributors. The object used as an extension must be an [AssistContributor]. |
18 */ | 34 */ |
19 final String ASSIST_CONTRIBUTOR_EXTENSION_POINT_ID = Plugin.join( | 35 final String ASSIST_CONTRIBUTOR_EXTENSION_POINT_ID = Plugin.join( |
20 ServerPlugin.UNIQUE_IDENTIFIER, | 36 ServerPlugin.UNIQUE_IDENTIFIER, |
21 ServerPlugin.ASSIST_CONTRIBUTOR_EXTENSION_POINT); | 37 ServerPlugin.ASSIST_CONTRIBUTOR_EXTENSION_POINT); |
OLD | NEW |