Quick question:
Why does the class CBaseUserIdentity define:
const ERROR_USERNAME_INVALID=1;
const ERROR_PASSWORD_INVALID=2;
As I understood based on the guide, the whole idea of having a useridentity is to allow multiple forms of authentication, not only username/password-based authentication.
Then these specific errors do not belong in this baseclass but should be defined in the child class CUserIdentity which also defines username and password properties.
Or does anybody know of a reason to put these definitions in this abstract base class?