• Hixie's avatar
    fix the 'dart:profiler' bug · 466a91ab
    Hixie authored
    ...by requiring a new version of analyzer.
    
    Also, when the subprocess is terminated unexpectedly, report the actual
    problem in more detail.
    466a91ab
json_socket.dart 547 Bytes
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'dart:async';
import 'dart:convert';
import 'dart:io';

class JSONSocket {
  JSONSocket(WebSocket socket, this.unusualTermination)
    : _socket = socket, stream = socket.map(JSON.decode).asBroadcastStream();

  final WebSocket _socket;
  final Stream stream;
  final Future<String> unusualTermination;

  void send(dynamic data) {
    _socket.add(JSON.encode(data));
  }
}