| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // BSD-style license that can be found in the LICENSE file. | |
| 4 | |
| 5 library http_multi_server.multi_headers; | |
| 6 | |
| 7 import 'dart:io'; | |
| 8 | |
| 9 /// A class that delegates header access and setting to many [HttpHeaders] | |
| 10 /// instances. | |
| 11 class MultiHeaders implements HttpHeaders { | |
| 12 /// The wrapped headers. | |
| 13 final Set<HttpHeaders> _headers; | |
| 14 | |
| 15 bool get chunkedTransferEncoding => _headers.first.chunkedTransferEncoding; | |
| 16 set chunkedTransferEncoding(bool value) { | |
| 17 for (var headers in _headers) { | |
| 18 headers.chunkedTransferEncoding = value; | |
| 19 } | |
| 20 } | |
| 21 | |
| 22 int get contentLength => _headers.first.contentLength; | |
| 23 set contentLength(int value) { | |
| 24 for (var headers in _headers) { | |
| 25 headers.contentLength = value; | |
| 26 } | |
| 27 } | |
| 28 | |
| 29 ContentType get contentType => _headers.first.contentType; | |
| 30 set contentType(ContentType value) { | |
| 31 for (var headers in _headers) { | |
| 32 headers.contentType = value; | |
| 33 } | |
| 34 } | |
| 35 | |
| 36 DateTime get date => _headers.first.date; | |
| 37 set date(DateTime value) { | |
| 38 for (var headers in _headers) { | |
| 39 headers.date = value; | |
| 40 } | |
| 41 } | |
| 42 | |
| 43 DateTime get expires => _headers.first.expires; | |
| 44 set expires(DateTime value) { | |
| 45 for (var headers in _headers) { | |
| 46 headers.expires = value; | |
| 47 } | |
| 48 } | |
| 49 | |
| 50 String get host => _headers.first.host; | |
| 51 set host(String value) { | |
| 52 for (var headers in _headers) { | |
| 53 headers.host = value; | |
| 54 } | |
| 55 } | |
| 56 | |
| 57 DateTime get ifModifiedSince => _headers.first.ifModifiedSince; | |
| 58 set ifModifiedSince(DateTime value) { | |
| 59 for (var headers in _headers) { | |
| 60 headers.ifModifiedSince = value; | |
| 61 } | |
| 62 } | |
| 63 | |
| 64 bool get persistentConnection => _headers.first.persistentConnection; | |
| 65 set persistentConnection(bool value) { | |
| 66 for (var headers in _headers) { | |
| 67 headers.persistentConnection = value; | |
| 68 } | |
| 69 } | |
| 70 | |
| 71 int get port => _headers.first.port; | |
| 72 set port(int value) { | |
| 73 for (var headers in _headers) { | |
| 74 headers.port = value; | |
| 75 } | |
| 76 } | |
| 77 | |
| 78 MultiHeaders(Iterable<HttpHeaders> headers) | |
| 79 : _headers = headers.toSet(); | |
| 80 | |
| 81 void add(String name, Object value) { | |
| 82 for (var headers in _headers) { | |
| 83 headers.add(name, value); | |
| 84 } | |
| 85 } | |
| 86 | |
| 87 void forEach(void f(String name, List<String> values)) => | |
| 88 _headers.first.forEach(f); | |
| 89 | |
| 90 void noFolding(String name) { | |
| 91 for (var headers in _headers) { | |
| 92 headers.noFolding(name); | |
| 93 } | |
| 94 } | |
| 95 | |
| 96 void remove(String name, Object value) { | |
| 97 for (var headers in _headers) { | |
| 98 headers.remove(name, value); | |
| 99 } | |
| 100 } | |
| 101 | |
| 102 void removeAll(String name) { | |
| 103 for (var headers in _headers) { | |
| 104 headers.removeAll(name); | |
| 105 } | |
| 106 } | |
| 107 | |
| 108 void set(String name, Object value) { | |
| 109 for (var headers in _headers) { | |
| 110 headers.set(name, value); | |
| 111 } | |
| 112 } | |
| 113 | |
| 114 String value(String name) => _headers.first.value(name); | |
| 115 | |
| 116 List<String> operator[](String name) => _headers.first[name]; | |
| 117 | |
| 118 void clear() { | |
| 119 for (var headers in _headers) { | |
| 120 headers.clear(); | |
| 121 } | |
| 122 } | |
| 123 } | |
| OLD | NEW |