diff options
Diffstat (limited to 'plugins/org.eclipse.osee.framework.ui.workspacebundleloader/src/org/eclipse/osee/framework/ui/workspacebundleloader/BundleCollection.java')
-rw-r--r-- | plugins/org.eclipse.osee.framework.ui.workspacebundleloader/src/org/eclipse/osee/framework/ui/workspacebundleloader/BundleCollection.java | 109 |
1 files changed, 53 insertions, 56 deletions
diff --git a/plugins/org.eclipse.osee.framework.ui.workspacebundleloader/src/org/eclipse/osee/framework/ui/workspacebundleloader/BundleCollection.java b/plugins/org.eclipse.osee.framework.ui.workspacebundleloader/src/org/eclipse/osee/framework/ui/workspacebundleloader/BundleCollection.java index 98d7304470f..3a903d485d7 100644 --- a/plugins/org.eclipse.osee.framework.ui.workspacebundleloader/src/org/eclipse/osee/framework/ui/workspacebundleloader/BundleCollection.java +++ b/plugins/org.eclipse.osee.framework.ui.workspacebundleloader/src/org/eclipse/osee/framework/ui/workspacebundleloader/BundleCollection.java @@ -17,65 +17,62 @@ import java.util.HashMap; import java.util.List; import java.util.Map; - public class BundleCollection { - Map<String, List<BundleInfoLite>> bundleByName = new HashMap<>(); - Map<URL, BundleInfoLite> bundleByURL = new HashMap<>(); + Map<String, List<BundleInfoLite>> bundleByName = new HashMap<>(); + Map<URL, BundleInfoLite> bundleByURL = new HashMap<>(); + + public BundleCollection() { + + } + + public void add(BundleInfoLite bundle) { + List<BundleInfoLite> bundles = bundleByName.get(bundle.getSymbolicName()); + if (bundles == null) { + bundles = new ArrayList<>(); + bundleByName.put(bundle.getSymbolicName(), bundles); + } + bundles.add(bundle); + bundleByURL.put(bundle.getSystemLocation(), bundle); + } + + public List<BundleInfoLite> getByBundleName(String name) { + return bundleByName.get(name); + } + + public BundleInfoLite getByURL(URL url) { + return bundleByURL.get(url); + } - public BundleCollection(){ - - } - - public void add(BundleInfoLite bundle){ - List<BundleInfoLite> bundles = bundleByName.get(bundle.getSymbolicName()); - if(bundles == null){ - bundles = new ArrayList<>(); - bundleByName.put(bundle.getSymbolicName(), bundles); - } - bundles.add(bundle); - bundleByURL.put(bundle.getSystemLocation(), bundle); - } - - public List<BundleInfoLite> getByBundleName(String name){ - return bundleByName.get(name); - } - - public BundleInfoLite getByURL(URL url){ - return bundleByURL.get(url); - } + public List<BundleInfoLite> getInstalledBundles() { + List<BundleInfoLite> bundles = new ArrayList<>(); + for (BundleInfoLite info : bundleByURL.values()) { + if (info.isInstalled()) { + bundles.add(info); + } + } + return bundles; + } - public List<BundleInfoLite> getInstalledBundles() { - List<BundleInfoLite> bundles = new ArrayList<>(); - for(BundleInfoLite info: bundleByURL.values()){ - if(info.isInstalled()){ - bundles.add(info); - } - } - return bundles; - } + public List<BundleInfoLite> getLatestBundles() { + List<BundleInfoLite> latest = new ArrayList<>(); + for (List<BundleInfoLite> infolist : this.bundleByName.values()) { + if (infolist.size() == 1) { + latest.add(infolist.get(0)); + } else { + long lastModified = 0; + BundleInfoLite newest = null; + for (BundleInfoLite lite : infolist) { + long newLastModified = new File(lite.getSystemLocation().getFile()).lastModified(); + if (newLastModified > lastModified) { + lastModified = newLastModified; + newest = lite; + } + } + latest.add(newest); + } + } + return latest; + } - public List<BundleInfoLite> getLatestBundles() { - List<BundleInfoLite> latest = new ArrayList<>(); - for(List<BundleInfoLite> infolist:this.bundleByName.values()){ - if(infolist.size() == 1){ - latest.add(infolist.get(0)); - } else { - long lastModified = 0; - BundleInfoLite newest = null; - for(BundleInfoLite lite:infolist){ - long newLastModified = new File(lite.getSystemLocation().getFile()).lastModified(); - if(newLastModified > lastModified){ - lastModified = newLastModified; - newest = lite; - } - } - latest.add(newest); - } - } - return latest; - } - - - } |