Revision 37893 branches/v2_0_0_prep/extensions/org.gvsig.installer/org.gvsig.installer.lib/org.gvsig.installer.lib.impl/src/main/java/org/gvsig/installer/lib/impl/execution/DefaultInstallPackageService.java

View differences:

DefaultInstallPackageService.java
37 37
import java.net.MalformedURLException;
38 38
import java.net.URL;
39 39
import java.util.ArrayList;
40
import java.util.Collections;
40 41
import java.util.HashMap;
41 42
import java.util.HashSet;
42 43
import java.util.List;
......
48 49

  
49 50
import org.gvsig.installer.lib.api.InstallerManager;
50 51
import org.gvsig.installer.lib.api.PackageInfo;
52
import org.gvsig.installer.lib.api.creation.MakePluginPackageServiceException;
51 53
import org.gvsig.installer.lib.api.execution.InstallPackageService;
52 54
import org.gvsig.installer.lib.api.execution.InstallPackageServiceException;
53 55
import org.gvsig.installer.lib.impl.DefaultInstallerManager;
......
526 528
	public List<String> getCategories() {
527 529
		Set<String> categories = new HashSet<String>();
528 530

  
529
		for (int i = 0; i < getPackageCount(); i++) {
530
			categories.addAll(packageInfos.get(i).getCategories());
531
		for (int i = 0; i < packageInfos.size(); i++) {
532
			PackageInfo pkginfo = packageInfos.get(i);
533
			List<String> pkgcategories = pkginfo.getCategories();
534
			categories.addAll(pkgcategories);
531 535
		}
532

  
533
		return new ArrayList<String>(categories);
536
		try {
537
			PackageInfo[] pkgs = manager.getInstalledPackages();
538
			for (int i = 0; i < pkgs.length; i++) {
539
				PackageInfo pkginfo = pkgs[i];
540
				List<String> pkgcategories = pkginfo.getCategories();
541
				categories.addAll(pkgcategories);
542
			}
543
			
544
		} catch (MakePluginPackageServiceException e) {
545
			// Ignore exceptions
546
		}
547
		ArrayList<String> l = new ArrayList<String>(categories);
548
		Collections.sort(l);
549
		return l;
534 550
	}
535 551

  
536 552
	public List<String> getTypes() {
537 553
		Set<String> types = new HashSet<String>();
538 554

  
539
		for (int i = 0; i < getPackageCount(); i++) {
540
			types.add(packageInfos.get(i).getType());
555
		for (int i = 0; i < packageInfos.size(); i++) {
556
			PackageInfo pkginfo = packageInfos.get(i);
557
			types.add(pkginfo.getType());
541 558
		}
542

  
543
		return new ArrayList<String>(types);
559
		try {
560
			PackageInfo[] pkgs = manager.getInstalledPackages();
561
			for (int i = 0; i < pkgs.length; i++) {
562
				PackageInfo pkginfo = pkgs[i];
563
				types.add(pkginfo.getType());
564
			}
565
			
566
		} catch (MakePluginPackageServiceException e) {
567
			// Ignore exceptions
568
		}
569
		ArrayList<String> l = new ArrayList<String>(types);
570
		Collections.sort(l);
571
		return l;
544 572
	}
545 573

  
546 574
}

Also available in: Unified diff