package filecli

import (
	"encoding/base64"
)

type Authenticator interface {
	MakeHeader(user, pass string) (key, value string, err error)
}

type BasicAuthenticator struct{}

func NewBasicAuthenticator() *BasicAuthenticator {
	return &BasicAuthenticator{}
}

func (auth *BasicAuthenticator) MakeHeader(user, pass string) (string, string, error) {
	pair := base64.StdEncoding.EncodeToString([]byte(user + ":" + pass))
	return "Authorization", "Basic " + pair, nil
}
