if (packageInfo.base != null)
if (ePackageInfo.getBasePackage() == null)
  protected void adjustEPackages(IProgressMonitor progressMonitor)  {    try    {      progressMonitor.beginTask("", 2);      super.adjustEPackages(new SubProgressMonitor(progressMonitor, 1));        List ePackages = getRoseImporter().getEPackages();      for (Iterator i = ePackages.iterator(); i.hasNext();)      {        EPackage ePackage = (EPackage)i.next();          String packageName = ePackage.getName();        PackageInfo packageInfo = nameToReferencedPackageInfo == null ? null :           (PackageInfo)nameToReferencedPackageInfo.get(packageName);                if (packageInfo != null)        {          handleEPackage(ePackage, false);        }        else        {          handleEPackage(ePackage, true);          if (nameToPackageInfo != null)          {            packageInfo = (PackageInfo)nameToPackageInfo.get(packageName);          }        }          if (packageInfo != null)        {          ModelImporter.EPackageInfo ePackageInfo = getRoseImporter().getEPackageInfo(ePackage);          if (packageInfo.nsURI != null)          {            ePackage.setNsURI(packageInfo.nsURI);          }          if (packageInfo.nsPrefix != null)          {            ePackage.setNsPrefix(packageInfo.nsPrefix);          }          if (packageInfo.base != null)          {            ePackageInfo.setBasePackage(packageInfo.base);          }          if (packageInfo.prefix != null)          {            ePackageInfo.setPrefix(packageInfo.prefix);          }        }      }    }    finally    {      progressMonitor.done();    }  }