Package com.vmware.vim25

Examples of com.vmware.vim25.VirtualDiskFlatVer2BackingInfo


    assert(vmdkDatastorePathChain != null);
    assert(vmdkDatastorePathChain.length >= 1);

    VirtualDisk disk;
    VirtualDiskFlatVer2BackingInfo backingInfo;
    if(device != null) {
      disk = device;
      backingInfo = (VirtualDiskFlatVer2BackingInfo)disk.getBacking();
    } else {
      disk = new VirtualDisk();
      backingInfo = new VirtualDiskFlatVer2BackingInfo();
          backingInfo.setDatastore(morDs);
          backingInfo.setDiskMode(VirtualDiskMode.PERSISTENT.value());
      disk.setBacking(backingInfo);
     
      int ideControllerKey = vmMo.getIDEDeviceControllerKey();
      if(controllerKey < 0)
        controllerKey = ideControllerKey;
          if(deviceNumber < 0) {
            deviceNumber = vmMo.getNextDeviceNumber(controllerKey);
            if(controllerKey != ideControllerKey && isReservedScsiDeviceNumber(deviceNumber))
              deviceNumber++;
          }
         
      disk.setControllerKey(controllerKey);
        disk.setKey(-contextNumber);
        disk.setUnitNumber(deviceNumber);

        VirtualDeviceConnectInfo connectInfo = new VirtualDeviceConnectInfo();
        connectInfo.setConnected(true);
        connectInfo.setStartConnected(true);
        disk.setConnectable(connectInfo);
    }
   
        backingInfo.setFileName(vmdkDatastorePathChain[0]);
        if(vmdkDatastorePathChain.length > 1) {
          String[] parentDisks = new String[vmdkDatastorePathChain.length - 1];
          for(int i = 0; i < vmdkDatastorePathChain.length - 1; i++)
            parentDisks[i] = vmdkDatastorePathChain[i + 1];
View Full Code Here


    assert(vmdkDatastorePathChain != null);
    assert(vmdkDatastorePathChain.length >= 1);

    VirtualDisk disk = new VirtualDisk();

    VirtualDiskFlatVer2BackingInfo backingInfo = new VirtualDiskFlatVer2BackingInfo();
        backingInfo.setDatastore(vmdkDatastorePathChain[0].second());
        backingInfo.setFileName(vmdkDatastorePathChain[0].first());
        backingInfo.setDiskMode(VirtualDiskMode.PERSISTENT.value());
        if(vmdkDatastorePathChain.length > 1) {
          Pair<String, ManagedObjectReference>[] parentDisks = new Pair[vmdkDatastorePathChain.length - 1];
          for(int i = 0; i < vmdkDatastorePathChain.length - 1; i++)
            parentDisks[i] = vmdkDatastorePathChain[i + 1];
View Full Code Here

  }

  private static void setParentBackingInfo(VirtualDiskFlatVer2BackingInfo backingInfo,
    ManagedObjectReference morDs, String[] parentDatastorePathList) {

    VirtualDiskFlatVer2BackingInfo parentBacking = new VirtualDiskFlatVer2BackingInfo();
    parentBacking.setDatastore(morDs);
    parentBacking.setDiskMode(VirtualDiskMode.PERSISTENT.value());

    if(parentDatastorePathList.length > 1) {
      String[] nextDatastorePathList = new String[parentDatastorePathList.length -1];
      for(int i = 0; i < parentDatastorePathList.length -1; i++)
        nextDatastorePathList[i] = parentDatastorePathList[i + 1];
      setParentBackingInfo(parentBacking, morDs, nextDatastorePathList);
    }
    parentBacking.setFileName(parentDatastorePathList[0]);

    backingInfo.setParent(parentBacking);
  }
View Full Code Here

  }

  private static void setParentBackingInfo(VirtualDiskFlatVer2BackingInfo backingInfo,
    Pair<String, ManagedObjectReference>[] parentDatastorePathList) {

    VirtualDiskFlatVer2BackingInfo parentBacking = new VirtualDiskFlatVer2BackingInfo();
    parentBacking.setDatastore(parentDatastorePathList[0].second());
    parentBacking.setDiskMode(VirtualDiskMode.PERSISTENT.value());

    if(parentDatastorePathList.length > 1) {
      Pair<String, ManagedObjectReference>[] nextDatastorePathList = new Pair[parentDatastorePathList.length -1];
      for(int i = 0; i < parentDatastorePathList.length -1; i++)
        nextDatastorePathList[i] = parentDatastorePathList[i + 1];
      setParentBackingInfo(parentBacking, nextDatastorePathList);
    }
    parentBacking.setFileName(parentDatastorePathList[0].first());

    backingInfo.setParent(parentBacking);
  }
