1 23 24 package org.infoglue.deliver.taglib.structure; 25 26 import javax.servlet.jsp.JspException ; 27 28 import org.infoglue.cms.entities.structure.SiteNodeVO; 29 import org.infoglue.deliver.taglib.component.ComponentLogicTag; 30 31 public class SiteNodeTag extends ComponentLogicTag 32 { 33 private static final long serialVersionUID = 3258135773294113587L; 34 35 private Integer siteNodeId; 36 private Integer targetSiteNodeId; 37 private String propertyName; 38 private boolean useInheritance = true; 39 40 public SiteNodeTag() 41 { 42 super(); 43 } 44 45 public int doEndTag() throws JspException  46 { 47 produceResult(getSiteNode()); 48 return EVAL_PAGE; 49 } 50 51 private SiteNodeVO getSiteNode() throws JspException  52 { 53 if(this.siteNodeId != null) 54 return this.getController().getSiteNode(this.siteNodeId); 55 else if(this.propertyName != null) 56 if(this.targetSiteNodeId != null) 57 return this.getComponentLogic().getBoundSiteNode(targetSiteNodeId, propertyName, useInheritance); 58 else 59 return this.getComponentLogic().getBoundSiteNode(propertyName, useInheritance); 60 else if(this.getController().getSiteNodeId() != null && this.getController().getSiteNodeId().intValue() > -1) 61 return this.getController().getSiteNode(); 62 else 63 return null; 64 } 65 66 public void setSiteNodeId(Integer siteNodeId) 67 { 68 this.siteNodeId = siteNodeId; 69 } 70 71 public void setPropertyName(String propertyName) throws JspException  72 { 73 this.propertyName = evaluateString("siteNode", "propertyName", propertyName); 74 } 75 76 public void setUseInheritance(boolean useInheritance) 77 { 78 this.useInheritance = useInheritance; 79 } 80 81 public void setTargetSiteNodeId(String targetSiteNodeId) throws JspException  82 { 83 this.targetSiteNodeId = evaluateInteger("siteNode", "targetSiteNodeId", targetSiteNodeId); 84 } 85 86 } | Popular Tags |