本文整理汇总了Java中com.vmware.vim25.VirtualMachineSnapshotTree类的典型用法代码示例。如果您正苦于以下问题:Java VirtualMachineSnapshotTree类的具体用法?Java VirtualMachineSnapshotTree怎么用?Java VirtualMachineSnapshotTree使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
VirtualMachineSnapshotTree类属于com.vmware.vim25包,在下文中一共展示了VirtualMachineSnapshotTree类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: searchSnapshot
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
private static ManagedObjectReference searchSnapshot(
List<VirtualMachineSnapshotTree> tree, String id) {
if (tree == null) {
return null;
}
for (VirtualMachineSnapshotTree snapshot : tree) {
if (snapshot.getSnapshot().getValue().equals(id)) {
return snapshot.getSnapshot();
}
ManagedObjectReference mor = searchSnapshot(
snapshot.getChildSnapshotList(), id);
if (mor != null) {
return mor;
}
}
return null;
}
示例2: processSnapshot
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
private void processSnapshot(VirtualMachineSnapshotTree current, String parentLink,
EnumerationProgress enumerationProgress,
VmOverlay vm, String vmSelfLink) {
QueryTask task = queryForSnapshot(enumerationProgress, current.getId().toString(),
vmSelfLink);
withTaskResults(task, (ServiceDocumentQueryResult result) -> {
SnapshotState snapshotState = constructSnapshot(current, parentLink, vmSelfLink,
enumerationProgress, vm);
if (result.documentLinks.isEmpty()) {
createSnapshot(snapshotState)
.thenCompose(createdSnapshotState ->
trackAndProcessChildSnapshots(current, enumerationProgress, vm, vmSelfLink,
createdSnapshotState));
} else {
SnapshotState oldState = convertOnlyResultToDocument(result, SnapshotState.class);
updateSnapshot(enumerationProgress, vm, oldState, snapshotState, current.getId().toString())
.thenCompose(updatedSnapshotState ->
trackAndProcessChildSnapshots(current, enumerationProgress, vm, vmSelfLink,
updatedSnapshotState));
}
enumerationProgress.getSnapshotTracker().arrive();
});
}
示例3: getSnapshotInTree
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
static VirtualMachineSnapshot getSnapshotInTree(
VirtualMachine vm, String snapName)
{
if (vm == null || snapName == null)
{
return null;
}
VirtualMachineSnapshotTree[] snapTree =
vm.getSnapshot().getRootSnapshotList();
if(snapTree!=null)
{
ManagedObjectReference mor = findSnapshotInTree(
snapTree, snapName);
if(mor!=null)
{
return new VirtualMachineSnapshot(
vm.getServerConnection(), mor);
}
}
return null;
}
示例4: removeAllSnapshots
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
public boolean removeAllSnapshots() throws Exception {
VirtualMachineSnapshotInfo snapshotInfo = getSnapshotInfo();
if (snapshotInfo != null && snapshotInfo.getRootSnapshotList() != null) {
List<VirtualMachineSnapshotTree> tree = snapshotInfo.getRootSnapshotList();
for (VirtualMachineSnapshotTree treeNode : tree) {
ManagedObjectReference morTask = _context.getService().removeSnapshotTask(treeNode.getSnapshot(), true, true);
boolean result = _context.getVimClient().waitForTask(morTask);
if (result) {
_context.waitForTaskProgressDone(morTask);
} else {
s_logger.error("VMware removeSnapshot_Task failed due to " + TaskMO.getTaskFailureInfo(_context, morTask));
return false;
}
}
}
return true;
}
示例5: findSnapshotInTree
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
public static ManagedObjectReference findSnapshotInTree(List<VirtualMachineSnapshotTree> snapTree, String findName) {
assert (findName != null);
ManagedObjectReference snapMor = null;
if (snapTree == null)
return snapMor;
for (int i = 0; i < snapTree.size() && snapMor == null; i++) {
VirtualMachineSnapshotTree node = snapTree.get(i);
if (node.getName().equals(findName)) {
snapMor = node.getSnapshot();
} else {
List<VirtualMachineSnapshotTree> childTree = node.getChildSnapshotList();
snapMor = findSnapshotInTree(childTree, findName);
}
}
return snapMor;
}
示例6: removeVirtualMachineSnapshot
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
public void removeVirtualMachineSnapshot(VirtualMachine vm, String nameVm) throws Exception {
logger.info("Launching old snapshot removing process for {}", nameVm);
if(vm.getSnapshot() != null) {
logger.info("Deleting snapshot ...");
VirtualMachineSnapshotTree[] _stree = vm.getSnapshot().getRootSnapshotList();
if(_stree != null) {
for(VirtualMachineSnapshotTree _st : _stree) {
if(_st.getName().equals(nameVm)) {
logger.info("Old snahpot {} found");
VirtualMachineSnapshot _vmsSnap = new VirtualMachineSnapshot(vm.getServerConnection(), _st.getSnapshot());
Task _taskSnap = _vmsSnap.removeSnapshot_Task(true);
logger.info("Removing process launched...");
if(_taskSnap.waitForTask() != Task.SUCCESS) {
logger.error("Error on snapshot removing process. {}",_taskSnap.getTaskInfo().getError().getLocalizedMessage());
throw new Exception(_taskSnap.getTaskInfo().getError().getLocalizedMessage());
}
logger.info("Snapshot removed successfully");
}
}
}
}
}
示例7: getRootSnapshotList
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
public List<VirtualMachineSnapshotTree> getRootSnapshotList() {
ArrayOfVirtualMachineSnapshotTree arrayOfVirtualMachineSnapshotTree = (ArrayOfVirtualMachineSnapshotTree) getOrDefault(
VimPath.vm_snapshot_rootSnapshotList, null);
if (arrayOfVirtualMachineSnapshotTree != null) {
return arrayOfVirtualMachineSnapshotTree.getVirtualMachineSnapshotTree();
}
return null;
}
示例8: processSnapshots
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
private void processSnapshots(EnumerationProgress enumerationProgress, VmOverlay vm,
String vmSelfLink) {
if (vmSelfLink != null) {
List<VirtualMachineSnapshotTree> rootSnapshotList = vm.getRootSnapshotList();
if (rootSnapshotList != null) {
enumerationProgress.getSnapshotTracker().register();
for (VirtualMachineSnapshotTree snapshotTree : rootSnapshotList) {
processSnapshot(snapshotTree, null, enumerationProgress, vm,
vmSelfLink);
}
}
}
}
示例9: trackAndProcessChildSnapshots
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
private DeferredResult<Object> trackAndProcessChildSnapshots(VirtualMachineSnapshotTree current,
EnumerationProgress enumerationProgress,
VmOverlay vm, String vmSelfLink, SnapshotState updatedSnapshotState) {
trackSnapshot(enumerationProgress, vm);
List<VirtualMachineSnapshotTree> childSnapshotList = current.getChildSnapshotList();
if (!CollectionUtils.isEmpty(childSnapshotList)) {
for (VirtualMachineSnapshotTree childSnapshot : childSnapshotList) {
enumerationProgress.getSnapshotTracker().register();
processSnapshot(childSnapshot, updatedSnapshotState.documentSelfLink,
enumerationProgress, vm, vmSelfLink);
}
}
return DeferredResult.completed(null);
}
示例10: constructSnapshot
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
private SnapshotState constructSnapshot(VirtualMachineSnapshotTree current, String parentLink,
String vmSelfLink, EnumerationProgress enumerationProgress,
VmOverlay vm) {
SnapshotState snapshot = new SnapshotState();
snapshot.computeLink = vmSelfLink;
snapshot.parentLink = parentLink;
snapshot.description = current.getDescription();
//TODO how to determine if the snapshot is current
//snapshot.isCurrent = current.isQuiesced()
snapshot.creationTimeMicros = current.getCreateTime().toGregorianCalendar().getTimeInMillis();
//TODO How to fetch custom properties
//snapshot.customProperties = current.get
//TODO what are snapshot grouplinks
//snapshot.groupLinks
snapshot.name = current.getName();
snapshot.regionId = enumerationProgress.getRegionId();
snapshot.id = current.getId().toString();
populateTags(enumerationProgress, vm, snapshot);
snapshot.tenantLinks = enumerationProgress.getTenantLinks();
if (snapshot.endpointLinks == null) {
snapshot.endpointLinks = new HashSet<String>();
}
snapshot.endpointLinks.add(enumerationProgress.getRequest().endpointLink);
CustomProperties.of(snapshot)
.put(CustomProperties.MOREF, VimUtils.convertMoRefToString(current.getSnapshot()))
.put(CustomProperties.TYPE, current.getSnapshot().getType());
return snapshot;
}
示例11: findSnapshotInTree
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
static ManagedObjectReference findSnapshotInTree(
VirtualMachineSnapshotTree[] snapTree, String snapName)
{
for(int i=0; i <snapTree.length; i++)
{
VirtualMachineSnapshotTree node = snapTree[i];
if(snapName.equals(node.getName()))
{
return node.getSnapshot();
}
else
{
VirtualMachineSnapshotTree[] childTree =
node.getChildSnapshotList();
if(childTree!=null)
{
ManagedObjectReference mor = findSnapshotInTree(
childTree, snapName);
if(mor!=null)
{
return mor;
}
}
}
}
return null;
}
示例12: listSnapshots
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
static void listSnapshots(VirtualMachine vm)
{
if(vm==null)
{
return;
}
VirtualMachineSnapshotInfo snapInfo = vm.getSnapshot();
VirtualMachineSnapshotTree[] snapTree =
snapInfo.getRootSnapshotList();
printSnapshots(snapTree);
}
示例13: printSnapshots
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
static void printSnapshots(
VirtualMachineSnapshotTree[] snapTree)
{
for (int i = 0; snapTree!=null && i < snapTree.length; i++)
{
VirtualMachineSnapshotTree node = snapTree[i];
System.out.println("Snapshot Name : " + node.getName());
VirtualMachineSnapshotTree[] childTree =
node.getChildSnapshotList();
if(childTree!=null)
{
printSnapshots(childTree);
}
}
}
示例14: getSnapshotMor
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
public ManagedObjectReference getSnapshotMor(String snapshotName) throws Exception {
VirtualMachineSnapshotInfo info = getSnapshotInfo();
if (info != null) {
List<VirtualMachineSnapshotTree> snapTree = info.getRootSnapshotList();
return VmwareHelper.findSnapshotInTree(snapTree, snapshotName);
}
return null;
}
示例15: hasSnapshot
import com.vmware.vim25.VirtualMachineSnapshotTree; //导入依赖的package包/类
public boolean hasSnapshot() throws Exception {
VirtualMachineSnapshotInfo info = getSnapshotInfo();
if (info != null) {
ManagedObjectReference currentSnapshot = info.getCurrentSnapshot();
if (currentSnapshot != null) {
return true;
}
List<VirtualMachineSnapshotTree> rootSnapshotList = info.getRootSnapshotList();
if (rootSnapshotList != null && rootSnapshotList.size() > 0) {
return true;
}
}
return false;
}