- Reorganize internal packages and overall project structure - Update imports and wiring to match the new layout - Separate HTTP parsing and streaming from the server package - Separate middleware from the server package - Separate session registry from the session package - Move HTTP, HTTPS, and TCP servers to the transport package - Session package no longer starts the TCP server directly - Server package no longer starts HTTP/HTTPS servers on initialization - Forwarder no longer handles accepting TCP requests - Move session details to the types package - HTTP/HTTPS initialization is now the responsibility of main
31 lines
545 B
Go
31 lines
545 B
Go
package header
|
|
|
|
type ResponseHeader interface {
|
|
Value(key string) string
|
|
Set(key string, value string)
|
|
Remove(key string)
|
|
Finalize() []byte
|
|
}
|
|
|
|
type responseHeader struct {
|
|
startLine []byte
|
|
headers map[string]string
|
|
}
|
|
|
|
type RequestHeader interface {
|
|
Value(key string) string
|
|
Set(key string, value string)
|
|
Remove(key string)
|
|
Finalize() []byte
|
|
GetMethod() string
|
|
GetPath() string
|
|
GetVersion() string
|
|
}
|
|
type requestHeader struct {
|
|
method string
|
|
path string
|
|
version string
|
|
startLine []byte
|
|
headers map[string]string
|
|
}
|