Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

GenericRole.java

00001 package edu.virtualschool.jwaa;
00002 
00008 public abstract class GenericRole 
00009   extends GenericIdentifiable 
00010   implements RoleAbstraction
00011 {
00012   public final RoleAbstraction parent;
00013   
00014   public GenericRole(String id, RoleAbstraction parent)
00015   {
00016     super(id);
00017     this.parent = parent;
00018   }
00019   public final RoleAbstraction getParent()
00020   {
00021     return parent; 
00022   }
00023   public int getDepth()
00024   {
00025     int depth = 0;
00026     for (RoleAbstraction r = this; r != null; r = r.getParent())
00027       depth++;
00028     return depth;
00029   }
00030   public final boolean meetsRequirementsOf(RoleAbstraction requiredRole)
00031   {
00032     for (RoleAbstraction r = this; r != null; r = r.getParent())
00033       if (r == requiredRole)
00034         return true;
00035     return false;
00036   }
00037 }