Skip to content

Commit 1c0460a

Browse files
committed
refactor: address review comments
1 parent da1c12a commit 1c0460a

File tree

1 file changed

+35
-29
lines changed

1 file changed

+35
-29
lines changed

capabilities/access/grant.go

Lines changed: 35 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,6 @@ const (
3333
UnauthorizedCauseErrorName = "UnauthorizedCause"
3434
)
3535

36-
var (
37-
ErrUnknownCause = GrantError{
38-
ErrorName: UnknownCauseErrorName,
39-
Message: "unknown cause invocation",
40-
}
41-
ErrMissingCause = GrantError{
42-
ErrorName: MissingCauseErrorName,
43-
Message: "grant requires supporting contextual invocation",
44-
}
45-
)
46-
4736
// GrantCaveats are the caveats required to perform an access/grant invocation.
4837
type GrantCaveats struct {
4938
// Att are the capabilities agent wishes to be granted.
@@ -75,6 +64,41 @@ type GrantError struct {
7564
Message string
7665
}
7766

67+
func NewUnknownAbilityError(ability string) GrantError {
68+
return GrantError{
69+
ErrorName: UnknownAbilityErrorName,
70+
Message: fmt.Sprintf("unknown ability: %s", ability),
71+
}
72+
}
73+
74+
func NewMissingCauseError() GrantError {
75+
return GrantError{
76+
ErrorName: MissingCauseErrorName,
77+
Message: "grant requires supporting contextual invocation",
78+
}
79+
}
80+
81+
func NewUnknownCauseError() GrantError {
82+
return GrantError{
83+
ErrorName: UnknownCauseErrorName,
84+
Message: "unknown cause invocation",
85+
}
86+
}
87+
88+
func NewInvalidCauseError(msg string) GrantError {
89+
return GrantError{
90+
ErrorName: InvalidCauseErrorName,
91+
Message: fmt.Sprintf("invalid cause invocation: %s", msg),
92+
}
93+
}
94+
95+
func NewUnauthorizedCauseError(err validator.Unauthorized) GrantError {
96+
return GrantError{
97+
ErrorName: UnauthorizedCauseErrorName,
98+
Message: err.Error(),
99+
}
100+
}
101+
78102
func (ge GrantError) Name() string {
79103
return ge.ErrorName
80104
}
@@ -106,21 +130,3 @@ var Grant = validator.NewCapability(
106130
func GrantDerive(claimed, delegated ucan.Capability[GrantCaveats]) failure.Failure {
107131
return schema.NewSchemaError(fmt.Sprintf("%s cannot be delegated", GrantAbility))
108132
}
109-
110-
func NewUnknownAbilityError(ability string) GrantError {
111-
return GrantError{
112-
ErrorName: UnknownAbilityErrorName,
113-
Message: fmt.Sprintf("unknown ability: %s", ability),
114-
}
115-
}
116-
117-
func NewInvalidCauseError(msg string) GrantError {
118-
return GrantError{
119-
ErrorName: InvalidCauseErrorName,
120-
Message: fmt.Sprintf("invalid cause invocation: %s", msg),
121-
}
122-
}
123-
124-
func NewUnauthorizedCauseError(err validator.Unauthorized) GrantError {
125-
return GrantError{ErrorName: UnauthorizedCauseErrorName, Message: err.Error()}
126-
}

0 commit comments

Comments
 (0)