Package com.agiletec.plugins.jpcmstagcloud.aps.tags

Source Code of com.agiletec.plugins.jpcmstagcloud.aps.tags.ContentListTag

/*
*
* Copyright 2013 Entando S.r.l. (http://www.entando.com) All rights reserved.
*
* This file is part of Entando software.
* Entando is a free software;
* You can redistribute it and/or modify it
* under the terms of the GNU General Public License (GPL) as published by the Free Software Foundation; version 2.
*
* See the file License for the specific language governing permissions  
* and limitations under the License
*
*
*
* Copyright 2013 Entando S.r.l. (http://www.entando.com) All rights reserved.
*
*/
package com.agiletec.plugins.jpcmstagcloud.aps.tags;

import java.util.List;

import javax.servlet.ServletRequest;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;

import com.agiletec.aps.system.ApsSystemUtils;
import com.agiletec.aps.system.SystemConstants;
import com.agiletec.aps.system.services.user.UserDetails;
import com.agiletec.aps.util.ApsWebApplicationUtils;
import com.agiletec.plugins.jpcmstagcloud.aps.system.JpcmstagcloudSystemConstants;
import com.agiletec.plugins.jpcmstagcloud.aps.system.services.tagcloud.ITagCloudManager;

/**
* @author E.Santoboni
*/
public class ContentListTag extends TagSupport {
 
  @Override
  public int doStartTag() throws JspException {
    ITagCloudManager tagCloudManager = (ITagCloudManager) ApsWebApplicationUtils.getBean(JpcmstagcloudSystemConstants.TAG_CLOUD_MANAGER, this.pageContext);
    ServletRequest request =  this.pageContext.getRequest();
    try {
      UserDetails currentUser = (UserDetails) this.pageContext.getSession().getAttribute(SystemConstants.SESSIONPARAM_CURRENT_USER);
      String tagCategoryCode = request.getParameter("tagCategoryCode");
      List<String> contentsId = tagCloudManager.loadPublicTaggedContentsId(tagCategoryCode, currentUser);
      this.pageContext.setAttribute(this.getListName(), contentsId);
      request.setAttribute("tagCategoryCode", tagCategoryCode);
    } catch (Throwable t) {
      ApsSystemUtils.logThrowable(t, this, "doStartTag");
      throw new JspException("Errore tag", t);
    }
    return super.doStartTag();
  }
 
  @Override
  public void release() {
    super.release();
    this.setListName(null);
  }
 
  /**
   * Restituisce il nome con il quale viene inserita nel pageContext
   * la lista degli identificativi trovati.
   * @return Returns the listName.
   */
  public String getListName() {
    return _listName;
  }
 
  /**
   * Setta il nome con il quale viene inserita nel pageContext
   * la lista degli identificativi trovati.
   * @param listName The listName to set.
   */
  public void setListName(String listName) {
    this._listName = listName;
  }
 
  private String _listName;
 
}
TOP

Related Classes of com.agiletec.plugins.jpcmstagcloud.aps.tags.ContentListTag

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.