aboutsummaryrefslogtreecommitdiff
path: root/headers.go
diff options
context:
space:
mode:
Diffstat (limited to 'headers.go')
-rw-r--r--headers.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/headers.go b/headers.go
index 88c1a63..c1119ae 100644
--- a/headers.go
+++ b/headers.go
@@ -101,3 +101,24 @@ func headersFromHTTP(src http.Header) Headers {
}
return h
}
+
+////////////////////////////////////////////////////////////////////////////////
+// specialized accessors on Headers subtypes that are not autogenerated
+
+//IsDynamicLargeObject returns true if this set of headers belongs to a Dynamic
+//Large Object (DLO).
+func (h ObjectHeaders) IsDynamicLargeObject() bool {
+ return h.Headers.Get("X-Object-Manifest") != ""
+}
+
+//IsStaticLargeObject returns true if this set of headers belongs to a Static
+//Large Object (SLO).
+func (h ObjectHeaders) IsStaticLargeObject() bool {
+ return h.Headers.Get("X-Static-Large-Object") == "True"
+}
+
+//IsLargeObject returns true if this set of headers belongs to a large object
+//(either an SLO or a DLO).
+func (h ObjectHeaders) IsLargeObject() bool {
+ return h.IsDynamicLargeObject() || h.IsStaticLargeObject()
+}