View Full Code Here

    diskSpec.setDevice(vd);
    vd.setKey(0);
    vd.setUnitNumber(0);
    vd.setControllerKey(cKey);

    VirtualDiskFlatVer2BackingInfo diskfileBacking =
        new VirtualDiskFlatVer2BackingInfo();
    String fileName = "["+ dsName +"]";
    diskfileBacking.setFileName(fileName);
    diskfileBacking.setDiskMode(diskMode);
    diskfileBacking.setThinProvisioned(true);
    vd.setBacking(diskfileBacking);
    return diskSpec;
  }
View Full Code Here

    VirtualDeviceConfigSpec diskSpec = new VirtualDeviceConfigSpec();     
    VirtualMachineConfigInfo vmConfig = (VirtualMachineConfigInfo)vm.getConfig();
    VirtualDevice[] vds = vmConfig.getHardware().getDevice();
   
    VirtualDisk disk =  new VirtualDisk();
    VirtualDiskFlatVer2BackingInfo diskfileBacking = new VirtualDiskFlatVer2BackingInfo();
   
    int key = 0;
    int unitNumber = 0;
    for(int k=0;k<vds.length;k++)
    {
      if(vds[k].getDeviceInfo().getLabel().equalsIgnoreCase("SCSI Controller 0"))
      {
        key = vds[k].getKey();
      }
    }

    unitNumber = vds.length + 1; //***********************seems NOT correct!!!
    String dsName = getFreeDatastoreName(vm, diskSize);
    if(dsName==null)
    {
      return null;
    }
    String fileName = "["+ dsName +"] "+ vm.getName() + "/" + diskName + ".vmdk";

    diskfileBacking.setFileName(fileName);
    diskfileBacking.setDiskMode(diskMode);

    disk.setControllerKey(key);
    disk.setUnitNumber(unitNumber);
    disk.setBacking(diskfileBacking);
    disk.setCapacityInKB(1024 * diskSize);
 
View Full Code Here

    VirtualDisk newDisk = new VirtualDisk();
    if(diskType == VirtualDiskType.THIN || diskType == VirtualDiskType.PREALLOCATED
      || diskType == VirtualDiskType.EAGER_ZEROED_THICK) {

      VirtualDiskFlatVer2BackingInfo backingInfo = new VirtualDiskFlatVer2BackingInfo();
          backingInfo.setDiskMode(diskMode.PERSISTENT.value());
          if(diskType == VirtualDiskType.THIN) {
                backingInfo.setThinProvisioned(true);
            } else {
                backingInfo.setThinProvisioned(false);
            }

          if(diskType == VirtualDiskType.EAGER_ZEROED_THICK) {
                backingInfo.setEagerlyScrub(true);
            } else {
                backingInfo.setEagerlyScrub(false);
            }

          backingInfo.setDatastore(morDs);
          backingInfo.setFileName(vmdkDatastorePath);
          newDisk.setBacking(backingInfo);
    } else if(diskType == VirtualDiskType.RDM || diskType == VirtualDiskType.RDMP) {
      VirtualDiskRawDiskMappingVer1BackingInfo backingInfo =
        new VirtualDiskRawDiskMappingVer1BackingInfo();
      if(diskType == VirtualDiskType.RDM) {
        backingInfo.setCompatibilityMode("virtualMode");
          } else {
            backingInfo.setCompatibilityMode("physicalMode");
          }
          backingInfo.setDeviceName(rdmDeviceName);
          if(diskType == VirtualDiskType.RDM) {
            backingInfo.setDiskMode(diskMode.PERSISTENT.value());
          }

          backingInfo.setDatastore(morDs);
          backingInfo.setFileName(vmdkDatastorePath);
          newDisk.setBacking(backingInfo);
    }

    int deviceNumber = getNextDeviceNumber(controllerKey);
    if(controllerKey != ideControllerKey && VmwareHelper.isReservedScsiDeviceNumber(deviceNumber))
