Statistics
| Branch: | Revision:

m2u-upass-core / src / my / com / upass / services / SynchronizeTokenService.java @ 30:aec0089bb43e

History | View | Annotate | Download (1.47 KB)

1
package my.com.upass.services;
2

    
3
import my.com.upass.Constants;
4
import my.com.upass.dao.DAOFactoryProvider;
5
import my.com.upass.dao.UserDAO;
6
import my.com.upass.factory.UPassFactory;
7
import my.com.upass.pojo.MinimalUserBean;
8
import my.com.upass.pojo.UserTokenBean;
9
import my.com.upass.secure.metric.SecureMetricTokenControllerImpl;
10
import my.com.upass.vasco.TokenController;
11

    
12
public class SynchronizeTokenService {
13
        
14
        /*Implemented for SM token Only , 
15
         * 
16
         * TODO: Implement for other token vendor that required to sync token.
17
         */
18

    
19
        public int syncToken(String userAlias, String otp1, String otp2){
20
                
21
                int rc = Constants.ERR_SYSTEM_NOT_READY;
22
                
23
                try{
24
                        
25
                        DAOFactoryProvider.getDAOFactory ().getUserTokenDAO (UPassFactory.getTokenMode ());
26
                        UserDAO userDao = DAOFactoryProvider.getDAOFactory ().getUserDAO ();
27
                        MinimalUserBean userBean = userDao.getUserFromStore (userAlias);
28
                        
29
                        if (userBean == null){        
30
                                
31
                                return Constants.ERR_USERALIAS_NOT_FOUND;
32
                        }
33
                        else{
34
                        
35
                                UserTokenBean tb = new UserTokenBean();
36
                                
37
                                SecureMetricTokenControllerImpl impl = new SecureMetricTokenControllerImpl(tb);
38
                                TokenController tcSm = UPassFactory.getTokenController (tb);
39
                                
40
                                rc = tcSm.syncToken(userAlias, otp1, otp2);
41
                                
42
                                impl.syncToken(userAlias, otp1, otp2);
43
                                
44
                                if (rc != Constants.ERR_SUCCESS){
45
                                        
46
                                        return Constants.ERR_UNKNOWN;
47
                                }
48
                        }
49
                        
50
                }catch (Exception e) {
51
                        e.printStackTrace ();
52
                        return rc;
53
                }
54
                
55
                
56
                return Constants.ERR_SUCCESS;
57
                
58
        }
59
        
60
}