예제 #1
0
  public static void addVM(VMTreeObjectVM vm) {
    VMTreeObjectRoot root = vm.getRoot();
    if (root.getShadowObject() != null && vm.getShadowObject() == null) {
      //			if(vm.getRecord()==null
      //					||vm.getRecord().powerState==null
      //					||!vm.getRecord().powerState.equals(Types.VmPowerState.RUNNING)){
      //				for(VMTreeObject o:root.getShadowObject().getChildren()){
      //					if(o.getName().equals(Constants.HALTED_VM_GROUP_DEFAULT_NAME)){
      //						VMTreeObjectVMinGroup vmInGroup = new VMTreeObjectVMinGroup(vm);
      //						vm.setShadowObject(vmInGroup);
      //						o.addChild(vmInGroup);
      //						break;
      //					}
      //				}
      //			}else{
      for (VMTreeObject o : root.getShadowObject().getChildren()) {
        if (o.getName().equals(Constants.VM_GROUP_DEFAULT_NAME)) {
          VMTreeObjectVMinGroup vmInGroup = new VMTreeObjectVMinGroup(vm);
          vm.setShadowObject(vmInGroup);
          o.addChild(vmInGroup);
          break;
        }
      }
      //			}

    }
    if (Constants.groupView != null) {
      Display display = PlatformUI.getWorkbench().getDisplay();
      if (!display.isDisposed()) {
        Runnable runnable =
            new Runnable() {
              public void run() {
                Constants.groupView.getViewer().refresh();
              }
            };
        display.syncExec(runnable);
      }
    }
  }