Revision 86:31691154086a

View differences:

WebContent/WEB-INF/web.xml
16 16
		<servlet-class>org.apache.axis.transport.http.AxisServlet
17 17
		</servlet-class>
18 18
	</servlet>
19
	<servlet>
20
		<servlet-name>Jersey Web Application</servlet-name>
21
		<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer
22
		</servlet-class>
23
		<init-param>
24
			<param-name>com.sun.jersey.config.property.packages</param-name>
25
			<param-value>my.com.upass.maybank</param-value>
26
		</init-param>
27
		<init-param>
28
			<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
29
			<param-value>true</param-value>
30
		</init-param>
31
		<load-on-startup>1</load-on-startup>
32
	</servlet>
33
	<servlet-mapping>
34
		<servlet-name>Jersey Web Application</servlet-name>
35
		<url-pattern>/rest/*</url-pattern>
36
	</servlet-mapping>
19 37
	<servlet-mapping>
20 38
		<servlet-name>AxisServlet</servlet-name>
21 39
		<url-pattern>/servlet/AxisServlet</url-pattern>
pom.xml
764 764
			<scope>test</scope>
765 765
			<type>pom</type>
766 766
		</dependency>
767
		<dependency>
768
			<groupId>com.sun.jersey</groupId>
769
			<artifactId>jersey-server</artifactId>
770
			<version>1.8</version>
771
		</dependency>
772
		<dependency>
773
			<groupId>com.sun.jersey</groupId>
774
			<artifactId>jersey-json</artifactId>
775
			<version>1.8</version>
776
		</dependency>
767 777
	</dependencies>
768 778
</project>
src/my/com/upass/maybank/RESTfulMaybankFacade.java
1
package my.com.upass.maybank;
2

  
3
import javax.ws.rs.GET;
4
import javax.ws.rs.Path;
5
import javax.ws.rs.Produces;
6
import javax.ws.rs.QueryParam;
7
import javax.ws.rs.core.MediaType;
8

  
9
import my.com.upass.util.MapWrapper;
10

  
11
@Path("/MaybankFacade")
12
public class RESTfulMaybankFacade {
13

  
14
	private MaybankFacade maybankFacade;
15
	
16
	public RESTfulMaybankFacade() {
17
		maybankFacade = new MaybankFacadeImpl();
18
	}
19
	
20
	@GET
21
	@Path("/authenticateUser")
22
	@Produces("text/plain")
23
	public String authenticateUser_rest(
24
			@QueryParam("appAccessId") String appAccessId,
25
			@QueryParam("hashedSecretKey") String hashedSecretKey,
26
			@QueryParam("username") String username,
27
			@QueryParam("hashedPassword") String hashedPassword) {
28
		
29
		return String.valueOf(maybankFacade.authenticateUser(appAccessId, hashedSecretKey, username, hashedPassword));
30
	}
31
	
32
	@GET
33
	@Path("/newTicketingUser")
34
	@Produces("text/plain")
35
	public String newTicketingUser_rest(
36
			@QueryParam("appAccessId") String appAccessId,
37
			@QueryParam("hashedSecretKey") String hashedSecretKey,
38
			@QueryParam("username") String username,
39
			@QueryParam("hashedPassword") String hashedPassword,
40
			@QueryParam("fullName") String fullName,
41
			@QueryParam("firstName") String firstName,
42
			@QueryParam("lastName") String lastName,
43
			@QueryParam("payeeCode") String payeeCode) {
44
	
45
		return String.valueOf(maybankFacade.newTicketingUser(appAccessId, hashedSecretKey, username, hashedPassword, fullName, firstName, lastName, payeeCode));
46
	}
47
	
48
	@GET
49
	@Path("/deleteUser")
50
	@Produces("text/plain")
51
	public String deleteUser_rest(
52
			@QueryParam("appAccessId") String appAccessId,
53
			@QueryParam("hashedSecretKey") String hashedSecretKey,
54
			@QueryParam("username") String username) {
55
		
56
		return String.valueOf(maybankFacade.deleteUser(appAccessId, hashedSecretKey, username));
57
	}
58
	
59
	@GET
60
	@Path("/newIbccAdminUser")
61
	@Produces("text/plain")
62
	public String newIbccAdminUser_rest(
63
			@QueryParam("appAccessId") String appAccessId,
64
			@QueryParam("hashedSecretKey") String hashedSecretKey,
65
			@QueryParam("username") String username,
66
			@QueryParam("hashedPassword") String hashedPassword) {
67
		
68
		return String.valueOf(maybankFacade.newIbccAdminUser(appAccessId, hashedSecretKey, username, hashedPassword));
69
	}
70
	
71
	@GET
72
	@Path("/newIbccPublicUser")
73
	@Produces("text/plain")
74
	public String newIbccPublicUser_rest(
75
			@QueryParam("appAccessId") String appAccessId,
76
			@QueryParam("hashedSecretKey") String hashedSecretKey,
77
			@QueryParam("username") String username,
78
			@QueryParam("hashedPassword") String hashedPassword,
79
			@QueryParam("panCc") String panCc) {
80
		
81
		return String.valueOf(maybankFacade.newIbccPublicUser(appAccessId, hashedSecretKey, username, hashedPassword, panCc));
82
	}
83
	
84
	@GET
85
	@Path("/lookupUsername")
86
	@Produces(MediaType.APPLICATION_JSON)
87
	public ResponseElement lookupUsername_rest(
88
			@QueryParam("appAccessId") String appAccessId,
89
			@QueryParam("hashedSecretKey") String hashedSecretKey,
90
			@QueryParam("username") String username) {
91
		
92
		return maybankFacade.lookupUsername(appAccessId, hashedSecretKey, username);
93
	}
94
	
95
	@GET
96
	@Path("/searchUserByFilter")
97
	@Produces(MediaType.APPLICATION_JSON)
98
	public ResponseListElement searchUserByFilter_rest(
99
			@QueryParam("appAccessId") String appAccessId,
100
			@QueryParam("hashedSecretKey") String hashedSecretKey) {
101

  
102
		return maybankFacade.searchUserByFilter(appAccessId, hashedSecretKey, new MapWrapper());
103
	}
104
	
105
	@GET
106
	@Path("/lookupPan1")
107
	@Produces(MediaType.APPLICATION_JSON)
108
	public ResponseElement lookupPan1_rest(
109
			@QueryParam("appAccessId") String appAccessId,
110
			@QueryParam("hashedSecretKey") String hashedSecretKey,
111
			@QueryParam("pan1") String pan1) {
112
	
113
		return maybankFacade.lookupPan1(appAccessId, hashedSecretKey, pan1);
114
	}
115
	
116
	@GET
117
	@Path("/lookupPan2")
118
	@Produces(MediaType.APPLICATION_JSON)
119
	public ResponseElement lookupPan2_rest(
120
			@QueryParam("appAccessId") String appAccessId,
121
			@QueryParam("hashedSecretKey") String hashedSecretKey,
122
			@QueryParam("pan2") String pan2) {
123
	
124
		return maybankFacade.lookupPan2(appAccessId, hashedSecretKey, pan2);
125
	}
126
	
127
	@GET
128
	@Path("/changePassword")
129
	@Produces("text/plain")
130
	public String changePassword_rest(
131
			@QueryParam("appAccessId") String appAccessId,
132
			@QueryParam("hashedSecretKey") String hashedSecretKey,
133
			@QueryParam("username") String username,
134
			@QueryParam("oldHashedPassword") String oldHashedPassword,
135
			@QueryParam("newHashedPassword") String newHashedPassword) {
136

  
137
		return String.valueOf(maybankFacade.changePassword(appAccessId, hashedSecretKey, username, oldHashedPassword, newHashedPassword));
138
	}
139
}

Also available in: Unified diff