KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > enhydra > barracuda > contrib > sam > data > DataObjectDeleteHandler


1 /*
2  * Copyright (C) 2003 Stefan Armbruster [stefan@armbruster-it.de]
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  * $Id: DataObjectDeleteHandler.java,v 1.2 2004/02/01 05:16:27 christianc Exp $
19  */

20 package org.enhydra.barracuda.contrib.sam.data;
21
22 import javax.servlet.http.*;
23 import org.enhydra.barracuda.core.event.*;
24 import org.enhydra.barracuda.contrib.sam.models.*;
25 import org.enhydra.barracuda.contrib.sam.xmlform.*;
26 import org.apache.log4j.*;
27
28 public abstract class DataObjectDeleteHandler extends DefaultBaseEventListener implements GetConfig {
29
30     protected static Logger logger = Logger.getLogger(DataObjectDeleteHandler.class.getName());
31
32     public abstract Config getConfig();
33    protected Config config;
34
35     public void handleControlEvent(ControlEventContext context) throws EventException, javax.servlet.ServletException JavaDoc, java.io.IOException JavaDoc
36     {
37         BaseEvent event = context.getEvent();
38       HttpServletRequest request = context.getRequest();
39       HttpSession session = request.getSession();
40
41         config = getConfig();
42
43         if (ErrorModel.exists(context)) return;
44         logger.info("Deleting DataObject");
45         XmlFormMap xfm = (XmlFormMap) context.getState(config.getMapName());
46         String JavaDoc oid = xfm.getStringVal(config.getOidName());
47         logger.info(config.getOidName() + " is " + oid);
48         try {
49             DataObject dataObj = config.getDataObject(oid);
50             dataObj.delete(null);
51             // put a empty MAP to context
52
xfm = new XmlFormMap(context, config.getXmlFormName(), config.getFormName(), null);
53             context.putState(config.getMapName(),xfm);
54         } catch (DataObjectException ex) {
55             logger.error(ex.getMessage(),ex);
56         }
57     }
58 }
59
Popular Tags