View Full Code Here

    public String getVmdkFileBaseName(VirtualDisk disk) throws Exception {
        String vmdkFileBaseName = null;
        VirtualDeviceBackingInfo backingInfo = disk.getBacking();
        if(backingInfo instanceof VirtualDiskFlatVer2BackingInfo) {
            VirtualDiskFlatVer2BackingInfo diskBackingInfo = (VirtualDiskFlatVer2BackingInfo)backingInfo;
            DatastoreFile dsBackingFile = new DatastoreFile(diskBackingInfo.getFileName());
            vmdkFileBaseName = dsBackingFile.getFileBaseName();
        }
        return vmdkFileBaseName;
    }
View Full Code Here

        if(device instanceof VirtualDisk) {
          s_logger.info("Test against disk device, controller key: " + device.getControllerKey() + ", unit number: " + device.getUnitNumber());

          VirtualDeviceBackingInfo backingInfo = ((VirtualDisk)device).getBacking();
          if(backingInfo instanceof VirtualDiskFlatVer2BackingInfo) {
            VirtualDiskFlatVer2BackingInfo diskBackingInfo = (VirtualDiskFlatVer2BackingInfo)backingInfo;
            do {
              s_logger.info("Test against disk backing : " + diskBackingInfo.getFileName());

              DatastoreFile dsBackingFile = new DatastoreFile(diskBackingInfo.getFileName());
              String backingBaseName = dsBackingFile.getFileBaseName();
              if(matchExactly) {
                if(backingBaseName .equalsIgnoreCase(srcBaseName)) {
                  String deviceNumbering = getDeviceBusName(devices, device);

                  s_logger.info("Disk backing : " + diskBackingInfo.getFileName() + " matches ==> " + deviceNumbering);
                  return new Pair<VirtualDisk, String>((VirtualDisk)device, deviceNumbering);
                }
              } else {
                if(backingBaseName.contains(srcBaseName)) {
                  String deviceNumbering = getDeviceBusName(devices, device);

                  s_logger.info("Disk backing : " + diskBackingInfo.getFileName() + " matches ==> " + deviceNumbering);
                  return new Pair<VirtualDisk, String>((VirtualDisk)device, deviceNumbering);
                }
              }

              diskBackingInfo = diskBackingInfo.getParent();
            } while(diskBackingInfo != null);
          }
        }
      }
    }
View Full Code Here

        if(device instanceof VirtualDisk) {
          s_logger.info("Test against disk device, controller key: " + device.getControllerKey() + ", unit number: " + device.getUnitNumber());

          VirtualDeviceBackingInfo backingInfo = ((VirtualDisk)device).getBacking();
          if(backingInfo instanceof VirtualDiskFlatVer2BackingInfo) {
            VirtualDiskFlatVer2BackingInfo diskBackingInfo = (VirtualDiskFlatVer2BackingInfo)backingInfo;
           
            String deviceNumbering = getDeviceBusName(devices, device);
            if(deviceNumbering.equals(deviceBusName))
              return diskBackingInfo.getFileName();
          }
        }
      }
    }
View Full Code Here

TOP

Related Classes of com.vmware.vim25.VirtualDiskFlatVer2BackingInfo

Copyright © 2018 www.massapicom. 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.