KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sslexplorer > policyframework > ResourceDeleteEvent


1 /*
2  * SSL-Explorer
3  *
4  * Copyright (C) 2003-2006 3SP LTD. All Rights Reserved
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2 of
9  * the License, or (at your option) any later version.
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public
16  * License along with this program; if not, write to the Free Software
17  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18  */

19             
20 package com.sslexplorer.policyframework;
21
22 import com.sslexplorer.boot.Util;
23 import com.sslexplorer.core.CoreAttributeConstants;
24 import com.sslexplorer.core.CoreEvent;
25 import com.sslexplorer.security.SessionInfo;
26
27 /**
28  * Extension of a {@link com.sslexplorer.core.CoreEvent} that should be
29  * used when a {@link Resource} is deleted.
30  *
31  * @author James D Robinson <a HREF="mailto: james@3sp.com">&lt;brett@3sp.com&gt;</a>
32  */

33 public class ResourceDeleteEvent extends CoreEvent {
34     
35     private Resource resource;
36     
37     /**
38      * Constructor for {@link CoreEvent#STATE_UNSUCCESSFUL} that also
39      * takes the message from an exception and adds it as an attribute
40      *
41      * @param source source of event
42      * @param id event ID
43      * @param session session that fired the event
44      * @param exception exception
45      */

46     public ResourceDeleteEvent(Object JavaDoc source, int id,
47                     SessionInfo session, Throwable JavaDoc exception) {
48         super(source, id, exception, session, STATE_UNSUCCESSFUL);
49         addAttribute(CoreAttributeConstants.EVENT_ATTR_EXCEPTION_MESSAGE,
50             Util.getExceptionMessageChain(exception));
51         
52         
53     }
54
55     /**
56      * Constructor
57      *
58      * @param source source of event
59      * @param id event ID
60      * @param resource resource changin
61      * @param session session that fired the event
62      * @param state event state
63      */

64     public ResourceDeleteEvent(Object JavaDoc source, int id, Resource resource,
65                     SessionInfo session, int state) {
66         super(source, id, resource, session, state);
67         this.resource = resource;
68         if(state == CoreEvent.STATE_UNSUCCESSFUL || ( state == CoreEvent.STATE_SUCCESSFUL && resource != null) ) {
69             if(resource != null) {
70                 addAttribute(CoreAttributeConstants.EVENT_ATTR_RESOURCE_NAME, resource.getResourceName());
71                 if(resource instanceof OwnedResource) {
72                     OwnedResource or = (OwnedResource)resource;
73                     if(or.getOwnerUsername() != null) {
74                         addAttribute(CoreAttributeConstants.EVENT_ATTR_RESOURCE_OWNER, or.getOwnerUsername());
75                     }
76                 }
77             }
78         }
79         else {
80             throw new IllegalArgumentException JavaDoc("Must provide a non-null resource if the event was successful.");
81         }
82     }
83     
84     /**
85      * Get the resource
86      *
87      * @return resource
88      */

89     public Resource getResource() {
90         return resource;
91     }
92
93 }
94
Popular Tags