MCPcopy Create free account
hub / github.com/bytebase/bytebase / applyMaskerToJSONMember

Function applyMaskerToJSONMember

backend/api/v1/document_masking.go:477–493  ·  view source on GitHub ↗
(data any, m masker.Masker)

Source from the content-addressed store, hash-verified

475}
476
477func applyMaskerToJSONMember(data any, m masker.Masker) (any, error) {
478 if rowValue, ok := getRowValueFromJSONAtomicMember(data); ok {
479 return getJSONMemberFromRowValue(m.Mask(&masker.MaskData{Data: rowValue})), nil
480 }
481
482 jsonBytes, err := json.Marshal(data)
483 if err != nil {
484 return nil, errors.Wrap(err, "failed to marshal JSON member")
485 }
486 return getJSONMemberFromRowValue(m.Mask(&masker.MaskData{
487 Data: &v1pb.RowValue{
488 Kind: &v1pb.RowValue_StringValue{
489 StringValue: string(jsonBytes),
490 },
491 },
492 })), nil
493}
494
495func applyMaskerToData(data any, m masker.Masker) (any, error) {
496 switch data := data.(type) {

Callers 4

maskFieldByDirectLookupFunction · 0.85
maskBySourcePathsFunction · 0.85
walkAndMaskJSONRecursiveFunction · 0.85
applyMaskerToScalarJSONFunction · 0.85

Calls 3

MaskMethod · 0.65

Tested by

no test coverage detected