001 package railo.runtime.ext.tag; 002 003 import railo.runtime.type.Collection; 004 005 public interface TagMetaDataAttr { 006 007 /** 008 * A description of the attribute. 009 * @return the description of the attribute 010 */ 011 public abstract String getDescription(); 012 013 /** 014 * The runtime type of the attribute's value 015 * For example:String,Number,Boolean,Object,... 016 * @return the type of the attribute 017 */ 018 public abstract String getType(); 019 020 /** 021 * The unique name of the attribute being declared 022 * @return the name of the attribute 023 */ 024 public abstract Collection.Key getName(); 025 026 /** 027 * return the default value for this attribute or null if no default value is defined 028 * @return the default value of the attribute 029 */ 030 public abstract String getDefaultVaue(); 031 032 /** 033 * Whether the attribute is required. 034 * @return is required 035 */ 036 public abstract boolean isRequired(); 037 038 /** 039 * Whether the attribute's value can be dynamically calculated at runtime. 040 * @return is a runtime expression 041 */ 042 public boolean isRuntimeExpressionValue(); 043 044 }