Package de.innovationgate.eclipse.wgadesigner.models

Source Code of de.innovationgate.eclipse.wgadesigner.models.WGAExecutionEnvironment

/*******************************************************************************
* Copyright (c) 2009, 2010 Innovation Gate GmbH.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
*     Innovation Gate GmbH - initial API and implementation
******************************************************************************/
package de.innovationgate.eclipse.wgadesigner.models;

import org.eclipse.jdt.launching.IVMInstall;
import org.eclipse.jdt.launching.JavaRuntime;
import org.eclipse.jdt.launching.environments.IExecutionEnvironment;

import de.innovationgate.wga.model.KeyValueBean;

public class WGAExecutionEnvironment extends KeyValueBean<String, IExecutionEnvironment> {
 
  public static final String DEFAULT_INSTANCE_ID = "DEFAULT";
 
  public static final WGAExecutionEnvironment DEFAULT_INSTANCE = new WGAExecutionEnvironment(DEFAULT_INSTANCE_ID);
 
  private WGAExecutionEnvironment(String id) {
    super(id, null);
  }
 
  public WGAExecutionEnvironment(IExecutionEnvironment environment) {   
    super(buildId(environment), environment);
  }

  public static String buildId(IExecutionEnvironment environment) {
    return environment.getId();
  }

  @Override
  public String toString() {
    if (getKey().equals(DEFAULT_INSTANCE_ID)) {
      return "Default JRE (" + JavaRuntime.getDefaultVMInstall().getName() + ")";
    } else {
      return getValue().getId();
    }   
  }

  public static IVMInstall findVMInstallById(String id) {
    if (id != null) {
      if (id.equals(DEFAULT_INSTANCE_ID)) {
        return JavaRuntime.getDefaultVMInstall();
      } else {
        IExecutionEnvironment environment = JavaRuntime.getExecutionEnvironmentsManager().getEnvironment(id);
        if (environment != null) {
          return environment.getDefaultVM();
        }
      }
    }       
    return null;
  }
 
  public static WGAExecutionEnvironment findById(String id) {
    if (id != null) {
      if (id.equals(DEFAULT_INSTANCE_ID)) {
        return DEFAULT_INSTANCE;
      } else {
        IExecutionEnvironment environment = JavaRuntime.getExecutionEnvironmentsManager().getEnvironment(id);
        if (environment != null) {
          return new WGAExecutionEnvironment(environment);
        }
      }
    }       
    return null;
  }
}
TOP

Related Classes of de.innovationgate.eclipse.wgadesigner.models.WGAExecutionEnvironment

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.