home *** CD-ROM | disk | FTP | other *** search
- package com.zerog.ia.download.shared;
-
- import java.util.Enumeration;
- import java.util.Locale;
- import java.util.StringTokenizer;
- import java.util.Vector;
-
- public class PlatformList {
- private Vector platformList = new Vector(4, 1);
- private Platform runningOnPlatform;
- private boolean platformNotFound = true;
-
- public void add(Platform var1) {
- this.platformList.addElement(var1);
- }
-
- public synchronized void computeRunningOnPlatform() {
- if (this.platformNotFound) {
- String var1 = System.getProperty("os.name");
- System.err.println("currentOS = " + var1);
- this.runningOnPlatform = null;
- Enumeration var2 = this.platformList.elements();
-
- while(this.platformNotFound && var2.hasMoreElements()) {
- Platform var3 = (Platform)var2.nextElement();
- System.err.println("runOnPlatformsContainingString = " + var3.runOnPlatformsContainingString);
- StringTokenizer var4 = new StringTokenizer(var3.runOnPlatformsContainingString, ",");
-
- while(this.platformNotFound && var4.hasMoreTokens()) {
- String var5 = var4.nextToken();
- System.err.println("curPlatformSubstring = " + var5);
- if (var1.toUpperCase(Locale.ENGLISH).trim().indexOf(var5.toUpperCase(Locale.ENGLISH).trim()) >= 0) {
- if (var3.platformName.trim().toUpperCase(Locale.ENGLISH).indexOf("MAC") >= 0 && var3.platformName.trim().toUpperCase(Locale.ENGLISH).indexOf("X") == -1 && var1.trim().toUpperCase(Locale.ENGLISH).indexOf("MAC OS X") >= 0) {
- this.runningOnPlatform = null;
- this.platformNotFound = true;
- } else {
- System.err.println("* Found: Running on platform: " + var3.getPlatformName());
- this.runningOnPlatform = var3;
- this.platformNotFound = false;
- }
- }
- }
- }
-
- if (this.platformNotFound) {
- Enumeration var6 = this.platformList.elements();
-
- while(var6.hasMoreElements()) {
- Platform var7 = (Platform)var6.nextElement();
- if (var7.isPureJava) {
- this.runningOnPlatform = var7;
- }
- }
- }
- }
-
- this.platformNotFound = false;
- }
-
- public synchronized Vector getPlatformList() {
- return this.platformList;
- }
-
- public synchronized Platform getRunningOnPlatform() {
- if (this.runningOnPlatform == null) {
- this.computeRunningOnPlatform();
- }
-
- return this.runningOnPlatform;
- }
- }
-