Revision 42881 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.installer/org.gvsig.installer.swing/org.gvsig.installer.swing.impl/src/main/java/org/gvsig/installer/swing/impl/execution/panel/model/PackagesTableModel.java
PackagesTableModel.java | ||
---|---|---|
40 | 40 |
import java.util.Set; |
41 | 41 |
|
42 | 42 |
import javax.swing.table.AbstractTableModel; |
43 |
import org.apache.commons.lang3.StringUtils; |
|
43 | 44 |
|
44 | 45 |
import org.gvsig.installer.lib.api.InstallerLocator; |
45 | 46 |
import org.gvsig.installer.lib.api.InstallerManager; |
... | ... | |
67 | 68 |
} |
68 | 69 |
|
69 | 70 |
public class PackageOsAndArchitecture { |
70 |
public String os; |
|
71 |
public String osfamily; |
|
72 |
public String osname; |
|
73 |
public String osversion; |
|
71 | 74 |
public String arch; |
75 |
|
|
76 |
public String getOperatingSystemId() { |
|
77 |
if( StringUtils.isEmpty(osname)) { |
|
78 |
return osfamily; |
|
79 |
} |
|
80 |
return osfamily + "-" + osname; |
|
81 |
} |
|
72 | 82 |
} |
73 | 83 |
|
74 | 84 |
// |
... | ... | |
125 | 135 |
} |
126 | 136 |
|
127 | 137 |
private boolean canSetAsDefault(List<String> defaultIDs, PackageInfo pkg) { |
128 |
String system_os = installerManager.getOperatingSystem(); |
|
138 |
String system_osfamily = installerManager.getOperatingSystemFamily(); |
|
139 |
String system_arch = installerManager.getArchitecture(); |
|
129 | 140 |
String pkg_os = pkg.getOperatingSystem(); |
130 | 141 |
String pkg_arch = pkg.getArchitecture(); |
131 | 142 |
if (defaultIDs != null) { |
132 | 143 |
for (int j = 0; j < defaultIDs.size(); j++) { |
133 | 144 |
String code = defaultIDs.get(j); |
134 | 145 |
if (pkg.matchID(code)) { |
135 |
if (pkg_os.equals(system_os) || pkg_os.equals(PackageManager.OS.ALL)) { |
|
136 |
// De momento solo marcamos paquetes de arquitectura x86, 32bits |
|
137 |
if( PackageManager.ARCH.ALL.equalsIgnoreCase(pkg_arch) ) { |
|
138 |
return true; |
|
139 |
} else if( PackageManager.ARCH.X86.equalsIgnoreCase(pkg_arch) ) { |
|
140 |
return true; |
|
141 |
} |
|
146 |
if ( pkg.getOperatingSystemFamily().equals(system_osfamily) || pkg_os.equals(PackageManager.OS.ALL)) { |
|
147 |
if( PackageManager.ARCH.ALL.equalsIgnoreCase(pkg_arch) ) { |
|
148 |
return true; |
|
149 |
} else if( system_arch.equalsIgnoreCase(pkg_arch) ) { |
|
150 |
return true; |
|
151 |
} |
|
142 | 152 |
} |
143 | 153 |
} |
144 | 154 |
} |
... | ... | |
373 | 383 |
PackageOsAndArchitecture oSArch = new PackageOsAndArchitecture(); |
374 | 384 |
TablePackageInfo tableInfo = currentlyVisiblePackages[rowIndex]; |
375 | 385 |
PackageInfo installerInfo = tableInfo.getPackageInfo(); |
376 |
oSArch.os = installerInfo.getOperatingSystem(); |
|
386 |
oSArch.osfamily = installerInfo.getOperatingSystemFamily(); |
|
387 |
oSArch.osname = installerInfo.getOperatingSystemName(); |
|
388 |
oSArch.osversion = installerInfo.getOperatingSystemVersion(); |
|
377 | 389 |
oSArch.arch = installerInfo.getArchitecture(); |
378 | 390 |
return oSArch; |
379 | 391 |
} |
Also available in: Unified diff