#ifndef USER_DETAIL_VERIFIER_PROCESS_H
#define USER_DETAIL_VERIFIER_PROCESS_H
#include <String.h>
#include "AbstractProcess.h"
#include "Model.h"
class UserDetailVerifierListener {
public:
virtual void UserUsageConditionsNotLatest(
const UserDetail& userDetail) = 0;
virtual void UserCredentialsFailed() = 0;
};
class UserDetailVerifierProcess : public AbstractProcess {
public:
UserDetailVerifierProcess(
Model* model,
UserDetailVerifierListener* listener);
virtual ~UserDetailVerifierProcess();
virtual const char* Name() const;
virtual const char* Description() const;
protected:
virtual status_t RunInternal();
private:
status_t _TryFetchUserDetail(UserDetail& userDetail);
bool _ShouldVerify();
private:
Model* fModel;
UserDetailVerifierListener*
fListener;
};
#endif