001    package javax.portlet.faces.annotation;
002    
003    import java.lang.annotation.ElementType;
004    import java.lang.annotation.Retention;
005    import java.lang.annotation.RetentionPolicy;
006    import java.lang.annotation.Target;
007    
008    /** The PortletNamingContainer annotation is used on a class as a signal
009     * that instances of this class implement the Portlet NamingContainer behavior. 
010     * I.e.  its a <code>UIViewRoot</code> which overrides and implements
011     * <code>getContainerClientId()</code> ensuring that the returned Id contains in
012     * part a portlet Id that is unique with respect to the consuming application
013     * (portal).  This id is acquired by calling <code>ExternalContext.encodeNamespace()</code>.
014     */
015    
016    @Retention(RetentionPolicy.RUNTIME)
017    @Target({ElementType.TYPE})
018    public @interface PortletNamingContainer {
019    }