2021-05-01 02:48:36 +00:00
|
|
|
import 'dart:collection';
|
|
|
|
import 'range_header.dart';
|
|
|
|
import 'range_header_item.dart';
|
|
|
|
|
|
|
|
/// Represents the contents of a parsed `Range` header.
|
|
|
|
class RangeHeaderImpl implements RangeHeader {
|
2021-05-01 03:39:09 +00:00
|
|
|
UnmodifiableListView<RangeHeaderItem>? _cached;
|
2021-05-01 02:48:36 +00:00
|
|
|
final List<RangeHeaderItem> _items = [];
|
|
|
|
|
|
|
|
RangeHeaderImpl(this.rangeUnit, [List<RangeHeaderItem> items = const []]) {
|
2021-05-01 03:39:09 +00:00
|
|
|
this._items.addAll(items);
|
2021-05-01 02:48:36 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@override
|
|
|
|
UnmodifiableListView<RangeHeaderItem> get items =>
|
|
|
|
_cached ??= new UnmodifiableListView<RangeHeaderItem>(_items);
|
|
|
|
|
|
|
|
@override
|
2021-05-01 03:39:09 +00:00
|
|
|
final String? rangeUnit;
|
2021-05-01 02:48:36 +00:00
|
|
|
}
|