I find that the implementation shown below is more Java-ish. It would have some<br>advantages when branching based on a ResourceType value, etc. No errors show<br>up when I use this in Eclipse.<br><br>YMMV.<br>-W<br><br>public enum ResourceType {<br>
<br>    DRL       ( &quot;Drools Rule Language&quot;,          &quot;drl&quot;  ),<br>    XDRL      ( &quot;Drools XML Rule Language&quot;,      &quot;xdrl&quot; ),<br>    DSL       ( &quot;Drools DSL&quot;,                    &quot;dsl&quot;  ),<br>
    DSLR      ( &quot;Drools DSL Rule&quot;,               &quot;dslr&quot; ),<br>    DRF       ( &quot;Drools Rule Flow Language&quot;,     &quot;rf&quot;   ),<br>    BPMN2     ( &quot;Drools BPMN2 Language&quot;,         &quot;bpmn&quot; ),<br>
    DTABLE    ( &quot;Decision Table&quot;,                &quot;xls&quot;  ),<br>    PKG       ( &quot;Binary Package&quot;,                &quot;pkg&quot;  ),<br>    BRL       ( &quot;Drools Business Rule Language&quot;, &quot;brl&quot;  ),<br>
    CHANGE_SET( &quot;Change Set&quot;,                    &quot;xcs&quot;  ),<br>    XSD       ( &quot;XSD&quot;,                           &quot;xsd&quot;  );    <br><br>    private String  description;<br>    private String  defaultExtension;<br>
<br>    ResourceType( String description, String defaultExtension ) {<br>        this.description = description;<br>        this.defaultExtension = defaultExtension;<br>    }<br><br>    public static ResourceType getResourceType(final String resourceName) {<br>
        return valueOf( resourceName );<br>    }<br><br>    public static ResourceType determineResourceType( final String resourceName ) {<br>        try{ <br>            return valueOf( resourceName );<br>        } catch( Exception iae ){<br>
            return null;<br>        }<br>    }<br><br>    public boolean matchesExtension( String resourceName ) {<br>        return resourceName != null &amp;&amp; resourceName.endsWith( &quot;.&quot;+defaultExtension );<br>
    }<br><br>    public String getDefaultExtension() {<br>        return defaultExtension;<br>    }<br><br>    public String getDescription() {<br>        return description;<br>    }<br><br>    public String getName() {<br>
        return <a href="http://this.name">this.name</a>();<br>    }<br><br>    @Override<br>    public String toString() {<br>        return &quot;ResourceType = &#39;&quot; + this.description + &quot;&#39;&quot;;<br>    }<br>
}<br><br>