| // Copyright (c) 2016, the Dart 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 file |
| |
| part of repositories; |
| |
| class Flag implements M.Flag { |
| final String name; |
| final String comment; |
| final bool modified; |
| final String valueAsString; |
| Flag(this.name, this.comment, this.modified, this.valueAsString) { |
| assert(name != null); |
| assert(comment != null); |
| assert(modified != null); |
| } |
| } |
| |
| class FlagsRepository implements M.FlagsRepository { |
| final S.VM vm; |
| |
| FlagsRepository(this.vm); |
| |
| Future<Iterable<Flag>> list() async { |
| var result = new List<Flag>(); |
| for (var map in ((await vm.getFlagList()) as S.ServiceMap)['flags']) { |
| result.add(_toFlag(map)); |
| } |
| return result; |
| } |
| |
| static Flag _toFlag(Map map) { |
| return new Flag( |
| map['name'], map['comment'], map['modified'], map['valueAsString']); |
| } |
| } |