/**
  * Return all interfaces the given class realizes.
  *
  * @param clazz
  * @return Collection
  */
 public Collection getRealizedInterfaces(MClassifier clazz) {
   if (clazz == null) return new ArrayList();
   Iterator it = clazz.getClientDependencies().iterator();
   List list = new ArrayList();
   MNamespace model = ProjectBrowser.TheInstance.getProject().getModel();
   while (it.hasNext()) {
     Object o = it.next();
     if (o instanceof MAbstraction) {
       MAbstraction abstraction = (MAbstraction) o;
       MStereotype stereo = abstraction.getStereotype();
       if (stereo != null
           && stereo.getBaseClass() != null
           && stereo.getName() != null
           && stereo.getBaseClass().equals("Abstraction")
           && stereo.getName().equals("realize")) {
         Iterator it2 = abstraction.getSuppliers().iterator();
         while (it2.hasNext()) {
           Object o2 = it2.next();
           if (o2 instanceof MInterface) {
             list.add(o2);
           }
         }
       }
     }
   }
   return list;
 }
 protected void updateStereotypeText() {
   MModelElement me = (MModelElement) getOwner();
   if (me == null) return;
   MStereotype stereo = me.getStereotype();
   if (stereo == null || stereo.getName() == null || stereo.getName().length() == 0)
     _stereo.setText("");
   else {
     _stereo.setText(Notation.generateStereotype(this, stereo));
   }
 }