Revision 23:58964461fe37
src/main/java/my/com/upass/MinimalUPassControllerV2.java | ||
---|---|---|
14 | 14 |
import my.com.upass.services.ModifyUserService; |
15 | 15 |
import my.com.upass.services.VerifyStaticPasswordService; |
16 | 16 |
|
17 |
import org.apache.commons.lang.NotImplementedException; |
|
17 | 18 |
import org.apache.log4j.Logger; |
18 | 19 |
|
19 | 20 |
public class MinimalUPassControllerV2 { |
... | ... | |
30 | 31 |
{ |
31 | 32 |
ConfigurationDAO configurationDAO = MinimalDAOFactory.minimalInstance().getConfigurationDAO(); |
32 | 33 |
boolean isConfigChange = configurationDAO.isConfigChanged(); |
33 |
|
|
34 |
|
|
34 | 35 |
if (configFirstLoad || isConfigChange) |
35 | 36 |
{ |
36 | 37 |
logger.info("Refresh Configuration ...."); |
37 |
|
|
38 |
|
|
38 | 39 |
List configurations = configurationDAO.getConfigurationsFromStore(); |
39 | 40 |
ConfigurationBean configPojo; |
40 | 41 |
ConfigBean configBean = null; |
41 |
|
|
42 |
|
|
42 | 43 |
int configType; |
43 | 44 |
Iterator itr = configurations.iterator(); |
44 | 45 |
while (itr.hasNext()) |
45 | 46 |
{ |
46 |
configPojo = (ConfigurationBean)itr.next(); |
|
47 |
configPojo = (ConfigurationBean) itr.next();
|
|
47 | 48 |
configType = configPojo.getApplicationId(); |
48 |
|
|
49 |
configBean = (ConfigBean)configurationMap.get(new Integer(configType)); |
|
49 |
|
|
50 |
configBean = (ConfigBean) configurationMap.get(new Integer(configType));
|
|
50 | 51 |
if (configBean == null) |
51 | 52 |
{ |
52 | 53 |
configBean = new ConfigBean(); |
53 | 54 |
} |
54 |
|
|
55 |
|
|
55 | 56 |
logger.info("COnfig Type:" + configType + "=config name:" + configPojo.getConfigName() |
56 | 57 |
+ "=config Value:" + configPojo.getConfigValue()); |
57 | 58 |
configBean.setConfigBean(configPojo.getConfigName(), configPojo.getConfigValue()); |
58 |
|
|
59 |
|
|
59 | 60 |
configurationMap.put(new Integer(configType), configBean); |
60 |
|
|
61 |
|
|
61 | 62 |
configFirstLoad = false; // this value dictate for every instance restart to refresh the map. After |
62 | 63 |
// first load, turn it off |
63 | 64 |
} |
... | ... | |
82 | 83 |
public ConfigBean setConfigurationBean(Map paramMap) { |
83 | 84 |
ConfigBean configBean = new ConfigBean(); |
84 | 85 |
Set keys = paramMap.keySet(); |
85 |
Iterator i = keys.iterator();
|
|
86 |
while(i.hasNext()) { |
|
86 |
Iterator i = keys.iterator(); |
|
87 |
while (i.hasNext()) {
|
|
87 | 88 |
String configName = (String) i.next(); |
88 | 89 |
String configValue = (String) paramMap.get(configName); |
89 | 90 |
configBean.setConfigBean(configName, configValue); |
90 | 91 |
} |
91 |
|
|
92 |
|
|
92 | 93 |
return configBean; |
93 | 94 |
} |
94 | 95 |
|
... | ... | |
114 | 115 |
* ERR_INVALID_USERALIAS - User alias does not match with defined pattern <br/> |
115 | 116 |
* ERR_PASSWORD_SAMEAS_USERALIAS - password is same is user name error <br/> |
116 | 117 |
*/ |
117 |
public int UA_AddUser(String adminUserAlias, String adminUserPassword, String userAlias, |
|
118 |
String userDesc, String userPassword, int appId) { |
|
119 |
|
|
120 |
// check if password is similar to user alias |
|
121 |
if (userAlias.equalsIgnoreCase(userPassword)) { |
|
122 |
return MinimalConstants.ERR_PASSWORD_SAMEAS_USERALIAS; |
|
123 |
} |
|
124 |
int rc = verifyStaticPasswordService.verifyStaticPassword( |
|
125 |
adminUserAlias, adminUserPassword, true, MinimalConstants.UTYPE_STATE_ADMIN); |
|
126 |
|
|
127 |
if (rc != MinimalConstants.ERR_SUCCESS) { |
|
128 |
return rc; |
|
129 |
} |
|
130 |
rc = createUserService.addUser(userAlias, MinimalConstants.UTYPE_STATE_USER, |
|
131 |
userDesc, userPassword, MinimalConstants.UID_STATE_ACTIVE, appId); |
|
132 |
|
|
133 |
logger.info("UA_AddUser - user alias: [" + userAlias + "] Return: " + rc); |
|
134 |
return rc; |
|
135 |
} |
|
118 |
public int UA_AddUser( |
|
119 |
String adminUserAlias, String adminUserPassword, |
|
120 |
String userAlias, String userDesc, String userPassword, int appId) { |
|
121 |
|
|
122 |
// check if password is similar to user alias |
|
123 |
if (userAlias.equalsIgnoreCase(userPassword)) { |
|
124 |
return MinimalConstants.ERR_PASSWORD_SAMEAS_USERALIAS; |
|
125 |
} |
|
126 |
int rc = verifyStaticPasswordService.verifyStaticPassword( |
|
127 |
adminUserAlias, adminUserPassword, true, MinimalConstants.UTYPE_STATE_ADMIN); |
|
128 |
|
|
129 |
if (rc != MinimalConstants.ERR_SUCCESS) { |
|
130 |
return rc; |
|
131 |
} |
|
132 |
rc = createUserService.addUser(userAlias, MinimalConstants.UTYPE_STATE_USER, |
|
133 |
userDesc, userPassword, MinimalConstants.UID_STATE_ACTIVE, appId); |
|
134 |
|
|
135 |
logger.info("UA_AddUser - user alias: [" + userAlias + "] Return: " + rc); |
|
136 |
return rc; |
|
137 |
} |
|
136 | 138 |
|
137 | 139 |
/** |
138 | 140 |
* This method verify static password generated using SP_ChangeStaticPassword(). |
... | ... | |
178 | 180 |
* ERR_INVALID_USERALIAS - User alias does not match with defined pattern <br/> |
179 | 181 |
* ERR_REUSED_PASSWD - the password entered was used previously.<br/> |
180 | 182 |
*/ |
181 |
public int UA_ModifyUser(String adminUserAlias, String adminUserPassword, String userAlias, |
|
182 |
String userDesc, String userPassword) { |
|
183 |
// check if password is similar to user alias |
|
184 |
if (userAlias.equalsIgnoreCase(userPassword)) { |
|
185 |
return MinimalConstants.ERR_PASSWORD_SAMEAS_USERALIAS; |
|
186 |
} |
|
187 |
|
|
188 |
int rc = verifyStaticPasswordService.verifyStaticPassword( |
|
189 |
adminUserAlias, adminUserPassword, true, |
|
190 |
MinimalConstants.UTYPE_STATE_ADMIN); |
|
191 |
|
|
192 |
if (rc != MinimalConstants.ERR_SUCCESS) |
|
193 |
{ |
|
194 |
return rc; |
|
195 |
} |
|
196 |
|
|
197 |
rc = modifyUserService.modifyUser(userAlias, |
|
198 |
MinimalConstants.UTYPE_STATE_USER, userDesc, userPassword, |
|
199 |
MinimalConstants.UID_STATE_ACTIVE); |
|
200 |
|
|
201 |
logger.info("UA_ModifyUser - user alias: [" + userAlias + "] Return: " |
|
202 |
+ rc); |
|
203 |
|
|
204 |
return rc; |
|
205 |
} |
|
206 |
|
|
207 |
public int addUser(String appKey, M2uUser user) { |
|
183 |
public int UA_ModifyUser( |
|
184 |
String adminUserAlias, String adminUserPassword, |
|
185 |
String userAlias, String userDesc, String userPassword) { |
|
208 | 186 |
|
209 | 187 |
// check if password is similar to user alias |
210 |
final String username = user.getUsername(); |
|
211 |
final String hashedPassword = user.getHashedPassword(); |
|
212 |
|
|
213 |
if (username.equalsIgnoreCase(hashedPassword)) { |
|
188 |
if (userAlias.equalsIgnoreCase(userPassword)) { |
|
214 | 189 |
return MinimalConstants.ERR_PASSWORD_SAMEAS_USERALIAS; |
215 | 190 |
} |
216 | 191 |
|
217 |
// int rc = verifyStaticPasswordService.verifyStaticPassword( |
|
218 |
// adminUserAlias, adminUserPassword, true, MinimalConstants.UTYPE_STATE_ADMIN); |
|
219 |
// if (rc != MinimalConstants.ERR_SUCCESS) { |
|
220 |
// return rc; |
|
221 |
// } |
|
192 |
int rc = verifyStaticPasswordService.verifyStaticPassword( |
|
193 |
adminUserAlias, adminUserPassword, true, |
|
194 |
MinimalConstants.UTYPE_STATE_ADMIN); |
|
222 | 195 |
|
223 |
// TODO: Commented temporarily to avoid compilation error |
|
224 |
int appId = -1; //identifyApp(appKey); |
|
196 |
if (rc != MinimalConstants.ERR_SUCCESS) |
|
197 |
{ |
|
198 |
return rc; |
|
199 |
} |
|
225 | 200 |
|
226 |
int rc = createUserService.addUser(username, MinimalConstants.UTYPE_STATE_USER, |
|
227 |
"", hashedPassword, MinimalConstants.UID_STATE_ACTIVE, appId); |
|
228 |
|
|
229 |
logger.info("UA_AddUser - user alias: [" + username + "] Return: " + rc); |
|
201 |
rc = modifyUserService.modifyUser(userAlias, |
|
202 |
MinimalConstants.UTYPE_STATE_USER, userDesc, userPassword, |
|
203 |
MinimalConstants.UID_STATE_ACTIVE); |
|
204 |
|
|
205 |
logger.info("UA_ModifyUser - user alias: [" + userAlias + "] Return: " |
|
206 |
+ rc); |
|
207 |
|
|
230 | 208 |
return rc; |
231 | 209 |
} |
232 | 210 |
|
211 |
public int addUser(String appAccessId, String hashedSecretKey, M2uUser user) { |
|
212 |
// TODO Auto-generated method stub |
|
213 |
throw new NotImplementedException(); |
|
214 |
} |
|
215 |
|
|
233 | 216 |
} |
src/main/java/my/com/upass/maybank/MinimalMaybankFacade.java | ||
---|---|---|
3 | 3 |
public interface MinimalMaybankFacade { |
4 | 4 |
|
5 | 5 |
int authenticateUser( |
6 |
String appKey, String username, String hashedPassword); |
|
6 |
String appAccessId, String hashedSecretKey, |
|
7 |
String username, String hashedPassword); |
|
7 | 8 |
|
8 | 9 |
int newUser( |
9 |
String appKey, String username, String hashedPassword, |
|
10 |
String appAccessId, String hashedSecretKey, |
|
11 |
String username, String hashedPassword, |
|
10 | 12 |
String pan1, String pan2); |
11 | 13 |
|
12 | 14 |
int newPublicUser( |
13 |
String appKey, String username, String hashedPassword,
|
|
14 |
String panCC); |
|
15 |
String appAccessId, String hashedSecretKey,
|
|
16 |
String username, String hashedPassword, String panCC);
|
|
15 | 17 |
|
16 | 18 |
int changePassword( |
17 |
String appKey, String username,
|
|
18 |
String oldHashedPassword, String newHashedPassword); |
|
19 |
String appAccessId, String hashedSecretKey,
|
|
20 |
String username, String oldHashedPassword, String newHashedPassword);
|
|
19 | 21 |
|
20 | 22 |
int resetPassword( |
21 |
String appKey, String username, String newHashedPassword); |
|
23 |
String appAccessId, String hashedSecretKey, |
|
24 |
String username, String newHashedPassword); |
|
22 | 25 |
} |
src/main/java/my/com/upass/maybank/MinimalMaybankFacadeImpl.java | ||
---|---|---|
13 | 13 |
minUpcV2 = new MinimalUPassControllerV2(); |
14 | 14 |
} |
15 | 15 |
|
16 |
public int authenticateUser(String appKey, String username, String hashedPassword) { |
|
17 |
// TODO Auto-generated method stub |
|
18 |
// return minUpcV2.SP_VerifyStaticPassword(username, hashedPassword); |
|
16 |
public int authenticateUser( |
|
17 |
String appAccessId, String hashedSecretKey, |
|
18 |
String username, String hashedPassword) { |
|
19 |
|
|
20 |
// TODO Auto-generated method stub |
|
21 |
// return minUpcV2.SP_VerifyStaticPassword(username, hashedPassword); |
|
19 | 22 |
throw new NotImplementedException(); |
20 | 23 |
} |
21 | 24 |
|
22 |
public int newUser(String appKey, String username, String hashedPassword, String pan1, String pan2) { |
|
25 |
public int newUser( |
|
26 |
String appAccessId, String hashedSecretKey, |
|
27 |
String username, String hashedPassword, String pan1, String pan2) { |
|
28 |
|
|
23 | 29 |
M2uUser user = new M2uUser(); |
24 | 30 |
user.setUsername(username); |
25 | 31 |
user.setHashedPassword(hashedPassword); |
26 | 32 |
user.setPan1(pan1); |
27 | 33 |
user.setPan2(pan2); |
28 |
return minUpcV2.addUser(appKey, user); |
|
29 |
|
|
34 |
return minUpcV2.addUser(appAccessId, hashedSecretKey, user); |
|
30 | 35 |
} |
31 | 36 |
|
32 |
public int newPublicUser(String appKey, String username, String hashedPassword, String panCC) { |
|
37 |
public int newPublicUser( |
|
38 |
String appAccessId, String hashedSecretKey, |
|
39 |
String username, String hashedPassword, String panCC) { |
|
40 |
|
|
33 | 41 |
// TODO Auto-generated method stub |
34 | 42 |
throw new NotImplementedException(); |
35 | 43 |
} |
36 | 44 |
|
37 |
public int changePassword(String appKey, String username, String oldHashedPassword, String newHashedPassword) { |
|
45 |
public int changePassword( |
|
46 |
String appAccessId, String hashedSecretKey, |
|
47 |
String username, String oldHashedPassword, String newHashedPassword) { |
|
48 |
|
|
38 | 49 |
// TODO Auto-generated method stub |
39 | 50 |
throw new NotImplementedException(); |
40 | 51 |
} |
41 | 52 |
|
42 |
public int resetPassword(String appKey, String username, String newHashedPassword) { |
|
53 |
public int resetPassword( |
|
54 |
String appAccessId, String hashedSecretKey, |
|
55 |
String username, String newHashedPassword) { |
|
56 |
|
|
43 | 57 |
// TODO Auto-generated method stub |
44 | 58 |
throw new NotImplementedException(); |
45 | 59 |
} |
src/main/java/my/com/upass/maybank/entities/IbccAdminUser.java | ||
---|---|---|
1 | 1 |
package my.com.upass.maybank.entities; |
2 | 2 |
|
3 |
public class IbccAdminUser extends User { |
|
3 |
public class IbccAdminUser extends MaybankUser {
|
|
4 | 4 |
} |
src/main/java/my/com/upass/maybank/entities/IbccPublicUser.java | ||
---|---|---|
1 | 1 |
package my.com.upass.maybank.entities; |
2 | 2 |
|
3 |
public class IbccPublicUser extends User { |
|
3 |
public class IbccPublicUser extends MaybankUser {
|
|
4 | 4 |
|
5 | 5 |
private String panCc; |
6 | 6 |
|
src/main/java/my/com/upass/maybank/entities/Im2uUser.java | ||
---|---|---|
1 | 1 |
package my.com.upass.maybank.entities; |
2 | 2 |
|
3 |
public class Im2uUser extends User { |
|
3 |
public class Im2uUser extends MaybankUser {
|
|
4 | 4 |
|
5 | 5 |
private String wsFlag; |
6 | 6 |
private String wsIdentCode; |
src/main/java/my/com/upass/maybank/entities/M2uUser.java | ||
---|---|---|
1 | 1 |
package my.com.upass.maybank.entities; |
2 | 2 |
|
3 |
public class M2uUser extends User { |
|
3 |
public class M2uUser extends MaybankUser {
|
|
4 | 4 |
|
5 | 5 |
private String pan1; |
6 | 6 |
private String pan2; |
src/main/java/my/com/upass/maybank/entities/MaybankUser.java | ||
---|---|---|
1 |
package my.com.upass.maybank.entities; |
|
2 |
|
|
3 |
import my.com.upass.pojo.MinimalUserBean; |
|
4 |
|
|
5 |
public class MaybankUser extends MinimalUserBean { |
|
6 |
|
|
7 |
public String getUsername() { |
|
8 |
return getUserAlias(); |
|
9 |
} |
|
10 |
|
|
11 |
public void setUsername(String username) { |
|
12 |
setUserAlias(username); |
|
13 |
} |
|
14 |
|
|
15 |
public String getHashedPassword() { |
|
16 |
return getPcipherText(); |
|
17 |
} |
|
18 |
|
|
19 |
public void setHashedPassword(String hashedPassword) { |
|
20 |
setPcipherText(hashedPassword); |
|
21 |
} |
|
22 |
} |
src/main/java/my/com/upass/maybank/entities/TicketingUser.java | ||
---|---|---|
1 | 1 |
package my.com.upass.maybank.entities; |
2 | 2 |
|
3 |
public class TicketingUser extends User { |
|
3 |
public class TicketingUser extends MaybankUser {
|
|
4 | 4 |
|
5 | 5 |
private String fullName; |
6 | 6 |
private String firstName; |
src/main/java/my/com/upass/maybank/entities/User.java | ||
---|---|---|
1 |
package my.com.upass.maybank.entities; |
|
2 |
|
|
3 |
public class User { |
|
4 |
|
|
5 |
private String username; |
|
6 |
private String hashedPassword; |
|
7 |
|
|
8 |
// |
|
9 |
|
|
10 |
public String getUsername() { |
|
11 |
return username; |
|
12 |
} |
|
13 |
|
|
14 |
public void setUsername(String username) { |
|
15 |
this.username = username; |
|
16 |
} |
|
17 |
|
|
18 |
public String getHashedPassword() { |
|
19 |
return hashedPassword; |
|
20 |
} |
|
21 |
|
|
22 |
public void setHashedPassword(String hashedPassword) { |
|
23 |
this.hashedPassword = hashedPassword; |
|
24 |
} |
|
25 |
|
|
26 |
public String getWsFlag() { |
|
27 |
// TODO Auto-generated method stub |
|
28 |
return null; |
|
29 |
} |
|
30 |
} |
src/main/java/my/com/upass/pojo/MinimalUserBean.java | ||
---|---|---|
29 | 29 |
private int pexpiredStatus; |
30 | 30 |
private Date pdateExpired; |
31 | 31 |
private Integer applicationId; |
32 |
|
|
33 |
// |
|
34 |
|
|
32 | 35 |
public long getUserID() { |
33 | 36 |
return userID; |
34 | 37 |
} |
Also available in: Unified diff