m2u-upass-core / src / my / com / upass / factory / UPassFactory.java @ 0:02300db8682b
History | View | Annotate | Download (2.94 KB)
1 |
/**
|
---|---|
2 |
* Copyright (M) 2010 Penril Datability (M) Sdn Bhd All rights reserved.
|
3 |
*
|
4 |
* This software is copyrighted. Under the copyright laws, this software
|
5 |
* may not be copied, in whole or in part, without prior written consent
|
6 |
* of Penril Datability (M) Sdn Bhd or its assignees. This software is
|
7 |
* provided under the terms of a license between Penril Datability (M)
|
8 |
* Sdn Bhd and the recipient, and its use is subject to the terms of that
|
9 |
* license.
|
10 |
*/
|
11 |
|
12 |
package my.com.upass.factory; |
13 |
|
14 |
import java.util.Map; |
15 |
|
16 |
import my.com.upass.ConfigBean; |
17 |
import my.com.upass.TOKEN_MODE; |
18 |
import my.com.upass.TokenBean; |
19 |
import my.com.upass.gemalto.GemaltoTokenControllerImpl; |
20 |
import my.com.upass.pojo.SecurityCodeBean; |
21 |
import my.com.upass.pojo.TacBean; |
22 |
import my.com.upass.pojo.UserBean; |
23 |
import my.com.upass.secure.metric.SecureMetricTokenControllerImpl; |
24 |
import my.com.upass.security.code.SecurityCodeController; |
25 |
import my.com.upass.security.code.SecurityCodeControllerV2; |
26 |
import my.com.upass.spassword.PasswordController; |
27 |
import my.com.upass.tac.TacController; |
28 |
import my.com.upass.vasco.TokenController; |
29 |
import my.com.upass.vasco.TokenControllerImpl; |
30 |
import my.com.upass.vasco.TokenControllerMockup; |
31 |
|
32 |
/**
|
33 |
* PROGRAMMER: Danniell
|
34 |
* CHANGE-NO:
|
35 |
* TASK-NO:
|
36 |
* DATE CREATED: Nov 9, 2011
|
37 |
* TAG AS:
|
38 |
* REASON(S):
|
39 |
* MODIFICATION:
|
40 |
*/
|
41 |
|
42 |
/**
|
43 |
* Factory for instances
|
44 |
*/
|
45 |
public class UPassFactory { |
46 |
|
47 |
public static final boolean TOKEN_MOCKUP_ENABLED = (System.getProperty("upass.mockup.token") != null); |
48 |
|
49 |
public static PasswordController getPasswordController(// |
50 |
UserBean userBean, Map<Integer, ConfigBean> configurationsMap) throws Exception { |
51 |
|
52 |
return new PasswordController(userBean, configurationsMap); |
53 |
} |
54 |
|
55 |
public static TacController getTacController(TacBean tacBeanObject, ConfigBean config) throws Exception { |
56 |
return new TacController(tacBeanObject, config); |
57 |
} |
58 |
|
59 |
public static TokenController getTokenController(TokenBean tokenBean) { |
60 |
if (UPassFactory.TOKEN_MOCKUP_ENABLED) {
|
61 |
return new TokenControllerMockup(tokenBean); |
62 |
|
63 |
} else {
|
64 |
switch (getTokenMode()) {
|
65 |
|
66 |
case VASCO:
|
67 |
return new TokenControllerImpl(tokenBean); |
68 |
case GEMALTO:
|
69 |
return new GemaltoTokenControllerImpl(tokenBean); |
70 |
case SECUREMETRIC:
|
71 |
return new SecureMetricTokenControllerImpl(tokenBean); |
72 |
default:
|
73 |
return new TokenControllerMockup(tokenBean); |
74 |
} |
75 |
} |
76 |
} |
77 |
|
78 |
public static SecurityCodeController getSecurityCodeController( // |
79 |
SecurityCodeBean securityCodeBean, Map<Integer, ConfigBean> configurationsMap) throws Exception { |
80 |
|
81 |
return new SecurityCodeControllerV2(securityCodeBean, configurationsMap); |
82 |
} |
83 |
|
84 |
/**
|
85 |
* <pre>
|
86 |
* Main flag to determine token implementation type.
|
87 |
* Available options:
|
88 |
* - VASCO
|
89 |
* - GEMALTO
|
90 |
* - SECUREMETRIC
|
91 |
* </pre>
|
92 |
*
|
93 |
* @return Token mode implementation options available.
|
94 |
*/
|
95 |
public static final TOKEN_MODE getTokenMode() { |
96 |
return TOKEN_MODE.SECUREMETRIC;
|
97 |
} |
98 |
} |