private boolean areRootsChanged(final LibraryImpl that) {
   return !that.equals(this);
   // final OrderRootType[] allTypes = OrderRootType.getAllTypes();
   // for (OrderRootType type : allTypes) {
   //  final String[] urls = getUrls(type);
   //  final String[] thatUrls = that.getUrls(type);
   //  if (urls.length != thatUrls.length) {
   //    return true;
   //  }
   //  for (int idx = 0; idx < urls.length; idx++) {
   //    final String url = urls[idx];
   //    final String thatUrl = thatUrls[idx];
   //    if (!Comparing.equal(url, thatUrl)) {
   //      return true;
   //    }
   //    final Boolean jarDirRecursive = myJarDirectories.get(url);
   //    final Boolean sourceJarDirRecursive = that.myJarDirectories.get(thatUrl);
   //    if (jarDirRecursive == null ? sourceJarDirRecursive != null :
   // !jarDirRecursive.equals(sourceJarDirRecursive)) {
   //      return true;
   //    }
   //  }
   // }
   // return false;
 }
 @Override
 public boolean isChanged() {
   return !mySource.equals(this);
 }