001    package org.trails.component;
002    
003    import org.apache.tapestry.IAsset;
004    import org.apache.tapestry.annotations.Asset;
005    import org.apache.tapestry.annotations.ComponentClass;
006    import org.trails.descriptor.IIdentifierDescriptor;
007    import org.trails.hibernate.HasAssignedIdentifier;
008    
009    @ComponentClass(allowBody = true, allowInformalParameters = false)
010    public abstract class HibernateIdentifier extends Identifier
011    {
012    
013            @Asset(value = "/org/trails/component/Identifier.html")
014            public abstract IAsset get$template();
015    
016            public boolean isEditable()
017            {
018                    return !((IIdentifierDescriptor) getDescriptor()).isGenerated() && !((HasAssignedIdentifier) getModel()).isSaved();
019            }
020    }