| // Copyright 2017 Google. 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 '../webkit_inspection_protocol.dart'; |
| |
| class WipLog extends WipDomain { |
| WipLog(WipConnection connection) : super(connection); |
| |
| Future<WipResponse> enable() => sendCommand('Log.enable'); |
| |
| Future<WipResponse> disable() => sendCommand('Log.disable'); |
| |
| Stream<LogEntry> get onEntryAdded => eventStream( |
| 'Log.entryAdded', (WipEvent event) => new LogEntry(event.json)); |
| } |
| |
| class LogEntry extends WipEvent { |
| LogEntry(Map<String, dynamic> json) : super(json); |
| |
| Map<String, dynamic> get _entry => params!['entry'] as Map<String, dynamic>; |
| |
| /// Log entry source. Allowed values: xml, javascript, network, storage, |
| /// appcache, rendering, security, deprecation, worker, violation, |
| /// intervention, other. |
| String get source => _entry['source'] as String; |
| |
| /// Log entry severity. Allowed values: verbose, info, warning, error. |
| String get level => _entry['level'] as String; |
| |
| /// Logged text. |
| String get text => _entry['text'] as String; |
| |
| /// URL of the resource if known. |
| @optional |
| String? get url => _entry['url'] as String?; |
| |
| /// Timestamp when this entry was added. |
| num get timestamp => _entry['timestamp'] as num; |
| |
| String toString() => text; |
| } |