summaryrefslogtreecommitdiff
path: root/vendor/github.com/tomnomnom/linkheader
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/tomnomnom/linkheader')
-rw-r--r--vendor/github.com/tomnomnom/linkheader/.gitignore2
-rw-r--r--vendor/github.com/tomnomnom/linkheader/.travis.yml6
-rw-r--r--vendor/github.com/tomnomnom/linkheader/CONTRIBUTING.mkd10
-rw-r--r--vendor/github.com/tomnomnom/linkheader/LICENSE21
-rw-r--r--vendor/github.com/tomnomnom/linkheader/README.mkd35
-rw-r--r--vendor/github.com/tomnomnom/linkheader/main.go151
6 files changed, 0 insertions, 225 deletions
diff --git a/vendor/github.com/tomnomnom/linkheader/.gitignore b/vendor/github.com/tomnomnom/linkheader/.gitignore
deleted file mode 100644
index 0a00ddebb..000000000
--- a/vendor/github.com/tomnomnom/linkheader/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-cpu.out
-linkheader.test
diff --git a/vendor/github.com/tomnomnom/linkheader/.travis.yml b/vendor/github.com/tomnomnom/linkheader/.travis.yml
deleted file mode 100644
index cfda08659..000000000
--- a/vendor/github.com/tomnomnom/linkheader/.travis.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-language: go
-
-go:
- - 1.6
- - 1.7
- - tip
diff --git a/vendor/github.com/tomnomnom/linkheader/CONTRIBUTING.mkd b/vendor/github.com/tomnomnom/linkheader/CONTRIBUTING.mkd
deleted file mode 100644
index 0339bec55..000000000
--- a/vendor/github.com/tomnomnom/linkheader/CONTRIBUTING.mkd
+++ /dev/null
@@ -1,10 +0,0 @@
-# Contributing
-
-* Raise an issue if appropriate
-* Fork the repo
-* Bootstrap the dev dependencies (run `./script/bootstrap`)
-* Make your changes
-* Use [gofmt](https://golang.org/cmd/gofmt/)
-* Make sure the tests pass (run `./script/test`)
-* Make sure the linters pass (run `./script/lint`)
-* Issue a pull request
diff --git a/vendor/github.com/tomnomnom/linkheader/LICENSE b/vendor/github.com/tomnomnom/linkheader/LICENSE
deleted file mode 100644
index 55192df56..000000000
--- a/vendor/github.com/tomnomnom/linkheader/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2016 Tom Hudson
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/vendor/github.com/tomnomnom/linkheader/README.mkd b/vendor/github.com/tomnomnom/linkheader/README.mkd
deleted file mode 100644
index 2a949cac2..000000000
--- a/vendor/github.com/tomnomnom/linkheader/README.mkd
+++ /dev/null
@@ -1,35 +0,0 @@
-# Golang Link Header Parser
-
-Library for parsing HTTP Link headers. Requires Go 1.6 or higher.
-
-Docs can be found on [the GoDoc page](https://godoc.org/github.com/tomnomnom/linkheader).
-
-[![Build Status](https://travis-ci.org/tomnomnom/linkheader.svg)](https://travis-ci.org/tomnomnom/linkheader)
-
-## Basic Example
-
-```go
-package main
-
-import (
- "fmt"
-
- "github.com/tomnomnom/linkheader"
-)
-
-func main() {
- header := "<https://api.github.com/user/58276/repos?page=2>; rel=\"next\"," +
- "<https://api.github.com/user/58276/repos?page=2>; rel=\"last\""
- links := linkheader.Parse(header)
-
- for _, link := range links {
- fmt.Printf("URL: %s; Rel: %s\n", link.URL, link.Rel)
- }
-}
-
-// Output:
-// URL: https://api.github.com/user/58276/repos?page=2; Rel: next
-// URL: https://api.github.com/user/58276/repos?page=2; Rel: last
-```
-
-
diff --git a/vendor/github.com/tomnomnom/linkheader/main.go b/vendor/github.com/tomnomnom/linkheader/main.go
deleted file mode 100644
index 6b81321b8..000000000
--- a/vendor/github.com/tomnomnom/linkheader/main.go
+++ /dev/null
@@ -1,151 +0,0 @@
-// Package linkheader provides functions for parsing HTTP Link headers
-package linkheader
-
-import (
- "fmt"
- "strings"
-)
-
-// A Link is a single URL and related parameters
-type Link struct {
- URL string
- Rel string
- Params map[string]string
-}
-
-// HasParam returns if a Link has a particular parameter or not
-func (l Link) HasParam(key string) bool {
- for p := range l.Params {
- if p == key {
- return true
- }
- }
- return false
-}
-
-// Param returns the value of a parameter if it exists
-func (l Link) Param(key string) string {
- for k, v := range l.Params {
- if key == k {
- return v
- }
- }
- return ""
-}
-
-// String returns the string representation of a link
-func (l Link) String() string {
-
- p := make([]string, 0, len(l.Params))
- for k, v := range l.Params {
- p = append(p, fmt.Sprintf("%s=\"%s\"", k, v))
- }
- if l.Rel != "" {
- p = append(p, fmt.Sprintf("%s=\"%s\"", "rel", l.Rel))
- }
- return fmt.Sprintf("<%s>; %s", l.URL, strings.Join(p, "; "))
-}
-
-// Links is a slice of Link structs
-type Links []Link
-
-// FilterByRel filters a group of Links by the provided Rel attribute
-func (l Links) FilterByRel(r string) Links {
- links := make(Links, 0)
- for _, link := range l {
- if link.Rel == r {
- links = append(links, link)
- }
- }
- return links
-}
-
-// String returns the string representation of multiple Links
-// for use in HTTP responses etc
-func (l Links) String() string {
- if l == nil {
- return fmt.Sprint(nil)
- }
-
- var strs []string
- for _, link := range l {
- strs = append(strs, link.String())
- }
- return strings.Join(strs, ", ")
-}
-
-// Parse parses a raw Link header in the form:
-// <url>; rel="foo", <url>; rel="bar"; wat="dis"
-// returning a slice of Link structs
-func Parse(raw string) Links {
- var links Links
-
- // One chunk: <url>; rel="foo"
- for _, chunk := range strings.Split(raw, ",") {
-
- link := Link{URL: "", Rel: "", Params: make(map[string]string)}
-
- // Figure out what each piece of the chunk is
- for _, piece := range strings.Split(chunk, ";") {
-
- piece = strings.Trim(piece, " ")
- if piece == "" {
- continue
- }
-
- // URL
- if piece[0] == '<' && piece[len(piece)-1] == '>' {
- link.URL = strings.Trim(piece, "<>")
- continue
- }
-
- // Params
- key, val := parseParam(piece)
- if key == "" {
- continue
- }
-
- // Special case for rel
- if strings.ToLower(key) == "rel" {
- link.Rel = val
- } else {
- link.Params[key] = val
- }
- }
-
- if link.URL != "" {
- links = append(links, link)
- }
- }
-
- return links
-}
-
-// ParseMultiple is like Parse, but accepts a slice of headers
-// rather than just one header string
-func ParseMultiple(headers []string) Links {
- links := make(Links, 0)
- for _, header := range headers {
- links = append(links, Parse(header)...)
- }
- return links
-}
-
-// parseParam takes a raw param in the form key="val" and
-// returns the key and value as seperate strings
-func parseParam(raw string) (key, val string) {
-
- parts := strings.SplitN(raw, "=", 2)
- if len(parts) == 1 {
- return parts[0], ""
- }
- if len(parts) != 2 {
- return "", ""
- }
-
- key = parts[0]
- val = strings.Trim(parts[1], "\"")
-
- return key, val
-
-}