mirror of https://github.com/XTLS/Xray-core
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
627 B
29 lines
627 B
package shadowsocks_2022 |
|
|
|
import ( |
|
"github.com/xtls/xray-core/common/protocol" |
|
) |
|
|
|
// MemoryAccount is an account type converted from Account. |
|
type MemoryAccount struct { |
|
Key string |
|
Email string |
|
Level int32 |
|
} |
|
|
|
// AsAccount implements protocol.AsAccount. |
|
func (u *User) AsAccount() (protocol.Account, error) { |
|
return &MemoryAccount{ |
|
Key: u.GetKey(), |
|
Email: u.GetEmail(), |
|
Level: u.GetLevel(), |
|
}, nil |
|
} |
|
|
|
// Equals implements protocol.Account.Equals(). |
|
func (a *MemoryAccount) Equals(another protocol.Account) bool { |
|
if account, ok := another.(*MemoryAccount); ok { |
|
return a.Key == account.Key |
|
} |
|
return false |
|
}
|
|
|