1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package net.sf.oxclient.web;
17
18 import java.io.IOException;
19
20 import javax.servlet.http.HttpServletRequest;
21 import javax.servlet.http.HttpServletResponse;
22
23 import org.apache.commons.httpclient.Cookie;
24
25 import net.sf.oxclient.IUser;
26 import net.sf.oxclient.communication.ICommunicationClient;
27
28
29
30
31
32 public class StaticOXRedirector implements OXRedirector {
33
34 private ICommunicationClient client;
35 private ICookieTransformer cookieTransformer;
36 private String guiUrl;
37
38
39
40 public void setCookieTransformer(final ICookieTransformer cookieTransformer) {
41 this.cookieTransformer = cookieTransformer;
42 }
43
44 public ICommunicationClient getClient() {
45 return this.client;
46 }
47
48 public void setClient(final ICommunicationClient client) {
49 this.client = client;
50 }
51
52 public String getGuiUrl() {
53 return this.guiUrl;
54 }
55
56 public void setGuiUrl(final String guiUrl) {
57 this.guiUrl = guiUrl;
58 }
59
60
61
62
63 public void redirectToOX(
64 final HttpServletRequest request,
65 final HttpServletResponse response,
66 final IUser user) throws IOException {
67 Cookie commonsCookie = this.client.getSessionCookie();
68 if (commonsCookie == null) {
69 this.client.login(user);
70 commonsCookie = this.client.getSessionCookie();
71 response.addCookie(this.cookieTransformer.transform(commonsCookie));
72 }
73
74 response.sendRedirect(this.guiUrl);
75 }
76
77 }