Skip to content

Commit fb99af4

Browse files
Jonesywolflorenzodonini
authored andcommitted
Allowed empty group ID tokens for NoAuthorization token type
1 parent c5f53b3 commit fb99af4

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

ocpp2.0.1/types/types.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,17 @@ type GroupIdToken struct {
266266
Type IdTokenType `json:"type" validate:"required,idTokenType"`
267267
}
268268

269+
func isValidGroupIdToken(sl validator.StructLevel) {
270+
groupIdToken := sl.Current().Interface().(GroupIdToken)
271+
// validate required idToken value except `NoAuthorization` type
272+
switch groupIdToken.Type {
273+
case IdTokenTypeCentral, IdTokenTypeEMAID, IdTokenTypeISO14443, IdTokenTypeISO15693, IdTokenTypeKeyCode, IdTokenTypeLocal, IdTokenTypeMacAddress:
274+
if groupIdToken.IdToken == "" {
275+
sl.ReportError(groupIdToken.IdToken, "IdToken", "IdToken", "required", "")
276+
}
277+
}
278+
}
279+
269280
type IdTokenInfo struct {
270281
Status AuthorizationStatus `json:"status" validate:"required,authorizationStatus201"`
271282
CacheExpiryDateTime *DateTime `json:"cacheExpiryDateTime,omitempty" validate:"omitempty"`
@@ -744,4 +755,5 @@ func init() {
744755
_ = Validate.RegisterValidation("costKind", isValidCostKind)
745756

746757
Validate.RegisterStructValidation(isValidIdToken, IdToken{})
758+
Validate.RegisterStructValidation(isValidGroupIdToken, GroupIdToken{})
747759
}

0 commit comments

Comments
 (0)