View Javadoc

    1   /*
    2    * Copyright 2012 The Netty Project
    3    *
    4    * The Netty Project licenses this file to you under the Apache License,
    5    * version 2.0 (the "License"); you may not use this file except in compliance
    6    * with the License. You may obtain a copy of the License at:
    7    *
    8    *   http://www.apache.org/licenses/LICENSE-2.0
    9    *
    10   * Unless required by applicable law or agreed to in writing, software
    11   * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
    12   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
    13   * License for the specific language governing permissions and limitations
    14   * under the License.
    15   */
    16  package org.jboss.netty.handler.codec.spdy;
    17
    18  import org.jboss.netty.util.internal.StringUtil;
    19
    20  /**
    21   * The default {@link SpdyRstStreamFrame} implementation.
    22   */
    23  public class DefaultSpdyRstStreamFrame implements SpdyRstStreamFrame {
    24
    25      private int streamId;
    26      private SpdyStreamStatus status;
    27
    28      /**
    29       * Creates a new instance.
    30       *
    31       * @param streamId   the Stream-ID of this frame
    32       * @param statusCode the Status code of this frame
    33       */
    34      public DefaultSpdyRstStreamFrame(int streamId, int statusCode) {
    35          this(streamId, SpdyStreamStatus.valueOf(statusCode));
    36      }
    37
    38      /**
    39       * Creates a new instance.
    40       *
    41       * @param streamId the Stream-ID of this frame
    42       * @param status   the status of this frame
    43       */
    44      public DefaultSpdyRstStreamFrame(int streamId, SpdyStreamStatus status) {
    45          setStreamId(streamId);
    46          setStatus(status);
    47      }
    48
    49      public int getStreamID() {
    50          return getStreamId();
    51      }
    52
    53      public int getStreamId() {
    54          return streamId;
    55      }
    56
    57      public void setStreamID(int streamId) {
    58          setStreamId(streamId);
    59      }
    60
    61      public void setStreamId(int streamId) {
    62          if (streamId <= 0) {
    63              throw new IllegalArgumentException(
    64                      "Stream-ID must be positive: " + streamId);
    65          }
    66          this.streamId = streamId;
    67      }
    68
    69      public SpdyStreamStatus getStatus() {
    70          return status;
    71      }
    72
    73      public void setStatus(SpdyStreamStatus status) {
    74          this.status = status;
    75      }
    76
    77      @Override
    78      public String toString() {
    79          StringBuilder buf = new StringBuilder();
    80          buf.append(getClass().getSimpleName());
    81          buf.append(StringUtil.NEWLINE);
    82          buf.append("--> Stream-ID = ");
    83          buf.append(streamId);
    84          buf.append(StringUtil.NEWLINE);
    85          buf.append("--> Status: ");
    86          buf.append(status.toString());
    87          return buf.toString();
    88      }
    89  }