inklabs/rangedb

View on GitHub
pkg/crypto/cryptotest/customer_events_gen.go

Summary

Maintainability
B
4 hrs
Test Coverage
// Code generated by go generate; DO NOT EDIT.
// This file was generated at
// 2021-05-27 13:18:31.038914 -0700 PDT m=+0.005602261
package cryptotest
 
import (
"strconv"
 
"github.com/inklabs/rangedb/pkg/crypto"
)
 
func (e CustomerSignedUp) AggregateID() string { return e.ID }
func (e CustomerSignedUp) AggregateType() string { return "customer" }
func (e CustomerSignedUp) EventType() string { return "CustomerSignedUp" }
Similar blocks of code found in 2 locations. Consider refactoring.
func (e *CustomerSignedUp) Encrypt(encryptor crypto.Encryptor) error {
name, err := encryptor.Encrypt(e.ID, e.Name)
if err != nil {
if err == crypto.ErrKeyWasDeleted {
e.redactPersonalData("")
}
return err
}
 
email, err := encryptor.Encrypt(e.ID, e.Email)
if err != nil {
if err == crypto.ErrKeyWasDeleted {
e.redactPersonalData("")
}
return err
}
 
e.Name = name
e.Email = email
return nil
}
Similar blocks of code found in 2 locations. Consider refactoring.
func (e *CustomerSignedUp) Decrypt(encryptor crypto.Encryptor) error {
name, err := encryptor.Decrypt(e.ID, e.Name)
if err != nil {
if err == crypto.ErrKeyWasDeleted {
e.redactPersonalData("")
}
return err
}
 
email, err := encryptor.Decrypt(e.ID, e.Email)
if err != nil {
if err == crypto.ErrKeyWasDeleted {
e.redactPersonalData("")
}
return err
}
 
e.Name = name
e.Email = email
return nil
}
func (e *CustomerSignedUp) redactPersonalData(redactTo string) {
e.Name = redactTo
e.Email = redactTo
}
 
func (e CustomerAddedBirth) AggregateID() string { return e.ID }
func (e CustomerAddedBirth) AggregateType() string { return "customer" }
func (e CustomerAddedBirth) EventType() string { return "CustomerAddedBirth" }
func (e *CustomerAddedBirth) Encrypt(encryptor crypto.Encryptor) error {
stringBirthMonth := strconv.Itoa(e.BirthMonth)
birthMonthEncrypted, err := encryptor.Encrypt(e.ID, stringBirthMonth)
if err != nil {
if err == crypto.ErrKeyWasDeleted {
e.redactPersonalData("")
}
return err
}
 
stringBirthYear := strconv.Itoa(e.BirthYear)
birthYearEncrypted, err := encryptor.Encrypt(e.ID, stringBirthYear)
if err != nil {
if err == crypto.ErrKeyWasDeleted {
e.redactPersonalData("")
}
return err
}
 
e.BirthMonth = 0
e.BirthYear = 0
e.BirthMonthEncrypted = birthMonthEncrypted
e.BirthYearEncrypted = birthYearEncrypted
return nil
}
Method `CustomerAddedBirth.Decrypt` has 5 return statements (exceeds 4 allowed).
func (e *CustomerAddedBirth) Decrypt(encryptor crypto.Encryptor) error {
decryptedBirthMonth, err := encryptor.Decrypt(e.ID, e.BirthMonthEncrypted)
if err != nil {
if err == crypto.ErrKeyWasDeleted {
e.redactPersonalData("")
}
return err
}
birthMonth, err := strconv.Atoi(decryptedBirthMonth)
if err != nil {
return err
}
 
decryptedBirthYear, err := encryptor.Decrypt(e.ID, e.BirthYearEncrypted)
if err != nil {
if err == crypto.ErrKeyWasDeleted {
e.redactPersonalData("")
}
return err
}
birthYear, err := strconv.Atoi(decryptedBirthYear)
if err != nil {
return err
}
 
e.BirthMonth = birthMonth
e.BirthYear = birthYear
e.BirthMonthEncrypted = ""
e.BirthYearEncrypted = ""
return nil
}
func (e *CustomerAddedBirth) redactPersonalData(redactTo string) {
e.BirthMonth = 0
e.BirthYear = 0
}