I'm a little bit confused by the naming conventions in the class hierarchy I
see in Shiro.
For instance:
public interface WebEnvironment extends Environment
However:
public class DefaultWebEnvironment extends DefaultEnvironment
- DefaultEnvironment implements NamedObjectEnvironment
- NamedObjectEnvironment extends Environment
Why does DefaultWebEnvironment not implement WebEnvironment?
If they are fundamentally different, shouldn't they be named differently?
Another example:
public class ActiveDirectoryRealm extends AbstractLdapRealm
- AbstractLdapRealm extends AuthorizingRealm
However:
public class DefaultLdapRealm extends AuthorizingRealm
Why does DefaultLdapRealm not extend AbstractLdapRealm?
If DefaultLdapRealm extended AbstractLdapRealm then ActiveDirectoryRealm
could extend DefaultLdapRealm, which would make sense as the code is
treating it as a superset of LDAP.
i.e. it has specific queries for logging in, getting groups/roles etc.
Also, ActiveDirectoryRealm is in a package parallel to the ldap package.
Since it extends org.apache.shiro.realm.ldap.AbstractLdapRealm, surely it
would make sense for it to either be in the org.apache.shiro.realm.ldap
package or in the org.apache.shiro.realm.ldap.activedirectory package.
--
View this message in context:
http://shiro-user.582556.n2.nabble.com/Confused-By-Class-Hierarchy-tp7581289.html
Sent from the Shiro User mailing list archive at Nabble.com.