Revision 101:447ef02bf448

View differences:

src/main/java/my/com/upass/maybank/MinimalMaybankFacadeImpl.java
266 266
			session = HibernateUtils.currentSession();
267 267
			session.beginTransaction();
268 268

  
269
			final MinimalUserBean user = profile.getMinUser();
270

  
269 271
			rc = (profile instanceof M2uUserContainer) ?
270 272
					MinimalConstants.ERR_SUCCESS
271 273
					: minUpcV2.addUser(
272
							appAccessId, hashedSecretKey, profile.getMinUser(), UserAppAccess.TYPE_USER, session);
274
							appAccessId, hashedSecretKey, user, UserAppAccess.TYPE_USER, session);
273 275

  
274 276
			if (rc == MinimalConstants.ERR_SUCCESS) {
275
				rc = minUpcV2.updateProfileShallowly(appAccessId, hashedSecretKey, profile, session);
277
				UserProfile existingProfile = minUpcV2.findProfile(
278
						appAccessId, hashedSecretKey, user.getUsername(), session);
279

  
280
				rc = existingProfile == null ?
281
						minUpcV2.updateProfileShallowly(appAccessId, hashedSecretKey, profile, session)
282
						: MinimalConstants.ERR_ALREADY_EXIST;
276 283

  
277 284
				if (rc == MinimalConstants.ERR_SUCCESS) {
278 285
					session.getTransaction().commit();
286

  
279 287
				} else {
280 288
					GenericDAOHibernate.rollbackTransactionIfAny(session);
281 289
				}
src/main/java/my/com/upass/maybank/entities/IbccUser.java
54 54
	}
55 55

  
56 56
	public void mapToProperties(Map map) {
57
		final String username = (String) map.get("username");
58
		minUser.setUsername(username);
57
		mapToProperties(map, true);
58
	}
59

  
60
	public void mapToProperties(Map map, boolean deeply) {
61
		if (deeply) {
62
			final String username = (String) map.get("username");
63
			minUser.setUsername(username);
64
		}
59 65
		setPanCc((String) map.get("panCc"));
60 66
	}
61 67

  
src/main/java/my/com/upass/maybank/entities/Im2uUser.java
104 104
	}
105 105

  
106 106
	public void mapToProperties(Map map) throws ParseException {
107
		m2uUser.mapToProperties(map);
107
		mapToProperties(map, true);
108
	}
109

  
110
	public void mapToProperties(Map map, boolean deeply) throws ParseException {
111
		if (deeply)
112
			m2uUser.mapToProperties(map);
113

  
108 114
		wsFlag = (String) map.get("wsFlag");
109 115
		wsIdentCode = (String) map.get("wsIdentCode");
110 116
		wsMySgId = (String) map.get("wsMySgId");
src/main/java/my/com/upass/maybank/entities/M2uUser.java
1 1
package my.com.upass.maybank.entities;
2 2

  
3
import java.text.ParseException;
3 4
import java.util.HashMap;
4 5
import java.util.Map;
5 6
import java.util.regex.Pattern;
......
65 66
	}
66 67

  
67 68
	public void mapToProperties(Map map) {
68
		final String username = (String) map.get("username");
69
		minUser.setUsername(username);
69
		mapToProperties(map, true);
70
	}
71

  
72
	public void mapToProperties(Map map, boolean deeply) {
73
		if (deeply) {
74
			final String username = (String) map.get("username");
75
			minUser.setUsername(username);
76
		}
70 77
		setPan1((String) map.get("pan1"));
71 78
		setPan2((String) map.get("pan2"));
72 79
	}
src/main/java/my/com/upass/maybank/entities/StockUser.java
63 63
	}
64 64

  
65 65
	public void mapToProperties(Map map) {
66
		m2uUser.mapToProperties(map);
66
		mapToProperties(map, true);
67
	}
68

  
69
	public void mapToProperties(Map map, boolean deeply) {
70
		if (deeply)
71
			m2uUser.mapToProperties(map);
72

  
67 73
		idNo = (String) map.get("idNo");
68 74
	}
69 75

  
src/main/java/my/com/upass/maybank/entities/TicketingUser.java
18 18
	private String payeeCode;
19 19

  
20 20
	//
21
	
21

  
22 22
	public TicketingUser() {
23 23
		minUser = new MinimalUserBean();
24 24
	}
......
84 84
	}
85 85

  
86 86
	public void mapToProperties(Map map) {
87
		final String username = (String) map.get("username");
88
		minUser.setUsername(username);
87
		mapToProperties(map, true);
88
	}
89

  
90
	public void mapToProperties(Map map, boolean deeply) {
91
		if (deeply) {
92
			final String username = (String) map.get("username");
93
			minUser.setUsername(username);
94
		}
89 95
		fullName = (String) map.get("fullName");
90 96
		firstName = (String) map.get("firstName");
91 97
		lastName = (String) map.get("lastName");
src/main/java/my/com/upass/maybank/entities/UserProfile.java
15 15
	Map/* <String, Object */propertiesToMap();
16 16

  
17 17
	void mapToProperties(Map/* <String, Object> */map) throws ParseException;
18
	
18

  
19
	void mapToProperties(Map/* <String, Object> */map, boolean deeply) throws ParseException;
20

  
19 21
	boolean validateProperties();
20 22
}

Also available in: Unified diff