1 package jdk.incubator.http.internal.frame;
   2 
   3 public class MalformedFrame extends Http2Frame {
   4 
   5     private int errorCode;
   6     // if errorStream == 0 means Connection Error; RFC 7540 5.4.1
   7     // if errorStream != 0 means Stream Error; RFC 7540 5.4.2
   8     private int errorStream;
   9     private String msg;
  10 
  11     /**
  12      * Creates Connection Error malformed frame
  13      * @param errorCode - error code, as specified by RFC 7540
  14      * @param msg - internal debug message
  15      */
  16     public MalformedFrame(int errorCode, String msg) {
  17         this(errorCode, 0 , msg);
  18     }
  19 
  20     /**
  21      * Creates Stream Error malformed frame
  22      * @param errorCode - error code, as specified by RFC 7540
  23      * @param errorStream - id of error stream (RST_FRAME will be send for this stream)
  24      * @param msg - internal debug message
  25      */
  26     public MalformedFrame(int errorCode, int errorStream, String msg) {
  27         super(0, 0);
  28         this.errorCode = errorCode;
  29         this.errorStream = errorStream;
  30         this.msg = msg;
  31     }
  32 
  33     @Override
  34     public String toString() {
  35         return super.toString() + " MalformedFrame, Error: " + ErrorFrame.stringForCode(errorCode)
  36                 + " streamid: " + streamid + " reason: " + msg;
  37     }
  38 
  39     public int getErrorCode() {
  40         return errorCode;
  41     }
  42 
  43     public String getMessage() {
  44         return msg;
  45     }
  46 }