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

Unified Diff: pkg/fletch_agent/lib/agent_connection.dart

Issue 1659163007: Rename fletch -> dartino (Closed) Base URL: https://github.com/dartino/sdk.git@master
Patch Set: address comments Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/fletch_agent/bin/agent.dart ('k') | pkg/fletch_agent/lib/messages.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/fletch_agent/lib/agent_connection.dart
diff --git a/pkg/fletch_agent/lib/agent_connection.dart b/pkg/fletch_agent/lib/agent_connection.dart
deleted file mode 100644
index ecf7f9c9cc2361fd6fbbb9ad7c69446e1a6f0b12..0000000000000000000000000000000000000000
--- a/pkg/fletch_agent/lib/agent_connection.dart
+++ /dev/null
@@ -1,108 +0,0 @@
-// Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE.md file.
-
-library fletch_agent.agent_connection;
-
-import 'dart:async';
-import 'dart:io';
-import 'dart:typed_data';
-
-import 'messages.dart';
-
-/// This class is used to connect to the Fletch Agent from Dart code. Ie. it
-/// cannot be used from Fletch code as it is depending on the dart:io Socket
-/// class.
-/// The class is only for making a one-shot request/reply. The peer socket is
-/// closed after handling the request. This is similar to HTTP without
-/// keep-alive.
-/// The caller/user of this class must handle any errors occurring on the
-/// socket.done future as this class is not handling that.
-class AgentConnection {
- final Socket socket;
-
- AgentConnection(this.socket);
-
- Future<VmData> startVm() async {
- var request = new StartVmRequest();
- var replyBuffer = await sendRequest(request);
- var reply = new StartVmReply.fromBuffer(replyBuffer);
- if (reply.result == ReplyHeader.START_VM_FAILED) {
- throw new AgentException('Failed to start new Fletch VM.');
- } else if (reply.result != ReplyHeader.SUCCESS) {
- throw new AgentException(
- 'Failed to spawn new VM with unexpected error: ${reply.result}');
- }
- return new VmData(reply.vmId, reply.vmPort);
- }
-
- Future stopVm(int vmId) async {
- var request = new StopVmRequest(vmId);
- var replyBuffer = await sendRequest(request);
- var reply = new StopVmReply.fromBuffer(replyBuffer);
- if (reply.result == ReplyHeader.UNKNOWN_VM_ID) {
- throw new AgentException('Could not stop VM. Unknown vm id: $vmId');
- } else if (reply.result != ReplyHeader.SUCCESS) {
- throw new AgentException(
- 'Failed to stop VM with unexpected error: ${reply.result}');
- }
- }
-
- Future signalVm(int vmId, int signal) async {
- var request = new SignalVmRequest(vmId, signal);
- var replyBuffer = await sendRequest(request);
- var reply = new SignalVmReply.fromBuffer(replyBuffer);
- if (reply.result == ReplyHeader.UNKNOWN_VM_ID) {
- throw new AgentException('Could not signal VM. Unknown vm id: $vmId');
- } else if (reply.result != ReplyHeader.SUCCESS) {
- throw new AgentException(
- 'Failed to signal VM with unexpected error: ${reply.result}');
- }
- }
-
- Future<List<int>> listVms() async {
- throw new AgentException('Not implemented');
- }
-
- Future upgradeAgent(String version, List<int> binary) async {
- // TODO(karlklose): also send the version string.
- var request = new UpgradeAgentRequest(binary);
- var replyBuffer = await sendRequest(request);
- var reply = new UpgradeAgentReply.fromBuffer(replyBuffer);
- if (reply.result != ReplyHeader.SUCCESS) {
- throw new AgentException('Failed to upgrade fletch-agent package '
- 'with unexpected error: ${reply.result}');
- }
- }
-
- Future<String> fletchVersion() async {
- var request = new FletchVersionRequest();
- var replyBuffer = await sendRequest(request);
- var reply = new FletchVersionReply.fromBuffer(replyBuffer);
- if (reply.result != ReplyHeader.SUCCESS) {
- throw new AgentException('Failed to retrive Fletch version '
- 'with unexpected error: ${reply.result}');
- }
- return reply.fletchVersion;
- }
-
- Future<ByteBuffer> sendRequest(RequestHeader request) async {
- socket.add(request.toBuffer().asUint8List());
- var replyBytes = await socket.fold([], (p, e) => p..addAll(e));
- return new Uint8List.fromList(replyBytes).buffer;
- }
-}
-
-class VmData {
- final int id;
- final int port;
-
- VmData(this.id, this.port);
-}
-
-class AgentException implements Exception {
- String message;
- String toString() => 'AgentException($message)';
-
- AgentException(this.message);
-}
« no previous file with comments | « pkg/fletch_agent/bin/agent.dart ('k') | pkg/fletch_agent/lib/messages.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698