Revision 91:1b2ed85fdcdb

View differences:

src/main/java/my/com/upass/MinimalUPassControllerV2.java
453 453
	public int updateProfileShallowly_noAccessCheck(UserProfile profile, Session txSession)
454 454
			throws UPassException {
455 455

  
456
		boolean valid = profile.validateProperties();
457
		if (!valid) 
458
			throw new UPassException(MinimalConstants.ERR_INVALID_INPUT);
459

  
456 460
		final MinimalUserBean user = profile.getMinUser();
457 461
		final String username = user.getUsername();
458 462
		final String userPassword = user.getHashedPassword();
......
461 465
			UserProfile m2uUser = findProfile_noAccessCheck(username, ClientApp.APP_ID_M2U, txSession);
462 466
			if (m2uUser == null)
463 467
				throw new UPassException(MinimalConstants.ERR_APP_SERV_NOT_PERMITTED);
464
		}
468
		}			
465 469
		final int appIdForProfile = AppAccessMgtService.getAppIdForProfile(profile).intValue();
466 470

  
467 471
		List grantedAppAccesses = appAccessMgtService.listAppIdsForUser(username, txSession);
src/main/java/my/com/upass/maybank/entities/IbccUser.java
2 2

  
3 3
import java.util.HashMap;
4 4
import java.util.Map;
5
import java.util.regex.Pattern;
5 6

  
6 7
import my.com.upass.pojo.MinimalUserBean;
7 8

  
......
57 58
		minUser.setUsername(username);
58 59
		setPanCc((String) map.get("panCc"));
59 60
	}
61

  
62
	public boolean validateProperties() {
63
		return Pattern.matches("\\p{Digit}{1,16}", panCc);
64
	}
60 65
}
src/main/java/my/com/upass/maybank/entities/Im2uUser.java
5 5
import java.util.Date;
6 6
import java.util.HashMap;
7 7
import java.util.Map;
8
import java.util.regex.Pattern;
8 9

  
9 10
import org.apache.commons.lang.StringUtils;
10 11

  
......
110 111
						DATE_FORMAT.parse(regDateStr) : null;
111 112
	}
112 113

  
114
	public boolean validateProperties() {
115
		return Pattern.matches("[YN]{1}", wsFlag);
116
	}
117

  
113 118
}
src/main/java/my/com/upass/maybank/entities/M2uUser.java
2 2

  
3 3
import java.util.HashMap;
4 4
import java.util.Map;
5
import java.util.regex.Pattern;
5 6

  
6 7
import my.com.upass.pojo.MinimalUserBean;
7 8

  
......
15 16
	private String pan2;
16 17

  
17 18
	//
18
	
19

  
19 20
	public M2uUser() {
20 21
		minUser = new MinimalUserBean();
21 22
	}
......
69 70
		setPan1((String) map.get("pan1"));
70 71
		setPan2((String) map.get("pan2"));
71 72
	}
73

  
74
	public boolean validateProperties() {
75
		return Pattern.matches("\\p{Digit}{1,16}", pan1)
76
				&& Pattern.matches("\\p{Digit}{1,19}", pan2);
77
	}
72 78
}
src/main/java/my/com/upass/maybank/entities/StockUser.java
66 66
		m2uUser.mapToProperties(map);
67 67
		idNo = (String) map.get("idNo");
68 68
	}
69

  
70
	public boolean validateProperties() {
71
		return true;
72
	}
69 73
}
src/main/java/my/com/upass/maybank/entities/TicketingUser.java
2 2

  
3 3
import java.util.HashMap;
4 4
import java.util.Map;
5
import java.util.regex.Pattern;
5 6

  
6 7
import my.com.upass.pojo.MinimalUserBean;
7 8

  
......
90 91
		lastName = (String) map.get("lastName");
91 92
		payeeCode = (String) map.get("payeeCode");
92 93
	}
94

  
95
	public boolean validateProperties() {
96
		return Pattern.matches("\\p{Alnum}{1,3}", payeeCode);
97
	}
93 98
}
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
	
19
	boolean validateProperties();
18 20
}

Also available in: Unified diff