mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
87 lines
1.3 KiB
Go
87 lines
1.3 KiB
Go
|
package registry
|
||
|
|
||
|
import (
|
||
|
"net/url"
|
||
|
|
||
|
"github.com/docker/distribution/registry/api/errcode"
|
||
|
)
|
||
|
|
||
|
type notFoundError string
|
||
|
|
||
|
func (e notFoundError) Error() string {
|
||
|
return string(e)
|
||
|
}
|
||
|
|
||
|
func (notFoundError) NotFound() {}
|
||
|
|
||
|
type validationError struct {
|
||
|
cause error
|
||
|
}
|
||
|
|
||
|
func (e validationError) Error() string {
|
||
|
return e.cause.Error()
|
||
|
}
|
||
|
|
||
|
func (e validationError) InvalidParameter() {}
|
||
|
|
||
|
func (e validationError) Cause() error {
|
||
|
return e.cause
|
||
|
}
|
||
|
|
||
|
type unauthorizedError struct {
|
||
|
cause error
|
||
|
}
|
||
|
|
||
|
func (e unauthorizedError) Error() string {
|
||
|
return e.cause.Error()
|
||
|
}
|
||
|
|
||
|
func (e unauthorizedError) Unauthorized() {}
|
||
|
|
||
|
func (e unauthorizedError) Cause() error {
|
||
|
return e.cause
|
||
|
}
|
||
|
|
||
|
type systemError struct {
|
||
|
cause error
|
||
|
}
|
||
|
|
||
|
func (e systemError) Error() string {
|
||
|
return e.cause.Error()
|
||
|
}
|
||
|
|
||
|
func (e systemError) SystemError() {}
|
||
|
|
||
|
func (e systemError) Cause() error {
|
||
|
return e.cause
|
||
|
}
|
||
|
|
||
|
type notActivatedError struct {
|
||
|
cause error
|
||
|
}
|
||
|
|
||
|
func (e notActivatedError) Error() string {
|
||
|
return e.cause.Error()
|
||
|
}
|
||
|
|
||
|
func (e notActivatedError) Forbidden() {}
|
||
|
|
||
|
func (e notActivatedError) Cause() error {
|
||
|
return e.cause
|
||
|
}
|
||
|
|
||
|
func translateV2AuthError(err error) error {
|
||
|
switch e := err.(type) {
|
||
|
case *url.Error:
|
||
|
switch e2 := e.Err.(type) {
|
||
|
case errcode.Error:
|
||
|
switch e2.Code {
|
||
|
case errcode.ErrorCodeUnauthorized:
|
||
|
return unauthorizedError{err}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return err
|
||
|
}
|