Java tutorial
/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.cms.core.tools; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import com.google.common.base.Strings; import com.google.common.collect.Maps; import com.enonic.cms.framework.cache.CacheFacade; import com.enonic.cms.framework.cache.CacheManager; public final class CacheInfoController extends AbstractToolController { private CacheManager cacheManager; @Override protected void doGet(final HttpServletRequest req, final HttpServletResponse res) throws Exception { final String op = req.getParameter("op"); if ("info".equals(op)) { final Map<String, Object> model = Maps.newHashMap(); model.put("baseUrl", getBaseUrl(req)); model.put("cacheList", this.cacheManager.getAll()); renderView(req, res, model, "cacheInfoPage_info"); } else { final Map<String, Object> model = Maps.newHashMap(); model.put("baseUrl", getBaseUrl(req)); renderView(req, res, model, "cacheInfoPage"); } } @Override protected void doPost(final HttpServletRequest req, final HttpServletResponse res) throws Exception { final String cache = req.getParameter("cache"); final String op = req.getParameter("op"); executeCommand(cache, op); res.setStatus(HttpServletResponse.SC_NO_CONTENT); } private void executeCommand(final String cache, final String command) { if (Strings.isNullOrEmpty(cache)) { return; } final CacheFacade cacheFacade = this.cacheManager.getCache(cache); if (cacheFacade == null) { return; } if ("clear-cache".equalsIgnoreCase(command)) { cacheFacade.removeAll(); } } @Autowired public void setCacheManager(final CacheManager cacheManager) { this.cacheManager = cacheManager; } }