| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 library edit.domain; | 5 library edit.domain; |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 | 8 |
| 9 import 'package:analysis_server/edit/assist/assist_core.dart'; |
| 9 import 'package:analysis_server/edit/fix/fix_core.dart'; | 10 import 'package:analysis_server/edit/fix/fix_core.dart'; |
| 10 import 'package:analysis_server/src/analysis_server.dart'; | 11 import 'package:analysis_server/src/analysis_server.dart'; |
| 11 import 'package:analysis_server/src/collections.dart'; | 12 import 'package:analysis_server/src/collections.dart'; |
| 12 import 'package:analysis_server/src/constants.dart'; | 13 import 'package:analysis_server/src/constants.dart'; |
| 13 import 'package:analysis_server/src/plugin/server_plugin.dart'; | 14 import 'package:analysis_server/src/plugin/server_plugin.dart'; |
| 14 import 'package:analysis_server/src/protocol_server.dart' hide Element; | 15 import 'package:analysis_server/src/protocol_server.dart' hide Element; |
| 15 import 'package:analysis_server/src/services/correction/assist.dart'; | 16 import 'package:analysis_server/src/services/correction/assist.dart'; |
| 16 import 'package:analysis_server/src/services/correction/fix.dart'; | 17 import 'package:analysis_server/src/services/correction/fix.dart'; |
| 17 import 'package:analysis_server/src/services/correction/sort_members.dart'; | 18 import 'package:analysis_server/src/services/correction/sort_members.dart'; |
| 18 import 'package:analysis_server/src/services/correction/status.dart'; | 19 import 'package:analysis_server/src/services/correction/status.dart'; |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 107 SourceEdit edit = | 108 SourceEdit edit = |
| 108 new SourceEdit(0, unformattedSource.length, formattedSource); | 109 new SourceEdit(0, unformattedSource.length, formattedSource); |
| 109 edits.add(edit); | 110 edits.add(edit); |
| 110 } | 111 } |
| 111 | 112 |
| 112 return new EditFormatResult(edits, formattedResult.selectionStart, | 113 return new EditFormatResult(edits, formattedResult.selectionStart, |
| 113 formattedResult.selectionLength).toResponse(request.id); | 114 formattedResult.selectionLength).toResponse(request.id); |
| 114 } | 115 } |
| 115 | 116 |
| 116 Response getAssists(Request request) { | 117 Response getAssists(Request request) { |
| 117 var params = new EditGetAssistsParams.fromRequest(request); | 118 EditGetAssistsParams params = new EditGetAssistsParams.fromRequest(request); |
| 119 ContextSourcePair pair = server.getContextSourcePair(params.file); |
| 120 engine.AnalysisContext context = pair.context; |
| 121 Source source = pair.source; |
| 118 List<SourceChange> changes = <SourceChange>[]; | 122 List<SourceChange> changes = <SourceChange>[]; |
| 119 List<CompilationUnit> units = | 123 if (context != null && source != null) { |
| 120 server.getResolvedCompilationUnits(params.file); | 124 List<Assist> assists = computeAssists(plugin, context, |
| 121 if (units.isNotEmpty) { | 125 source, params.offset, params.length); |
| 122 CompilationUnit unit = units[0]; | |
| 123 List<Assist> assists = computeAssists(unit, params.offset, params.length); | |
| 124 assists.forEach((Assist assist) { | 126 assists.forEach((Assist assist) { |
| 125 changes.add(assist.change); | 127 changes.add(assist.change); |
| 126 }); | 128 }); |
| 127 } | 129 } |
| 128 // respond | |
| 129 return new EditGetAssistsResult(changes).toResponse(request.id); | 130 return new EditGetAssistsResult(changes).toResponse(request.id); |
| 130 } | 131 } |
| 131 | 132 |
| 132 Response getFixes(Request request) { | 133 Response getFixes(Request request) { |
| 133 var params = new EditGetFixesParams.fromRequest(request); | 134 var params = new EditGetFixesParams.fromRequest(request); |
| 134 String file = params.file; | 135 String file = params.file; |
| 135 int offset = params.offset; | 136 int offset = params.offset; |
| 136 // add fixes | 137 // add fixes |
| 137 List<AnalysisErrorFixes> errorFixesList = <AnalysisErrorFixes>[]; | 138 List<AnalysisErrorFixes> errorFixesList = <AnalysisErrorFixes>[]; |
| 138 List<CompilationUnit> units = server.getResolvedCompilationUnits(file); | 139 List<CompilationUnit> units = server.getResolvedCompilationUnits(file); |
| (...skipping 493 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 632 } | 633 } |
| 633 if (refactoring is RenameRefactoring) { | 634 if (refactoring is RenameRefactoring) { |
| 634 RenameRefactoring renameRefactoring = refactoring; | 635 RenameRefactoring renameRefactoring = refactoring; |
| 635 RenameOptions renameOptions = params.options; | 636 RenameOptions renameOptions = params.options; |
| 636 renameRefactoring.newName = renameOptions.newName; | 637 renameRefactoring.newName = renameOptions.newName; |
| 637 return renameRefactoring.checkNewName(); | 638 return renameRefactoring.checkNewName(); |
| 638 } | 639 } |
| 639 return new RefactoringStatus(); | 640 return new RefactoringStatus(); |
| 640 } | 641 } |
| 641 } | 642 } |
| OLD | NEW |