diff options
Diffstat (limited to 'swarm/api/uri.go')
-rw-r--r-- | swarm/api/uri.go | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/swarm/api/uri.go b/swarm/api/uri.go index af1dc7445..d8aafedf4 100644 --- a/swarm/api/uri.go +++ b/swarm/api/uri.go @@ -36,6 +36,8 @@ type URI struct { // * bzzr - raw swarm content // * bzzi - immutable URI of an entry in a swarm manifest // (address is not resolved) + // * bzz-hash - hash of swarm content + // Scheme string // Addr is either a hexadecimal storage key or it an address which @@ -56,7 +58,7 @@ type URI struct { // * <scheme>://<addr> // * <scheme>://<addr>/<path> // -// with scheme one of bzz, bzz-raw, bzz-immutable or bzz-list +// with scheme one of bzz, bzz-raw, bzz-immutable, bzz-list or bzz-hash // or deprecated ones bzzr and bzzi func Parse(rawuri string) (*URI, error) { u, err := url.Parse(rawuri) @@ -67,7 +69,7 @@ func Parse(rawuri string) (*URI, error) { // check the scheme is valid switch uri.Scheme { - case "bzz", "bzz-raw", "bzz-immutable", "bzz-list", "bzzr", "bzzi": + case "bzz", "bzz-raw", "bzz-immutable", "bzz-list", "bzz-hash", "bzzr", "bzzi": default: return nil, fmt.Errorf("unknown scheme %q", u.Scheme) } @@ -110,6 +112,10 @@ func (u *URI) DeprecatedImmutable() bool { return u.Scheme == "bzzi" } +func (u *URI) Hash() bool { + return u.Scheme == "bzz-hash" +} + func (u *URI) String() string { return u.Scheme + ":/" + u.Addr + "/" + u.Path } |