1
2
3
4
5
6
7
8
9
10
11 package org.mule.umo.security;
12
13 import org.mule.config.i18n.CoreMessages;
14 import org.mule.config.i18n.Message;
15 import org.mule.impl.RequestContext;
16 import org.mule.umo.UMOMessage;
17 import org.mule.umo.endpoint.UMOImmutableEndpoint;
18
19
20
21
22
23 public class UnauthorisedException extends SecurityException
24 {
25
26
27
28 private static final long serialVersionUID = -6664384216189042672L;
29
30 public UnauthorisedException(Message message)
31 {
32 super(message, RequestContext.getEventContext().getMessage());
33 }
34
35 public UnauthorisedException(Message message, Throwable cause)
36 {
37 super(message, RequestContext.getEventContext().getMessage(), cause);
38 }
39
40 public UnauthorisedException(Message message, UMOMessage umoMessage)
41 {
42 super(message, umoMessage);
43 }
44
45 public UnauthorisedException(Message message, UMOMessage umoMessage, Throwable cause)
46 {
47 super(message, umoMessage, cause);
48 }
49
50 public UnauthorisedException(UMOMessage umoMessage,
51 UMOSecurityContext context,
52 UMOImmutableEndpoint endpoint,
53 UMOEndpointSecurityFilter filter)
54 {
55 super(constructMessage(context, endpoint, filter), umoMessage);
56 }
57
58 private static Message constructMessage(UMOSecurityContext context,
59 UMOImmutableEndpoint endpoint,
60 UMOEndpointSecurityFilter filter)
61 {
62
63 Message m = null;
64 if (context == null)
65 {
66 m = CoreMessages.authSetButNoContext(filter.getClass().getName());
67 }
68 else
69 {
70 m = CoreMessages.authFailedForUser(context.getAuthentication().getPrincipal());
71 }
72 m.setNextMessage(CoreMessages.authDeniedOnEndpoint(endpoint.getEndpointURI()));
73 return m;
74 }
75 }