package com.trsvax.tapestry.aws.core.components; import org.apache.tapestry5.BindingConstants; import org.apache.tapestry5.Block; import org.apache.tapestry5.ComponentResources; import org.apache.tapestry5.annotations.Parameter; import org.apache.tapestry5.annotations.Property; import org.apache.tapestry5.ioc.annotations.Inject; /** * Layout component for pages of application tapestry-aws-ses. */ public class Layout { /** The page title, for the <title> element and the <h1> element. */ @Property @Parameter(required = true, defaultPrefix = BindingConstants.LITERAL) private String title; @Property private String pageName; @Property @Parameter(defaultPrefix = BindingConstants.LITERAL) private String sidebarTitle; @Property @Parameter(defaultPrefix = BindingConstants.LITERAL) private Block sidebar; @Inject private ComponentResources resources; public String getClassForPageName() { return resources.getPageName().equalsIgnoreCase(pageName) ? "current_page_item" : null; } public String[] getPageNames() { return new String[] { "Index", "About", "Contact" }; } }