1 16 package com.blandware.atleap.webapp.action.core.contentLocale; 17 18 import com.blandware.atleap.persistence.exception.DeleteException; 19 import com.blandware.atleap.search.SearchManager; 20 import com.blandware.atleap.service.exception.BeanNotFoundException; 21 import com.blandware.atleap.webapp.action.core.BaseAction; 22 import com.blandware.atleap.webapp.form.ContentLocaleForm; 23 import com.blandware.atleap.webapp.util.core.CacheUtil; 24 import com.blandware.atleap.webapp.util.core.LocaleUtil; 25 import org.apache.commons.validator.GenericValidator; 26 import org.apache.struts.action.ActionForm; 27 import org.apache.struts.action.ActionForward; 28 import org.apache.struts.action.ActionMapping; 29 import org.apache.struts.action.ActionMessage; 30 import org.apache.struts.action.ActionMessages; 31 32 import javax.servlet.http.HttpServletRequest ; 33 import javax.servlet.http.HttpServletResponse ; 34 35 57 public final class DeleteContentLocaleAction extends BaseAction { 58 67 public ActionForward execute(ActionMapping mapping, ActionForm form, 68 HttpServletRequest request, HttpServletResponse response) throws Exception { 69 70 71 ContentLocaleForm contentLocaleForm = (ContentLocaleForm) form; 72 String contentLocaleIdentifier = null; 73 if ( !GenericValidator.isBlankOrNull(contentLocaleForm.getIdentifier()) ) { 74 contentLocaleIdentifier = contentLocaleForm.getIdentifier(); 75 } else { 76 if ( log.isWarnEnabled() ) { 77 log.warn("Missing content locale identifier. Returning to list..."); 78 } 79 return mapping.findForward("listContentLocales"); 80 } 81 82 try { 83 LocaleUtil.getInstance(servlet.getServletContext()).deleteContentLocale(contentLocaleIdentifier); 84 85 88 SearchManager searchManager = SearchManager.getInstance(servlet.getServletContext()); 90 searchManager.unIndexByLocale(contentLocaleIdentifier, request); 91 92 CacheUtil cacheUtil = CacheUtil.getInstance(request); 94 cacheUtil.flushAllCache(); 95 96 } catch ( BeanNotFoundException e ) { 97 ActionMessages errors = new ActionMessages(); 99 errors.add("contentLocaleNotFound", new ActionMessage("core.contentLocale.errors.notFound")); 100 saveErrors(request, errors); 101 return mapping.findForward("listContentLocales"); 102 } catch ( DeleteException e ) { 103 saveToken(request); 104 ActionMessages errors = new ActionMessages(); 105 errors.add("contentLocaleCannotDelete", new ActionMessage("core.contentLocale.errors.cannotDelete")); 106 saveErrors(request, errors); 107 return mapping.findForward("listContentLocales"); 108 } 109 110 return mapping.findForward("listContentLocales"); 111 } 112 } | Popular Tags |