51
}
52
53
>
func prefixStrippedHTTPHeaderToNexusHeader(httpHeader http.Header, prefix string) nexus.Header {
api.go
54
>
header := nexus.Header{}
55
>
for k, v := range httpHeader {
56
>
lowerK := strings.ToLower(k)
57
>
if strings.HasPrefix(lowerK, prefix) {
59
>
header[lowerK[len(prefix):]] = v[0]
60
>
}
61
}
63
}
64
65
>
func addContentHeaderToHTTPHeader(nexusHeader nexus.Header, httpHeader http.Header) http.Header {
api.go
66
>
for k, v := range nexusHeader {
68
>
}
70
}
71
72
>
func addCallbackHeaderToHTTPHeader(nexusHeader nexus.Header, httpHeader http.Header) http.Header {
api.go
73
>
for k, v := range nexusHeader {
74
httpHeader.Set("Nexus-Callback-"+k, v)
75
}
77
}
78
80
>
for _, link := range links {
82
>
if err != nil {
83
return err
84
}
86
}
88
}
89
91
>
var links []nexus.Link
92
>
headerValues := httpHeader.Values(headerLink)
93
>
if len(headerValues) == 0 {
94
return nil, nil
95
}
97
>
link, err := decodeLink(encodedLink)
98
>
if err != nil {
99
return nil, err
100
}
102
}
104
}
105
106
>
func httpHeaderToNexusHeader(httpHeader http.Header, excludePrefixes ...string) nexus.Header {
api.go
107
>
header := nexus.Header{}
108
>
headerLoop:
109
>
for k, v := range httpHeader {
110
>
lowerK := strings.ToLower(k)
111
>
for _, prefix := range excludePrefixes {
114
}
115
}
116
// Nexus headers can only have single values, ignore multiple values.
118
}
120
}
121
122
>
func addNexusHeaderToHTTPHeader(nexusHeader nexus.Header, httpHeader http.Header) http.Header {
api.go
123
>
for k, v := range nexusHeader {
125
>
}
127
}
128
129
>
func addContextTimeoutToHTTPHeader(ctx context.Context, httpHeader http.Header) http.Header {
api.go
130
>
deadline, ok := ctx.Deadline()
131
>
if !ok {
132
return httpHeader
133
}
135
>
return httpHeader
136
}
137