code: private void initialize() {
  
          // calculate the distinct groups of this role
          Set<String> distinctGroups = new HashSet<String>(getAllGroupNames());
          // by using a set first we eliminate duplicate names
          m_distictGroupNames = Collections.unmodifiableList(new ArrayList<String>(distinctGroups));
      }
docs: Initializes this role, creating an optimized data structure for
  the lookup of the role group names.<p>