| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This file contains some protocol structures for use with SPDY 2 and 3 | 5 // This file contains some protocol structures for use with SPDY 2 and 3 |
| 6 // The SPDY 2 spec can be found at: | 6 // The SPDY 2 spec can be found at: |
| 7 // http://dev.chromium.org/spdy/spdy-protocol/spdy-protocol-draft2 | 7 // http://dev.chromium.org/spdy/spdy-protocol/spdy-protocol-draft2 |
| 8 // The SPDY 3 spec can be found at: | 8 // The SPDY 3 spec can be found at: |
| 9 // http://dev.chromium.org/spdy/spdy-protocol/spdy-protocol-draft3 | 9 // http://dev.chromium.org/spdy/spdy-protocol/spdy-protocol-draft3 |
| 10 | 10 |
| (...skipping 645 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 656 data_store_.reset(new std::string(data.data(), data.length())); | 656 data_store_.reset(new std::string(data.data(), data.length())); |
| 657 data_ = *(data_store_.get()); | 657 data_ = *(data_store_.get()); |
| 658 } | 658 } |
| 659 | 659 |
| 660 // Shallow-copy of data (do not keep private copy). | 660 // Shallow-copy of data (do not keep private copy). |
| 661 void SetDataShallow(const base::StringPiece& data) { | 661 void SetDataShallow(const base::StringPiece& data) { |
| 662 data_store_.reset(); | 662 data_store_.reset(); |
| 663 data_ = data; | 663 data_ = data; |
| 664 } | 664 } |
| 665 | 665 |
| 666 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 666 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 667 | 667 |
| 668 private: | 668 private: |
| 669 // Used to store data that this SpdyDataIR should own. | 669 // Used to store data that this SpdyDataIR should own. |
| 670 scoped_ptr<std::string> data_store_; | 670 scoped_ptr<std::string> data_store_; |
| 671 base::StringPiece data_; | 671 base::StringPiece data_; |
| 672 | 672 |
| 673 bool padded_; | 673 bool padded_; |
| 674 // padding_payload_len_ = desired padding length - len(padding length field). | 674 // padding_payload_len_ = desired padding length - len(padding length field). |
| 675 int padding_payload_len_; | 675 int padding_payload_len_; |
| 676 | 676 |
| (...skipping 14 matching lines...) Expand all Loading... |
| 691 void set_associated_to_stream_id(SpdyStreamId stream_id) { | 691 void set_associated_to_stream_id(SpdyStreamId stream_id) { |
| 692 associated_to_stream_id_ = stream_id; | 692 associated_to_stream_id_ = stream_id; |
| 693 } | 693 } |
| 694 SpdyPriority priority() const { return priority_; } | 694 SpdyPriority priority() const { return priority_; } |
| 695 void set_priority(SpdyPriority priority) { priority_ = priority; } | 695 void set_priority(SpdyPriority priority) { priority_ = priority; } |
| 696 bool unidirectional() const { return unidirectional_; } | 696 bool unidirectional() const { return unidirectional_; } |
| 697 void set_unidirectional(bool unidirectional) { | 697 void set_unidirectional(bool unidirectional) { |
| 698 unidirectional_ = unidirectional; | 698 unidirectional_ = unidirectional; |
| 699 } | 699 } |
| 700 | 700 |
| 701 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 701 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 702 | 702 |
| 703 private: | 703 private: |
| 704 SpdyStreamId associated_to_stream_id_; | 704 SpdyStreamId associated_to_stream_id_; |
| 705 SpdyPriority priority_; | 705 SpdyPriority priority_; |
| 706 bool unidirectional_; | 706 bool unidirectional_; |
| 707 | 707 |
| 708 DISALLOW_COPY_AND_ASSIGN(SpdySynStreamIR); | 708 DISALLOW_COPY_AND_ASSIGN(SpdySynStreamIR); |
| 709 }; | 709 }; |
| 710 | 710 |
| 711 class NET_EXPORT_PRIVATE SpdySynReplyIR : public SpdyFrameWithNameValueBlockIR { | 711 class NET_EXPORT_PRIVATE SpdySynReplyIR : public SpdyFrameWithNameValueBlockIR { |
| 712 public: | 712 public: |
| 713 explicit SpdySynReplyIR(SpdyStreamId stream_id) | 713 explicit SpdySynReplyIR(SpdyStreamId stream_id) |
| 714 : SpdyFrameWithNameValueBlockIR(stream_id) {} | 714 : SpdyFrameWithNameValueBlockIR(stream_id) {} |
| 715 | 715 |
| 716 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 716 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 717 | 717 |
| 718 private: | 718 private: |
| 719 DISALLOW_COPY_AND_ASSIGN(SpdySynReplyIR); | 719 DISALLOW_COPY_AND_ASSIGN(SpdySynReplyIR); |
| 720 }; | 720 }; |
| 721 | 721 |
| 722 class NET_EXPORT_PRIVATE SpdyRstStreamIR : public SpdyFrameWithStreamIdIR { | 722 class NET_EXPORT_PRIVATE SpdyRstStreamIR : public SpdyFrameWithStreamIdIR { |
| 723 public: | 723 public: |
| 724 SpdyRstStreamIR(SpdyStreamId stream_id, SpdyRstStreamStatus status, | 724 SpdyRstStreamIR(SpdyStreamId stream_id, SpdyRstStreamStatus status, |
| 725 base::StringPiece description); | 725 base::StringPiece description); |
| 726 | 726 |
| 727 virtual ~SpdyRstStreamIR(); | 727 virtual ~SpdyRstStreamIR(); |
| 728 | 728 |
| 729 SpdyRstStreamStatus status() const { | 729 SpdyRstStreamStatus status() const { |
| 730 return status_; | 730 return status_; |
| 731 } | 731 } |
| 732 void set_status(SpdyRstStreamStatus status) { | 732 void set_status(SpdyRstStreamStatus status) { |
| 733 status_ = status; | 733 status_ = status; |
| 734 } | 734 } |
| 735 | 735 |
| 736 base::StringPiece description() const { return description_; } | 736 base::StringPiece description() const { return description_; } |
| 737 | 737 |
| 738 void set_description(base::StringPiece description) { | 738 void set_description(base::StringPiece description) { |
| 739 description_ = description; | 739 description_ = description; |
| 740 } | 740 } |
| 741 | 741 |
| 742 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 742 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 743 | 743 |
| 744 private: | 744 private: |
| 745 SpdyRstStreamStatus status_; | 745 SpdyRstStreamStatus status_; |
| 746 base::StringPiece description_; | 746 base::StringPiece description_; |
| 747 | 747 |
| 748 DISALLOW_COPY_AND_ASSIGN(SpdyRstStreamIR); | 748 DISALLOW_COPY_AND_ASSIGN(SpdyRstStreamIR); |
| 749 }; | 749 }; |
| 750 | 750 |
| 751 class NET_EXPORT_PRIVATE SpdySettingsIR : public SpdyFrameIR { | 751 class NET_EXPORT_PRIVATE SpdySettingsIR : public SpdyFrameIR { |
| 752 public: | 752 public: |
| (...skipping 25 matching lines...) Expand all Loading... |
| 778 | 778 |
| 779 bool clear_settings() const { return clear_settings_; } | 779 bool clear_settings() const { return clear_settings_; } |
| 780 void set_clear_settings(bool clear_settings) { | 780 void set_clear_settings(bool clear_settings) { |
| 781 clear_settings_ = clear_settings; | 781 clear_settings_ = clear_settings; |
| 782 } | 782 } |
| 783 bool is_ack() const { return is_ack_; } | 783 bool is_ack() const { return is_ack_; } |
| 784 void set_is_ack(bool is_ack) { | 784 void set_is_ack(bool is_ack) { |
| 785 is_ack_ = is_ack; | 785 is_ack_ = is_ack; |
| 786 } | 786 } |
| 787 | 787 |
| 788 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 788 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 789 | 789 |
| 790 private: | 790 private: |
| 791 ValueMap values_; | 791 ValueMap values_; |
| 792 bool clear_settings_; | 792 bool clear_settings_; |
| 793 bool is_ack_; | 793 bool is_ack_; |
| 794 | 794 |
| 795 DISALLOW_COPY_AND_ASSIGN(SpdySettingsIR); | 795 DISALLOW_COPY_AND_ASSIGN(SpdySettingsIR); |
| 796 }; | 796 }; |
| 797 | 797 |
| 798 class NET_EXPORT_PRIVATE SpdyPingIR : public SpdyFrameIR { | 798 class NET_EXPORT_PRIVATE SpdyPingIR : public SpdyFrameIR { |
| 799 public: | 799 public: |
| 800 explicit SpdyPingIR(SpdyPingId id) : id_(id), is_ack_(false) {} | 800 explicit SpdyPingIR(SpdyPingId id) : id_(id), is_ack_(false) {} |
| 801 SpdyPingId id() const { return id_; } | 801 SpdyPingId id() const { return id_; } |
| 802 | 802 |
| 803 // ACK logic is valid only for SPDY versions 4 and above. | 803 // ACK logic is valid only for SPDY versions 4 and above. |
| 804 bool is_ack() const { return is_ack_; } | 804 bool is_ack() const { return is_ack_; } |
| 805 void set_is_ack(bool is_ack) { is_ack_ = is_ack; } | 805 void set_is_ack(bool is_ack) { is_ack_ = is_ack; } |
| 806 | 806 |
| 807 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 807 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 808 | 808 |
| 809 private: | 809 private: |
| 810 SpdyPingId id_; | 810 SpdyPingId id_; |
| 811 bool is_ack_; | 811 bool is_ack_; |
| 812 | 812 |
| 813 DISALLOW_COPY_AND_ASSIGN(SpdyPingIR); | 813 DISALLOW_COPY_AND_ASSIGN(SpdyPingIR); |
| 814 }; | 814 }; |
| 815 | 815 |
| 816 class NET_EXPORT_PRIVATE SpdyGoAwayIR : public SpdyFrameIR { | 816 class NET_EXPORT_PRIVATE SpdyGoAwayIR : public SpdyFrameIR { |
| 817 public: | 817 public: |
| 818 SpdyGoAwayIR(SpdyStreamId last_good_stream_id, SpdyGoAwayStatus status, | 818 SpdyGoAwayIR(SpdyStreamId last_good_stream_id, SpdyGoAwayStatus status, |
| 819 const base::StringPiece& description); | 819 const base::StringPiece& description); |
| 820 virtual ~SpdyGoAwayIR(); | 820 virtual ~SpdyGoAwayIR(); |
| 821 SpdyStreamId last_good_stream_id() const { return last_good_stream_id_; } | 821 SpdyStreamId last_good_stream_id() const { return last_good_stream_id_; } |
| 822 void set_last_good_stream_id(SpdyStreamId last_good_stream_id) { | 822 void set_last_good_stream_id(SpdyStreamId last_good_stream_id) { |
| 823 DCHECK_LE(0u, last_good_stream_id); | 823 DCHECK_LE(0u, last_good_stream_id); |
| 824 DCHECK_EQ(0u, last_good_stream_id & ~kStreamIdMask); | 824 DCHECK_EQ(0u, last_good_stream_id & ~kStreamIdMask); |
| 825 last_good_stream_id_ = last_good_stream_id; | 825 last_good_stream_id_ = last_good_stream_id; |
| 826 } | 826 } |
| 827 SpdyGoAwayStatus status() const { return status_; } | 827 SpdyGoAwayStatus status() const { return status_; } |
| 828 void set_status(SpdyGoAwayStatus status) { | 828 void set_status(SpdyGoAwayStatus status) { |
| 829 // TODO(hkhalil): Check valid ranges of status? | 829 // TODO(hkhalil): Check valid ranges of status? |
| 830 status_ = status; | 830 status_ = status; |
| 831 } | 831 } |
| 832 | 832 |
| 833 const base::StringPiece& description() const; | 833 const base::StringPiece& description() const; |
| 834 | 834 |
| 835 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 835 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 836 | 836 |
| 837 private: | 837 private: |
| 838 SpdyStreamId last_good_stream_id_; | 838 SpdyStreamId last_good_stream_id_; |
| 839 SpdyGoAwayStatus status_; | 839 SpdyGoAwayStatus status_; |
| 840 const base::StringPiece description_; | 840 const base::StringPiece description_; |
| 841 | 841 |
| 842 DISALLOW_COPY_AND_ASSIGN(SpdyGoAwayIR); | 842 DISALLOW_COPY_AND_ASSIGN(SpdyGoAwayIR); |
| 843 }; | 843 }; |
| 844 | 844 |
| 845 class NET_EXPORT_PRIVATE SpdyHeadersIR : public SpdyFrameWithNameValueBlockIR { | 845 class NET_EXPORT_PRIVATE SpdyHeadersIR : public SpdyFrameWithNameValueBlockIR { |
| 846 public: | 846 public: |
| 847 explicit SpdyHeadersIR(SpdyStreamId stream_id) | 847 explicit SpdyHeadersIR(SpdyStreamId stream_id) |
| 848 : SpdyFrameWithNameValueBlockIR(stream_id), | 848 : SpdyFrameWithNameValueBlockIR(stream_id), |
| 849 has_priority_(false), | 849 has_priority_(false), |
| 850 priority_(0) {} | 850 priority_(0) {} |
| 851 | 851 |
| 852 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 852 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 853 | 853 |
| 854 bool has_priority() const { return has_priority_; } | 854 bool has_priority() const { return has_priority_; } |
| 855 void set_has_priority(bool has_priority) { has_priority_ = has_priority; } | 855 void set_has_priority(bool has_priority) { has_priority_ = has_priority; } |
| 856 uint32 priority() const { return priority_; } | 856 uint32 priority() const { return priority_; } |
| 857 void set_priority(SpdyPriority priority) { priority_ = priority; } | 857 void set_priority(SpdyPriority priority) { priority_ = priority; } |
| 858 | 858 |
| 859 private: | 859 private: |
| 860 bool has_priority_; | 860 bool has_priority_; |
| 861 // 31-bit priority. | 861 // 31-bit priority. |
| 862 uint32 priority_; | 862 uint32 priority_; |
| 863 DISALLOW_COPY_AND_ASSIGN(SpdyHeadersIR); | 863 DISALLOW_COPY_AND_ASSIGN(SpdyHeadersIR); |
| 864 }; | 864 }; |
| 865 | 865 |
| 866 class NET_EXPORT_PRIVATE SpdyWindowUpdateIR : public SpdyFrameWithStreamIdIR { | 866 class NET_EXPORT_PRIVATE SpdyWindowUpdateIR : public SpdyFrameWithStreamIdIR { |
| 867 public: | 867 public: |
| 868 SpdyWindowUpdateIR(SpdyStreamId stream_id, int32 delta) | 868 SpdyWindowUpdateIR(SpdyStreamId stream_id, int32 delta) |
| 869 : SpdyFrameWithStreamIdIR(stream_id) { | 869 : SpdyFrameWithStreamIdIR(stream_id) { |
| 870 set_delta(delta); | 870 set_delta(delta); |
| 871 } | 871 } |
| 872 int32 delta() const { return delta_; } | 872 int32 delta() const { return delta_; } |
| 873 void set_delta(int32 delta) { | 873 void set_delta(int32 delta) { |
| 874 DCHECK_LT(0, delta); | 874 DCHECK_LT(0, delta); |
| 875 DCHECK_LE(delta, kSpdyMaximumWindowSize); | 875 DCHECK_LE(delta, kSpdyMaximumWindowSize); |
| 876 delta_ = delta; | 876 delta_ = delta; |
| 877 } | 877 } |
| 878 | 878 |
| 879 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 879 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 880 | 880 |
| 881 private: | 881 private: |
| 882 int32 delta_; | 882 int32 delta_; |
| 883 | 883 |
| 884 DISALLOW_COPY_AND_ASSIGN(SpdyWindowUpdateIR); | 884 DISALLOW_COPY_AND_ASSIGN(SpdyWindowUpdateIR); |
| 885 }; | 885 }; |
| 886 | 886 |
| 887 class NET_EXPORT_PRIVATE SpdyBlockedIR | 887 class NET_EXPORT_PRIVATE SpdyBlockedIR |
| 888 : public NON_EXPORTED_BASE(SpdyFrameWithStreamIdIR) { | 888 : public NON_EXPORTED_BASE(SpdyFrameWithStreamIdIR) { |
| 889 public: | 889 public: |
| 890 explicit SpdyBlockedIR(SpdyStreamId stream_id) | 890 explicit SpdyBlockedIR(SpdyStreamId stream_id) |
| 891 : SpdyFrameWithStreamIdIR(stream_id) {} | 891 : SpdyFrameWithStreamIdIR(stream_id) {} |
| 892 | 892 |
| 893 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 893 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 894 | 894 |
| 895 private: | 895 private: |
| 896 DISALLOW_COPY_AND_ASSIGN(SpdyBlockedIR); | 896 DISALLOW_COPY_AND_ASSIGN(SpdyBlockedIR); |
| 897 }; | 897 }; |
| 898 | 898 |
| 899 class NET_EXPORT_PRIVATE SpdyPushPromiseIR | 899 class NET_EXPORT_PRIVATE SpdyPushPromiseIR |
| 900 : public SpdyFrameWithNameValueBlockIR { | 900 : public SpdyFrameWithNameValueBlockIR { |
| 901 public: | 901 public: |
| 902 SpdyPushPromiseIR(SpdyStreamId stream_id, SpdyStreamId promised_stream_id) | 902 SpdyPushPromiseIR(SpdyStreamId stream_id, SpdyStreamId promised_stream_id) |
| 903 : SpdyFrameWithNameValueBlockIR(stream_id), | 903 : SpdyFrameWithNameValueBlockIR(stream_id), |
| 904 promised_stream_id_(promised_stream_id) {} | 904 promised_stream_id_(promised_stream_id) {} |
| 905 SpdyStreamId promised_stream_id() const { return promised_stream_id_; } | 905 SpdyStreamId promised_stream_id() const { return promised_stream_id_; } |
| 906 void set_promised_stream_id(SpdyStreamId id) { promised_stream_id_ = id; } | 906 void set_promised_stream_id(SpdyStreamId id) { promised_stream_id_ = id; } |
| 907 | 907 |
| 908 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 908 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 909 | 909 |
| 910 private: | 910 private: |
| 911 SpdyStreamId promised_stream_id_; | 911 SpdyStreamId promised_stream_id_; |
| 912 DISALLOW_COPY_AND_ASSIGN(SpdyPushPromiseIR); | 912 DISALLOW_COPY_AND_ASSIGN(SpdyPushPromiseIR); |
| 913 }; | 913 }; |
| 914 | 914 |
| 915 // TODO(jgraettinger): This representation needs review. SpdyContinuationIR | 915 // TODO(jgraettinger): This representation needs review. SpdyContinuationIR |
| 916 // needs to frame a portion of a single, arbitrarily-broken encoded buffer. | 916 // needs to frame a portion of a single, arbitrarily-broken encoded buffer. |
| 917 class NET_EXPORT_PRIVATE SpdyContinuationIR | 917 class NET_EXPORT_PRIVATE SpdyContinuationIR |
| 918 : public SpdyFrameWithNameValueBlockIR { | 918 : public SpdyFrameWithNameValueBlockIR { |
| 919 public: | 919 public: |
| 920 explicit SpdyContinuationIR(SpdyStreamId stream_id) | 920 explicit SpdyContinuationIR(SpdyStreamId stream_id) |
| 921 : SpdyFrameWithNameValueBlockIR(stream_id), | 921 : SpdyFrameWithNameValueBlockIR(stream_id), |
| 922 end_headers_(false) {} | 922 end_headers_(false) {} |
| 923 | 923 |
| 924 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 924 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 925 | 925 |
| 926 bool end_headers() const { return end_headers_; } | 926 bool end_headers() const { return end_headers_; } |
| 927 void set_end_headers(bool end_headers) {end_headers_ = end_headers;} | 927 void set_end_headers(bool end_headers) {end_headers_ = end_headers;} |
| 928 | 928 |
| 929 private: | 929 private: |
| 930 bool end_headers_; | 930 bool end_headers_; |
| 931 DISALLOW_COPY_AND_ASSIGN(SpdyContinuationIR); | 931 DISALLOW_COPY_AND_ASSIGN(SpdyContinuationIR); |
| 932 }; | 932 }; |
| 933 | 933 |
| 934 class NET_EXPORT_PRIVATE SpdyAltSvcIR : public SpdyFrameWithStreamIdIR { | 934 class NET_EXPORT_PRIVATE SpdyAltSvcIR : public SpdyFrameWithStreamIdIR { |
| (...skipping 13 matching lines...) Expand all Loading... |
| 948 void set_protocol_id(SpdyProtocolId protocol_id) { | 948 void set_protocol_id(SpdyProtocolId protocol_id) { |
| 949 protocol_id_ = protocol_id; | 949 protocol_id_ = protocol_id; |
| 950 } | 950 } |
| 951 void set_host(std::string host) { | 951 void set_host(std::string host) { |
| 952 host_ = host; | 952 host_ = host; |
| 953 } | 953 } |
| 954 void set_origin(std::string origin) { | 954 void set_origin(std::string origin) { |
| 955 origin_ = origin; | 955 origin_ = origin; |
| 956 } | 956 } |
| 957 | 957 |
| 958 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 958 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 959 | 959 |
| 960 private: | 960 private: |
| 961 uint32 max_age_; | 961 uint32 max_age_; |
| 962 uint16 port_; | 962 uint16 port_; |
| 963 SpdyProtocolId protocol_id_; | 963 SpdyProtocolId protocol_id_; |
| 964 std::string host_; | 964 std::string host_; |
| 965 std::string origin_; | 965 std::string origin_; |
| 966 DISALLOW_COPY_AND_ASSIGN(SpdyAltSvcIR); | 966 DISALLOW_COPY_AND_ASSIGN(SpdyAltSvcIR); |
| 967 }; | 967 }; |
| 968 | 968 |
| 969 class NET_EXPORT_PRIVATE SpdyPriorityIR : public SpdyFrameWithStreamIdIR { | 969 class NET_EXPORT_PRIVATE SpdyPriorityIR : public SpdyFrameWithStreamIdIR { |
| 970 public: | 970 public: |
| 971 explicit SpdyPriorityIR(SpdyStreamId stream_id); | 971 explicit SpdyPriorityIR(SpdyStreamId stream_id); |
| 972 explicit SpdyPriorityIR(SpdyStreamId stream_id, | 972 explicit SpdyPriorityIR(SpdyStreamId stream_id, |
| 973 SpdyStreamId parent_stream_id, | 973 SpdyStreamId parent_stream_id, |
| 974 uint8 weight, | 974 uint8 weight, |
| 975 bool exclusive); | 975 bool exclusive); |
| 976 SpdyStreamId parent_stream_id() const { return parent_stream_id_; } | 976 SpdyStreamId parent_stream_id() const { return parent_stream_id_; } |
| 977 void set_parent_stream_id(SpdyStreamId id) { parent_stream_id_ = id; } | 977 void set_parent_stream_id(SpdyStreamId id) { parent_stream_id_ = id; } |
| 978 uint8 weight() const { return weight_; } | 978 uint8 weight() const { return weight_; } |
| 979 void set_weight(uint8 weight) { weight_ = weight; } | 979 void set_weight(uint8 weight) { weight_ = weight; } |
| 980 bool exclusive() const { return exclusive_; } | 980 bool exclusive() const { return exclusive_; } |
| 981 void set_exclusive(bool exclusive) { exclusive_ = exclusive; } | 981 void set_exclusive(bool exclusive) { exclusive_ = exclusive; } |
| 982 | 982 |
| 983 virtual void Visit(SpdyFrameVisitor* visitor) const OVERRIDE; | 983 virtual void Visit(SpdyFrameVisitor* visitor) const override; |
| 984 | 984 |
| 985 private: | 985 private: |
| 986 SpdyStreamId parent_stream_id_; | 986 SpdyStreamId parent_stream_id_; |
| 987 uint8 weight_; | 987 uint8 weight_; |
| 988 bool exclusive_; | 988 bool exclusive_; |
| 989 DISALLOW_COPY_AND_ASSIGN(SpdyPriorityIR); | 989 DISALLOW_COPY_AND_ASSIGN(SpdyPriorityIR); |
| 990 }; | 990 }; |
| 991 | 991 |
| 992 // ------------------------------------------------------------------------- | 992 // ------------------------------------------------------------------------- |
| 993 // Wrapper classes for various SPDY frames. | 993 // Wrapper classes for various SPDY frames. |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1057 SpdyFrameVisitor() {} | 1057 SpdyFrameVisitor() {} |
| 1058 virtual ~SpdyFrameVisitor() {} | 1058 virtual ~SpdyFrameVisitor() {} |
| 1059 | 1059 |
| 1060 private: | 1060 private: |
| 1061 DISALLOW_COPY_AND_ASSIGN(SpdyFrameVisitor); | 1061 DISALLOW_COPY_AND_ASSIGN(SpdyFrameVisitor); |
| 1062 }; | 1062 }; |
| 1063 | 1063 |
| 1064 } // namespace net | 1064 } // namespace net |
| 1065 | 1065 |
| 1066 #endif // NET_SPDY_SPDY_PROTOCOL_H_ | 1066 #endif // NET_SPDY_SPDY_PROTOCOL_H_ |
| OLD | NEW |