package ajp13

// HTTPHeader encodes which HTTP header is being used
type HTTPHeader uint16

const (
	Accept         = HTTPHeader(iota + 0xA001)
	AcceptCharset  = HTTPHeader(iota + 0xA001)
	AcceptEncoding = HTTPHeader(iota + 0xA001)
	AcceptLanguage = HTTPHeader(iota + 0xA001)
	Authorization  = HTTPHeader(iota + 0xA001)
	Connection     = HTTPHeader(iota + 0xA001)
	ContentType    = HTTPHeader(iota + 0xA001)
	ContentLength  = HTTPHeader(iota + 0xA001)
	Cookie         = HTTPHeader(iota + 0xA001)
	Cookie2        = HTTPHeader(iota + 0xA001)
	Host           = HTTPHeader(iota + 0xA001)
	Pragma         = HTTPHeader(iota + 0xA001)
	Referer        = HTTPHeader(iota + 0xA001)
	UserAgent      = HTTPHeader(iota + 0xA001)
)

func (h HTTPHeader) String() string {
	switch h {
	case Accept:
		return "Accept"
	case AcceptCharset:
		return "Accept-Charset"
	case AcceptEncoding:
		return "Accept-Encoding"
	case AcceptLanguage:
		return "Accept-Language"
	case Authorization:
		return "Authorization"
	case Connection:
		return "Connection"
	case ContentType:
		return "Content-Type"
	case ContentLength:
		return "Content-Length"
	case Cookie:
		return "Cookie"
	case Cookie2:
		return "Cookie2"
	case Host:
		return "Host"
	case Pragma:
		return "Pragma"
	case Referer:
		return "Referer"
	case UserAgent:
		return "User-Agent"
	}

	return "UNKNOWN"
}
