This is an automated email from the ASF dual-hosted git repository.
weizhou pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/main by this push:
new ca0c3530ad0 utils: add UuidUtils.nameUUIDFromBytes (#11136)
ca0c3530ad0 is described below
commit ca0c3530ad0c47fe7a21b4ed1f0590463c318c16
Author: Wei Zhou <[email protected]>
AuthorDate: Mon Sep 1 08:10:31 2025 +0200
utils: add UuidUtils.nameUUIDFromBytes (#11136)
* utils: add UuidUtils.nameUUIDFromBytes
* Fix PR 13922
---
.../java/com/cloud/agent/resource/DummyResource.java | 4 ++--
.../com/cloud/agent/api/DeleteStoragePoolCommand.java | 4 ++--
.../com/cloud/agent/api/ModifyStoragePoolCommand.java | 6 +++---
.../src/main/java/com/cloud/storage/VMTemplateVO.java | 3 ++-
.../apache/cloudstack/storage/test/SnapshotTest.java | 3 ++-
.../cloudstack/storage/test/VolumeServiceTest.java | 5 +++--
.../cloudstack/storage/test/VolumeTestVmware.java | 3 ++-
.../cloudstack/mom/rabbitmq/RabbitMQEventBus.java | 3 ++-
.../cloud/baremetal/manager/BareMetalDiscoverer.java | 3 ++-
.../external/discoverer/ExternalServerDiscoverer.java | 3 ++-
.../hyperv/discoverer/HypervServerDiscoverer.java | 8 ++++----
.../kvm/resource/LibvirtComputingResource.java | 2 +-
.../hypervisor/kvm/storage/KVMStoragePoolManager.java | 4 ++--
.../java/com/cloud/ovm/hypervisor/OvmDiscoverer.java | 3 ++-
.../java/com/cloud/ovm/hypervisor/OvmResourceBase.java | 4 ++--
.../com/cloud/hypervisor/ovm3/objects/OvmObject.java | 3 ++-
.../cloud/hypervisor/ovm3/resources/Ovm3Discoverer.java | 3 ++-
.../ovm3/resources/Ovm3HypervisorResource.java | 4 ++--
.../java/com/cloud/hypervisor/ovm3/objects/XenTest.java | 5 ++---
.../com/cloud/agent/manager/MockStorageManagerImpl.java | 3 ++-
.../cloud/hypervisor/vmware/VmwareServerDiscoverer.java | 4 ++--
.../vmware/manager/VmwareStorageManagerImpl.java | 3 ++-
.../hypervisor/vmware/resource/VmwareResource.java | 5 +++--
.../cloud/storage/resource/VmwareStorageProcessor.java | 7 ++++---
.../xenserver/resource/CitrixResourceBase.java | 9 +++++----
.../xenserver/resource/XenServerStorageProcessor.java | 3 ++-
.../resource/Xenserver625StorageProcessor.java | 17 +++++++++--------
.../resource/Xenserver625StorageProcessorTest.java | 8 ++++----
.../CloudStackPrimaryDataStoreLifeCycleImpl.java | 3 ++-
.../cloud/configuration/ConfigurationManagerImpl.java | 4 ++--
.../kvm/discoverer/LibvirtServerDiscoverer.java | 6 +++---
server/src/main/java/com/cloud/test/DatabaseConfig.java | 3 ++-
.../main/java/com/cloud/user/AccountManagerImpl.java | 3 ++-
.../storage/resource/NfsSecondaryStorageResource.java | 7 ++++---
.../storage/template/DownloadManagerImpl.java | 3 ++-
utils/src/main/java/com/cloud/utils/UuidUtils.java | 7 +++++++
.../hypervisor/vmware/mo/HypervisorHostHelper.java | 3 ++-
37 files changed, 100 insertions(+), 71 deletions(-)
diff --git a/agent/src/main/java/com/cloud/agent/resource/DummyResource.java
b/agent/src/main/java/com/cloud/agent/resource/DummyResource.java
index fe519ca9497..4002e53b585 100644
--- a/agent/src/main/java/com/cloud/agent/resource/DummyResource.java
+++ b/agent/src/main/java/com/cloud/agent/resource/DummyResource.java
@@ -20,7 +20,6 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.UUID;
import com.cloud.agent.IAgentControl;
import com.cloud.agent.api.Answer;
@@ -40,6 +39,7 @@ import com.cloud.resource.ServerResource;
import com.cloud.storage.Storage;
import com.cloud.storage.Storage.StoragePoolType;
import com.cloud.utils.StringUtils;
+import com.cloud.utils.UuidUtils;
public class DummyResource implements ServerResource {
String _name;
@@ -133,7 +133,7 @@ public class DummyResource implements ServerResource {
String hostIp = getConfiguredProperty("private.ip.address",
"127.0.0.1");
String localStoragePath = getConfiguredProperty("local.storage.path",
"/mnt");
String lh = hostIp + localStoragePath;
- String uuid =
UUID.nameUUIDFromBytes(lh.getBytes(StringUtils.getPreferredCharset())).toString();
+ String uuid =
UuidUtils.nameUUIDFromBytes(lh.getBytes(StringUtils.getPreferredCharset())).toString();
String capacity = getConfiguredProperty("local.storage.capacity",
"1000000000");
String available = getConfiguredProperty("local.storage.avail",
"10000000");
diff --git
a/core/src/main/java/com/cloud/agent/api/DeleteStoragePoolCommand.java
b/core/src/main/java/com/cloud/agent/api/DeleteStoragePoolCommand.java
index 969dd2eb801..84ca39f1546 100644
--- a/core/src/main/java/com/cloud/agent/api/DeleteStoragePoolCommand.java
+++ b/core/src/main/java/com/cloud/agent/api/DeleteStoragePoolCommand.java
@@ -21,10 +21,10 @@ package com.cloud.agent.api;
import java.io.File;
import java.util.Map;
-import java.util.UUID;
import com.cloud.agent.api.to.StorageFilerTO;
import com.cloud.storage.StoragePool;
+import com.cloud.utils.UuidUtils;
public class DeleteStoragePoolCommand extends Command {
public static final String DATASTORE_NAME = "datastoreName";
@@ -49,7 +49,7 @@ public class DeleteStoragePoolCommand extends Command {
}
public DeleteStoragePoolCommand(StoragePool pool) {
- this(pool, LOCAL_PATH_PREFIX + File.separator +
UUID.nameUUIDFromBytes((pool.getHostAddress() + pool.getPath()).getBytes()));
+ this(pool, LOCAL_PATH_PREFIX + File.separator +
UuidUtils.nameUUIDFromBytes((pool.getHostAddress() +
pool.getPath()).getBytes()));
}
public void setPool(StoragePool pool) {
diff --git
a/core/src/main/java/com/cloud/agent/api/ModifyStoragePoolCommand.java
b/core/src/main/java/com/cloud/agent/api/ModifyStoragePoolCommand.java
index 06940266b53..a72000d7399 100644
--- a/core/src/main/java/com/cloud/agent/api/ModifyStoragePoolCommand.java
+++ b/core/src/main/java/com/cloud/agent/api/ModifyStoragePoolCommand.java
@@ -21,10 +21,10 @@ package com.cloud.agent.api;
import java.io.File;
import java.util.Map;
-import java.util.UUID;
import com.cloud.agent.api.to.StorageFilerTO;
import com.cloud.storage.StoragePool;
+import com.cloud.utils.UuidUtils;
public class ModifyStoragePoolCommand extends Command {
public static final String LOCAL_PATH_PREFIX = "/mnt/";
@@ -47,11 +47,11 @@ public class ModifyStoragePoolCommand extends Command {
}
public ModifyStoragePoolCommand(boolean add, StoragePool pool, Map<String,
String> details) {
- this(add, pool, LOCAL_PATH_PREFIX + File.separator +
UUID.nameUUIDFromBytes((pool.getHostAddress() + pool.getPath()).getBytes()),
details);
+ this(add, pool, LOCAL_PATH_PREFIX + File.separator +
UuidUtils.nameUUIDFromBytes((pool.getHostAddress() +
pool.getPath()).getBytes()), details);
}
public ModifyStoragePoolCommand(boolean add, StoragePool pool) {
- this(add, pool, LOCAL_PATH_PREFIX + File.separator +
UUID.nameUUIDFromBytes((pool.getHostAddress() + pool.getPath()).getBytes()));
+ this(add, pool, LOCAL_PATH_PREFIX + File.separator +
UuidUtils.nameUUIDFromBytes((pool.getHostAddress() +
pool.getPath()).getBytes()));
}
public boolean getAdd() {
diff --git a/engine/schema/src/main/java/com/cloud/storage/VMTemplateVO.java
b/engine/schema/src/main/java/com/cloud/storage/VMTemplateVO.java
index 3486bac010e..88d3b7ba2d8 100644
--- a/engine/schema/src/main/java/com/cloud/storage/VMTemplateVO.java
+++ b/engine/schema/src/main/java/com/cloud/storage/VMTemplateVO.java
@@ -34,6 +34,7 @@ import javax.persistence.Transient;
import com.cloud.cpu.CPU;
import com.cloud.user.UserData;
+import com.cloud.utils.UuidUtils;
import org.apache.cloudstack.util.CPUArchConverter;
import org.apache.cloudstack.util.HypervisorTypeConverter;
import
org.apache.cloudstack.utils.reflectiontostringbuilderutils.ReflectionToStringBuilderUtils;
@@ -344,7 +345,7 @@ public class VMTemplateVO implements VirtualMachineTemplate
{
name.append("-");
name.append(userId);
name.append("-");
- name.append(UUID.nameUUIDFromBytes((displayName +
System.currentTimeMillis()).getBytes()).toString());
+ name.append(UuidUtils.nameUUIDFromBytes((displayName +
System.currentTimeMillis()).getBytes()).toString());
return name.toString();
}
diff --git
a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTest.java
b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTest.java
index 0185c0d1934..f07866c8353 100644
---
a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTest.java
+++
b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTest.java
@@ -100,6 +100,7 @@ import com.cloud.storage.VolumeVO;
import com.cloud.storage.dao.SnapshotDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VolumeDao;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.component.ComponentContext;
import junit.framework.Assert;
@@ -287,7 +288,7 @@ public class SnapshotTest extends CloudStackTestNGBase {
public DataStore createPrimaryDataStore() {
try {
- String uuid =
UUID.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString();
+ String uuid =
UuidUtils.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString();
List<StoragePoolVO> pools =
primaryDataStoreDao.findPoolByName(this.primaryName);
if (pools.size() > 0) {
return
this.dataStoreMgr.getPrimaryDataStore(pools.get(0).getId());
diff --git
a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeServiceTest.java
b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeServiceTest.java
index 5ed0cc3f1fa..c478e2e7c63 100644
---
a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeServiceTest.java
+++
b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeServiceTest.java
@@ -82,6 +82,7 @@ import com.cloud.storage.Volume;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VolumeDao;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.component.ComponentContext;
@ContextConfiguration(locations = {"classpath:/storageContext.xml"})
@@ -281,7 +282,7 @@ public class VolumeServiceTest extends CloudStackTestNGBase
{
params.put("name", this.primaryName);
params.put("port", "1");
params.put("roles", DataStoreRole.Primary.toString());
- params.put("uuid",
UUID.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString());
+ params.put("uuid",
UuidUtils.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString());
params.put("providerName", String.valueOf(provider.getName()));
DataStoreLifeCycle lifeCycle = provider.getDataStoreLifeCycle();
@@ -324,7 +325,7 @@ public class VolumeServiceTest extends CloudStackTestNGBase
{
params.put("name", this.primaryName);
params.put("port", "1");
params.put("roles", DataStoreRole.Primary.toString());
- params.put("uuid",
UUID.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString());
+ params.put("uuid",
UuidUtils.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString());
params.put("providerName", String.valueOf(provider.getName()));
DataStoreLifeCycle lifeCycle = provider.getDataStoreLifeCycle();
diff --git
a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTestVmware.java
b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTestVmware.java
index 98af170356f..c0f43da122b 100644
---
a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTestVmware.java
+++
b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTestVmware.java
@@ -86,6 +86,7 @@ import com.cloud.storage.Volume;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VolumeDao;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.component.ComponentContext;
@ContextConfiguration(locations = {"classpath:/storageContext.xml"})
@@ -264,7 +265,7 @@ public class VolumeTestVmware extends CloudStackTestNGBase {
public DataStore createPrimaryDataStore() {
try {
- String uuid =
UUID.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString();
+ String uuid =
UuidUtils.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString();
List<StoragePoolVO> pools =
primaryDataStoreDao.findPoolByName(this.primaryName);
if (pools.size() > 0) {
return
this.dataStoreMgr.getPrimaryDataStore(pools.get(0).getId());
diff --git
a/plugins/event-bus/rabbitmq/src/main/java/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
b/plugins/event-bus/rabbitmq/src/main/java/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
index e8067e75b40..224e49f91a3 100644
---
a/plugins/event-bus/rabbitmq/src/main/java/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
+++
b/plugins/event-bus/rabbitmq/src/main/java/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
@@ -32,6 +32,7 @@ import java.util.concurrent.TimeoutException;
import javax.naming.ConfigurationException;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.rabbitmq.client.BlockedListener;
@@ -254,7 +255,7 @@ public class RabbitMQEventBus extends ManagerBase
implements EventBus {
logger.debug("unsubscribing '{}'", subscriberId);
try {
String classname = subscriber.getClass().getName();
- String queueName =
UUID.nameUUIDFromBytes(classname.getBytes()).toString();
+ String queueName =
UuidUtils.nameUUIDFromBytes(classname.getBytes()).toString();
Ternary<String, Channel, EventSubscriber> queueDetails =
s_subscribers.get(queueName);
Channel channel = queueDetails.second();
channel.basicCancel(queueName);
diff --git
a/plugins/hypervisors/baremetal/src/main/java/com/cloud/baremetal/manager/BareMetalDiscoverer.java
b/plugins/hypervisors/baremetal/src/main/java/com/cloud/baremetal/manager/BareMetalDiscoverer.java
index f918f66941e..f12d701d2e2 100644
---
a/plugins/hypervisors/baremetal/src/main/java/com/cloud/baremetal/manager/BareMetalDiscoverer.java
+++
b/plugins/hypervisors/baremetal/src/main/java/com/cloud/baremetal/manager/BareMetalDiscoverer.java
@@ -51,6 +51,7 @@ import com.cloud.resource.DiscovererBase;
import com.cloud.resource.ResourceStateAdapter;
import com.cloud.resource.ServerResource;
import com.cloud.resource.UnableDeleteHostException;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.script.Script;
import com.cloud.utils.script.Script2;
@@ -121,7 +122,7 @@ public class BareMetalDiscoverer extends DiscovererBase
implements Discoverer, R
String hostname = url.getHost();
InetAddress ia = InetAddress.getByName(hostname);
String ipmiIp = ia.getHostAddress();
- String guid = UUID.nameUUIDFromBytes(ipmiIp.getBytes()).toString();
+ String guid =
UuidUtils.nameUUIDFromBytes(ipmiIp.getBytes()).toString();
String injectScript = "scripts/util/ipmi.py";
String scriptPath = Script.findScript("", injectScript);
diff --git
a/plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/discoverer/ExternalServerDiscoverer.java
b/plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/discoverer/ExternalServerDiscoverer.java
index 643a29fe3ee..fd7b15dc5e5 100644
---
a/plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/discoverer/ExternalServerDiscoverer.java
+++
b/plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/discoverer/ExternalServerDiscoverer.java
@@ -54,6 +54,7 @@ import com.cloud.resource.DiscovererBase;
import com.cloud.resource.ResourceStateAdapter;
import com.cloud.resource.ServerResource;
import com.cloud.resource.UnableDeleteHostException;
+import com.cloud.utils.UuidUtils;
public class ExternalServerDiscoverer extends DiscovererBase implements
Discoverer, Listener, ResourceStateAdapter {
@@ -133,7 +134,7 @@ public class ExternalServerDiscoverer extends
DiscovererBase implements Discover
}
protected String getResourceGuidFromName(String name) {
- return "External:" + UUID.nameUUIDFromBytes(name.getBytes());
+ return "External:" + UuidUtils.nameUUIDFromBytes(name.getBytes());
}
protected void addExtensionDataToResourceParams(ExtensionVO extension,
Map<String, Object> params) {
diff --git
a/plugins/hypervisors/hyperv/src/main/java/com/cloud/hypervisor/hyperv/discoverer/HypervServerDiscoverer.java
b/plugins/hypervisors/hyperv/src/main/java/com/cloud/hypervisor/hyperv/discoverer/HypervServerDiscoverer.java
index a5947238bf6..a5fe1442e56 100644
---
a/plugins/hypervisors/hyperv/src/main/java/com/cloud/hypervisor/hyperv/discoverer/HypervServerDiscoverer.java
+++
b/plugins/hypervisors/hyperv/src/main/java/com/cloud/hypervisor/hyperv/discoverer/HypervServerDiscoverer.java
@@ -24,7 +24,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
-import java.util.UUID;
import javax.inject.Inject;
import javax.naming.ConfigurationException;
@@ -64,6 +63,7 @@ import com.cloud.resource.ResourceStateAdapter;
import com.cloud.resource.ServerResource;
import com.cloud.resource.UnableDeleteHostException;
import com.cloud.storage.StorageLayer;
+import com.cloud.utils.UuidUtils;
/**
* Methods to discover and managem a Hyper-V agent. Prepares a
@@ -264,7 +264,7 @@ public class HypervServerDiscoverer extends DiscovererBase
implements Discoverer
// pool in the database
// This GUID may change.
if (cluster.getGuid() == null) {
-
cluster.setGuid(UUID.nameUUIDFromBytes(String.valueOf(clusterId).getBytes(Charset.forName("UTF-8"))).toString());
+
cluster.setGuid(UuidUtils.nameUUIDFromBytes(String.valueOf(clusterId).getBytes(Charset.forName("UTF-8"))).toString());
_clusterDao.update(clusterId, cluster);
}
@@ -322,7 +322,7 @@ public class HypervServerDiscoverer extends DiscovererBase
implements Discoverer
/**
* Encapsulate GUID calculation in public method to allow access to test
* programs. Works by converting a string to a GUID using
- * UUID.nameUUIDFromBytes
+ * UuidUtils.nameUUIDFromBytes
*
* @param uuidSeed
* string to use to generate GUID
@@ -330,7 +330,7 @@ public class HypervServerDiscoverer extends DiscovererBase
implements Discoverer
* @return GUID in form of a string.
*/
public static String calcServerResourceGuid(final String uuidSeed) {
- String guid =
UUID.nameUUIDFromBytes(uuidSeed.getBytes(Charset.forName("UTF-8"))).toString();
+ String guid =
UuidUtils.nameUUIDFromBytes(uuidSeed.getBytes(Charset.forName("UTF-8"))).toString();
return guid;
}
diff --git
a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java
b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java
index 9fd33c7284c..096ec26e878 100644
---
a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java
+++
b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java
@@ -6096,7 +6096,7 @@ public class LibvirtComputingResource extends
ServerResourceBase implements Serv
}
public static String generateSecretUUIDFromString(String seed) {
- return UUID.nameUUIDFromBytes(seed.getBytes()).toString();
+ return UuidUtils.nameUUIDFromBytes(seed.getBytes()).toString();
}
/**
diff --git
a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java
b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java
index bf9cc30d55d..0bb72fd14ca 100644
---
a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java
+++
b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java
@@ -25,7 +25,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
import org.apache.cloudstack.storage.to.PrimaryDataStoreTO;
@@ -47,6 +46,7 @@ import com.cloud.storage.StorageLayer;
import com.cloud.storage.Volume;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.vm.VirtualMachine;
@@ -331,7 +331,7 @@ public class KVMStoragePoolManager {
sourcePath = storageUri.getPath();
sourcePath = sourcePath.replace("//", "/");
sourceHost = storageUri.getHost();
- uuid = UUID.nameUUIDFromBytes(new String(sourceHost +
sourcePath).getBytes()).toString();
+ uuid = UuidUtils.nameUUIDFromBytes(new String(sourceHost +
sourcePath).getBytes()).toString();
protocol = scheme.equals("filesystem") ? StoragePoolType.Filesystem:
StoragePoolType.NetworkFilesystem;
// storage registers itself through here
diff --git
a/plugins/hypervisors/ovm/src/main/java/com/cloud/ovm/hypervisor/OvmDiscoverer.java
b/plugins/hypervisors/ovm/src/main/java/com/cloud/ovm/hypervisor/OvmDiscoverer.java
index 82cb61d7a1f..7dfd98301d7 100644
---
a/plugins/hypervisors/ovm/src/main/java/com/cloud/ovm/hypervisor/OvmDiscoverer.java
+++
b/plugins/hypervisors/ovm/src/main/java/com/cloud/ovm/hypervisor/OvmDiscoverer.java
@@ -46,6 +46,7 @@ import com.cloud.resource.ResourceManager;
import com.cloud.resource.ResourceStateAdapter;
import com.cloud.resource.ServerResource;
import com.cloud.resource.UnableDeleteHostException;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.db.QueryBuilder;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.exception.CloudRuntimeException;
@@ -131,7 +132,7 @@ public class OvmDiscoverer extends DiscovererBase
implements Discoverer, Resourc
String hostname = url.getHost();
InetAddress ia = InetAddress.getByName(hostname);
String hostIp = ia.getHostAddress();
- String guid = UUID.nameUUIDFromBytes(hostIp.getBytes()).toString();
+ String guid =
UuidUtils.nameUUIDFromBytes(hostIp.getBytes()).toString();
if (checkIfExisted(guid)) {
throw new CloudRuntimeException("The host " + hostIp + " has
been added before");
diff --git
a/plugins/hypervisors/ovm/src/main/java/com/cloud/ovm/hypervisor/OvmResourceBase.java
b/plugins/hypervisors/ovm/src/main/java/com/cloud/ovm/hypervisor/OvmResourceBase.java
index 9d958a9894a..951741cbb59 100644
---
a/plugins/hypervisors/ovm/src/main/java/com/cloud/ovm/hypervisor/OvmResourceBase.java
+++
b/plugins/hypervisors/ovm/src/main/java/com/cloud/ovm/hypervisor/OvmResourceBase.java
@@ -24,7 +24,6 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
import javax.naming.ConfigurationException;
@@ -127,6 +126,7 @@ import com.cloud.storage.template.TemplateProp;
import com.cloud.template.VirtualMachineTemplate.BootloaderType;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.script.Script;
import com.cloud.utils.ssh.SSHCmdHelper;
@@ -507,7 +507,7 @@ public class OvmResourceBase implements ServerResource,
HypervisorResource {
vm.name = spec.getName();
vm.memory = spec.getMinRam();
vm.cpuNum = spec.getCpus();
- vm.uuid = UUID.nameUUIDFromBytes(spec.getName().getBytes()).toString();
+ vm.uuid =
UuidUtils.nameUUIDFromBytes(spec.getName().getBytes()).toString();
if (spec.getBootloader() == BootloaderType.CD) {
vm.bootDev = OvmVm.CD;
vm.type = OvmVm.HVM;
diff --git
a/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/objects/OvmObject.java
b/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/objects/OvmObject.java
index 3b7354c34c5..d98f3bb6d3f 100644
---
a/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/objects/OvmObject.java
+++
b/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/objects/OvmObject.java
@@ -35,6 +35,7 @@ import javax.xml.xpath.XPathExpression;
import javax.xml.xpath.XPathExpressionException;
import javax.xml.xpath.XPathFactory;
+import com.cloud.utils.UuidUtils;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
import org.apache.xmlrpc.XmlRpcException;
@@ -71,7 +72,7 @@ public class OvmObject {
/* generate a uuid */
public String newUuid(String str) {
- return
UUID.nameUUIDFromBytes(str.getBytes(Charset.defaultCharset())).toString();
+ return
UuidUtils.nameUUIDFromBytes(str.getBytes(Charset.defaultCharset())).toString();
}
/* capture most of the calls here */
diff --git
a/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/resources/Ovm3Discoverer.java
b/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/resources/Ovm3Discoverer.java
index 2305dbb6c26..52cc419ad2e 100755
---
a/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/resources/Ovm3Discoverer.java
+++
b/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/resources/Ovm3Discoverer.java
@@ -58,6 +58,7 @@ import com.cloud.resource.ResourceManager;
import com.cloud.resource.ResourceStateAdapter;
import com.cloud.resource.ServerResource;
import com.cloud.resource.UnableDeleteHostException;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.db.QueryBuilder;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.exception.CloudRuntimeException;
@@ -186,7 +187,7 @@ public class Ovm3Discoverer extends DiscovererBase
implements Discoverer,
InetAddress ia = InetAddress.getByName(hostname);
String hostIp = ia.getHostAddress();
- String guid = UUID.nameUUIDFromBytes(hostIp.getBytes("UTF8"))
+ String guid = UuidUtils.nameUUIDFromBytes(hostIp.getBytes("UTF8"))
.toString();
if (checkIfExisted(guid)) {
diff --git
a/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/resources/Ovm3HypervisorResource.java
b/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/resources/Ovm3HypervisorResource.java
index ba4304d349c..d01738ea086 100644
---
a/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/resources/Ovm3HypervisorResource.java
+++
b/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/resources/Ovm3HypervisorResource.java
@@ -19,7 +19,6 @@ package com.cloud.hypervisor.ovm3.resources;
import java.nio.charset.Charset;
import java.util.Map;
-import java.util.UUID;
import javax.inject.Inject;
import javax.naming.ConfigurationException;
@@ -95,6 +94,7 @@ import com.cloud.resource.hypervisor.HypervisorResource;
import com.cloud.storage.resource.StorageSubsystemCommandHandler;
import com.cloud.storage.resource.StorageSubsystemCommandHandlerBase;
import com.cloud.template.VirtualMachineTemplate.BootloaderType;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.vm.VirtualMachine;
import com.cloud.vm.VirtualMachine.State;
@@ -369,7 +369,7 @@ public class Ovm3HypervisorResource extends
ServerResourceBase implements Hyperv
vm.setVmCpus(vmSpec.getCpus());
/* in mb not in bytes */
vm.setVmMemory(vmSpec.getMinRam() / 1024 / 1024);
-
vm.setVmUuid(UUID.nameUUIDFromBytes(vmSpec.getName().getBytes(Charset.defaultCharset())).toString());
+
vm.setVmUuid(UuidUtils.nameUUIDFromBytes(vmSpec.getName().getBytes(Charset.defaultCharset())).toString());
vm.setVmName(vmName);
String domType = guesttypes.getOvm3GuestType(vmSpec.getOs());
diff --git
a/plugins/hypervisors/ovm3/src/test/java/com/cloud/hypervisor/ovm3/objects/XenTest.java
b/plugins/hypervisors/ovm3/src/test/java/com/cloud/hypervisor/ovm3/objects/XenTest.java
index c76f2feccdc..34f67df2d25 100644
---
a/plugins/hypervisors/ovm3/src/test/java/com/cloud/hypervisor/ovm3/objects/XenTest.java
+++
b/plugins/hypervisors/ovm3/src/test/java/com/cloud/hypervisor/ovm3/objects/XenTest.java
@@ -17,8 +17,7 @@
package com.cloud.hypervisor.ovm3.objects;
-import java.util.UUID;
-
+import com.cloud.utils.UuidUtils;
import org.junit.Test;
public class XenTest {
@@ -697,7 +696,7 @@ public class XenTest {
domU.setVmCpus(1);
domU.setVmMemory(512);
domU.setVmDomainType("default");
- domU.setVmUuid(UUID.nameUUIDFromBytes(VMNAME.getBytes()).toString());
+
domU.setVmUuid(UuidUtils.nameUUIDFromBytes(VMNAME.getBytes()).toString());
domU.setVmName(VMNAME);
domU.addRootDisk(VMROOTDISK);
domU.setPrimaryPoolUuid(REPOID);
diff --git
a/plugins/hypervisors/simulator/src/main/java/com/cloud/agent/manager/MockStorageManagerImpl.java
b/plugins/hypervisors/simulator/src/main/java/com/cloud/agent/manager/MockStorageManagerImpl.java
index 4ade80a8fb2..5d0fe3b50c3 100644
---
a/plugins/hypervisors/simulator/src/main/java/com/cloud/agent/manager/MockStorageManagerImpl.java
+++
b/plugins/hypervisors/simulator/src/main/java/com/cloud/agent/manager/MockStorageManagerImpl.java
@@ -103,6 +103,7 @@ import com.cloud.storage.VMTemplateStorageResourceAssoc;
import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.template.TemplateProp;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.TransactionLegacy;
import com.cloud.utils.exception.CloudRuntimeException;
@@ -886,7 +887,7 @@ public class MockStorageManagerImpl extends ManagerBase
implements MockStorageMa
String nfsHost = uri.getHost();
String nfsPath = uri.getPath();
String path = nfsHost + ":" + nfsPath;
- String dir = "/mnt/" +
UUID.nameUUIDFromBytes(path.getBytes()).toString() + File.separator;
+ String dir = "/mnt/" +
UuidUtils.nameUUIDFromBytes(path.getBytes()).toString() + File.separator;
storage.setUrl(url);
storage.setCapacity(DEFAULT_HOST_STORAGE_SIZE);
diff --git
a/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
b/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
index 1be381dcd54..a5d1127e331 100644
---
a/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
+++
b/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
@@ -22,7 +22,6 @@ import java.net.URLDecoder;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.UUID;
import javax.inject.Inject;
import javax.naming.ConfigurationException;
@@ -75,6 +74,7 @@ import com.cloud.template.TemplateManager;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
import com.cloud.utils.UriUtils;
+import com.cloud.utils.UuidUtils;
import com.vmware.vim25.ManagedObjectReference;
public class VmwareServerDiscoverer extends DiscovererBase implements
Discoverer, ResourceStateAdapter {
@@ -397,7 +397,7 @@ public class VmwareServerDiscoverer extends DiscovererBase
implements Discoverer
// place a place holder guid derived from cluster ID
try{
-
cluster.setGuid(UUID.nameUUIDFromBytes(String.valueOf(clusterId).getBytes("UTF-8")).toString());
+
cluster.setGuid(UuidUtils.nameUUIDFromBytes(String.valueOf(clusterId).getBytes("UTF-8")).toString());
}catch(UnsupportedEncodingException e){
throw new DiscoveredWithErrorException("Unable to create UUID
based on string " + String.valueOf(clusterId) + ". Bad clusterId or UTF-8
encoding error.");
}
diff --git
a/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/manager/VmwareStorageManagerImpl.java
b/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/manager/VmwareStorageManagerImpl.java
index 6203d5b9a94..7147ae18581 100644
---
a/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/manager/VmwareStorageManagerImpl.java
+++
b/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/manager/VmwareStorageManagerImpl.java
@@ -81,6 +81,7 @@ import com.cloud.storage.template.OVAProcessor;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.script.Script;
import com.cloud.vm.VirtualMachine;
@@ -277,7 +278,7 @@ public class VmwareStorageManagerImpl implements
VmwareStorageManager {
try {
VmwareHypervisorHost hyperHost = hostService.getHyperHost(context,
cmd);
- String templateUuidName = UUID.nameUUIDFromBytes((templateName +
"@" + cmd.getPoolUuid() + "-" +
hyperHost.getMor().getValue()).getBytes("UTF-8")).toString();
+ String templateUuidName =
UuidUtils.nameUUIDFromBytes((templateName + "@" + cmd.getPoolUuid() + "-" +
hyperHost.getMor().getValue()).getBytes("UTF-8")).toString();
// truncate template name to 32 chars to ensure they work well
with vSphere API's.
templateUuidName = templateUuidName.replace("-", "");
diff --git
a/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/resource/VmwareResource.java
b/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/resource/VmwareResource.java
index aecfb58d708..289dae42e91 100644
---
a/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/resource/VmwareResource.java
+++
b/plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/resource/VmwareResource.java
@@ -294,6 +294,7 @@ import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.StringUtils;
import com.cloud.utils.Ternary;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.db.DB;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.exception.ExceptionUtil;
@@ -5309,7 +5310,7 @@ public class VmwareResource extends ServerResourceBase
implements StoragePoolRes
poolInfo.setHostPath(childPath);
String uuid =
childDsMo.getCustomFieldValue(CustomFieldConstants.CLOUD_UUID);
if (uuid == null || !uuid.contains("-")) {
- uuid = UUID.nameUUIDFromBytes(((pool.getHost() +
childPath)).getBytes()).toString();
+ uuid = UuidUtils.nameUUIDFromBytes(((pool.getHost() +
childPath)).getBytes()).toString();
}
poolInfo.setUuid(uuid);
poolInfo.setLocalPath(cmd.LOCAL_PATH_PREFIX +
File.separator + uuid);
@@ -5544,7 +5545,7 @@ public class VmwareResource extends ServerResourceBase
implements StoragePoolRes
private String getSecondaryDatastoreUUID(String storeUrl) {
String uuid = null;
try {
- uuid =
UUID.nameUUIDFromBytes(storeUrl.getBytes("UTF-8")).toString();
+ uuid =
UuidUtils.nameUUIDFromBytes(storeUrl.getBytes("UTF-8")).toString();
} catch (UnsupportedEncodingException e) {
logger.warn("Failed to create UUID from string " + storeUrl + ".
Bad storeUrl or UTF-8 encoding error.");
}
diff --git
a/plugins/hypervisors/vmware/src/main/java/com/cloud/storage/resource/VmwareStorageProcessor.java
b/plugins/hypervisors/vmware/src/main/java/com/cloud/storage/resource/VmwareStorageProcessor.java
index e4b3282defb..e4fd5d24f43 100644
---
a/plugins/hypervisors/vmware/src/main/java/com/cloud/storage/resource/VmwareStorageProcessor.java
+++
b/plugins/hypervisors/vmware/src/main/java/com/cloud/storage/resource/VmwareStorageProcessor.java
@@ -101,6 +101,7 @@ import com.cloud.template.TemplateManager;
import com.cloud.utils.LogUtils;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.script.Script;
import com.cloud.vm.VirtualMachine.PowerState;
@@ -2286,7 +2287,7 @@ public class VmwareStorageProcessor implements
StorageProcessor {
private String getSecondaryDatastoreUUID(String storeUrl) {
String uuid = null;
try{
- uuid=UUID.nameUUIDFromBytes(storeUrl.getBytes("UTF-8")).toString();
+
uuid=UuidUtils.nameUUIDFromBytes(storeUrl.getBytes("UTF-8")).toString();
}catch(UnsupportedEncodingException e){
logger.warn("Failed to create UUID from string " + storeUrl + ".
Bad storeUrl or UTF-8 encoding error." );
}
@@ -3740,10 +3741,10 @@ public class VmwareStorageProcessor implements
StorageProcessor {
private String deriveTemplateUuidOnHost(VmwareHypervisorHost hyperHost,
String storeIdentifier, String templateName) {
String templateUuid;
try {
- templateUuid = UUID.nameUUIDFromBytes((templateName + "@" +
storeIdentifier + "-" +
hyperHost.getMor().getValue()).getBytes("UTF-8")).toString();
+ templateUuid = UuidUtils.nameUUIDFromBytes((templateName + "@" +
storeIdentifier + "-" +
hyperHost.getMor().getValue()).getBytes("UTF-8")).toString();
} catch(UnsupportedEncodingException e){
logger.warn("unexpected encoding error, using default Charset: " +
e.getLocalizedMessage());
- templateUuid = UUID.nameUUIDFromBytes((templateName + "@" +
storeIdentifier + "-" +
hyperHost.getMor().getValue()).getBytes(Charset.defaultCharset()))
+ templateUuid = UuidUtils.nameUUIDFromBytes((templateName + "@" +
storeIdentifier + "-" +
hyperHost.getMor().getValue()).getBytes(Charset.defaultCharset()))
.toString();
}
templateUuid = templateUuid.replaceAll("-", "");
diff --git
a/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/CitrixResourceBase.java
b/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/CitrixResourceBase.java
index 5f86c9574d5..4658b0eb4e5 100644
---
a/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/CitrixResourceBase.java
+++
b/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/CitrixResourceBase.java
@@ -142,6 +142,7 @@ import com.cloud.utils.Pair;
import com.cloud.utils.PropertiesUtil;
import com.cloud.utils.StringUtils;
import com.cloud.utils.Ternary;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.net.NetUtils;
import com.cloud.utils.script.Script;
@@ -1047,7 +1048,7 @@ public abstract class CitrixResourceBase extends
ServerResourceBase implements S
path = path.replace("//", "/");
deviceConfig.put("server", uri.getHost());
deviceConfig.put("serverpath", path);
- final String name = UUID.nameUUIDFromBytes((uri.getHost() +
path).getBytes()).toString();
+ final String name = UuidUtils.nameUUIDFromBytes((uri.getHost() +
path).getBytes()).toString();
if (!shared) {
final Set<SR> srs = SR.getByNameLabel(conn, name);
for (final SR sr : srs) {
@@ -5763,7 +5764,7 @@ public abstract class CitrixResourceBase extends
ServerResourceBase implements S
try {
URI uri = new URI(secondaryStorageUrl);
secondaryStorageMountPath = uri.getHost() + ":" + uri.getPath();
- localDir = BASE_MOUNT_POINT_ON_REMOTE +
UUID.nameUUIDFromBytes(secondaryStorageMountPath.getBytes());
+ localDir = BASE_MOUNT_POINT_ON_REMOTE +
UuidUtils.nameUUIDFromBytes(secondaryStorageMountPath.getBytes());
String mountPoint = mountNfs(conn, secondaryStorageMountPath,
localDir, nfsVersion);
if (StringUtils.isBlank(mountPoint)) {
return new CopyToSecondaryStorageAnswer(cmd, false, "Could not
mount secondary storage " + secondaryStorageMountPath + " on host " + localDir);
@@ -5793,7 +5794,7 @@ public abstract class CitrixResourceBase extends
ServerResourceBase implements S
private String mountNfs(Connection conn, String remoteDir, String
localDir, String nfsVersion) {
if (localDir == null) {
- localDir = BASE_MOUNT_POINT_ON_REMOTE +
UUID.nameUUIDFromBytes(remoteDir.getBytes());
+ localDir = BASE_MOUNT_POINT_ON_REMOTE +
UuidUtils.nameUUIDFromBytes(remoteDir.getBytes());
}
return callHostPlugin(conn, "cloud-plugin-storage",
"mountNfsSecondaryStorage", "localDir", localDir, "remoteDir", remoteDir,
"nfsVersion", nfsVersion);
}
@@ -5801,7 +5802,7 @@ public abstract class CitrixResourceBase extends
ServerResourceBase implements S
// Unmount secondary storage from host
private void umountNfs(Connection conn, String remoteDir, String localDir)
{
if (localDir == null) {
- localDir = BASE_MOUNT_POINT_ON_REMOTE +
UUID.nameUUIDFromBytes(remoteDir.getBytes());
+ localDir = BASE_MOUNT_POINT_ON_REMOTE +
UuidUtils.nameUUIDFromBytes(remoteDir.getBytes());
}
String result = callHostPlugin(conn, "cloud-plugin-storage",
"umountNfsSecondaryStorage", "localDir", localDir, "remoteDir", remoteDir);
if (StringUtils.isBlank(result)) {
diff --git
a/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/XenServerStorageProcessor.java
b/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/XenServerStorageProcessor.java
index 1d405316ad7..a214131c47d 100644
---
a/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/XenServerStorageProcessor.java
+++
b/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/XenServerStorageProcessor.java
@@ -77,6 +77,7 @@ import com.cloud.storage.DataStoreRole;
import com.cloud.storage.Storage;
import com.cloud.storage.Storage.ImageFormat;
import com.cloud.storage.resource.StorageProcessor;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.storage.S3.ClientOptions;
import com.google.common.annotations.VisibleForTesting;
@@ -1255,7 +1256,7 @@ public class XenServerStorageProcessor implements
StorageProcessor {
final String folder = destPath;
String finalPath = null;
- final String localMountPoint = BaseMountPointOnHost +
File.separator +
UUID.nameUUIDFromBytes(secondaryStorageUrl.getBytes()).toString();
+ final String localMountPoint = BaseMountPointOnHost +
File.separator +
UuidUtils.nameUUIDFromBytes(secondaryStorageUrl.getBytes()).toString();
if (fullbackup) {
// the first snapshot is always a full snapshot
diff --git
a/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java
b/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java
index 773b443a57e..c7b288ef8c7 100644
---
a/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java
+++
b/plugins/hypervisors/xenserver/src/main/java/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java
@@ -51,6 +51,7 @@ import com.cloud.agent.api.to.SwiftTO;
import com.cloud.exception.InternalErrorException;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.storage.Storage;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.xensource.xenapi.Connection;
import com.xensource.xenapi.Host;
@@ -73,7 +74,7 @@ public class Xenserver625StorageProcessor extends
XenServerStorageProcessor {
private void mountNfs(Connection conn, String remoteDir, String localDir,
String nfsVersion) {
if (localDir == null) {
- localDir = BASE_MOUNT_POINT_ON_REMOTE +
UUID.nameUUIDFromBytes(remoteDir.getBytes());
+ localDir = BASE_MOUNT_POINT_ON_REMOTE +
UuidUtils.nameUUIDFromBytes(remoteDir.getBytes());
}
String result = hypervisorResource.callHostPluginAsync(conn,
"cloud-plugin-storage", "mountNfsSecondaryStorage", 100 * 1000, "localDir",
localDir, "remoteDir", remoteDir, "nfsVersion", nfsVersion);
if (StringUtils.isBlank(result)) {
@@ -110,7 +111,7 @@ public class Xenserver625StorageProcessor extends
XenServerStorageProcessor {
/**
* Creates a new file SR for the given path. If any of XenServer's checked
exception occurs, we use method {@link #removeSrAndPbdIfPossible(Connection,
SR, PBD)} to clean the created PBD and SR entries.
- * To avoid race conditions between management servers, we are using a
deterministic srUuid for the file SR to be created (we are leaving XenServer
with the burden of managing race conditions). The UUID is based on the SR file
path, and is generated using {@link UUID#nameUUIDFromBytes(byte[])}.
+ * To avoid race conditions between management servers, we are using a
deterministic srUuid for the file SR to be created (we are leaving XenServer
with the burden of managing race conditions). The UUID is based on the SR file
path, and is generated using {@link UuidUtils.nameUUIDFromBytes(byte[])}.
* If there is an SR with the generated UUID, this means that some other
management server has just created it. An exception will occur and this
exception will be an {@link InternalError}. The exception will contain {@link
InternalError#message} a message saying
'Db_exn.Uniqueness_constraint_violation'.
* For cases where the previous described error happens, we catch the
exception and use the method {@link
#retrieveAlreadyConfiguredSrWithoutException(Connection, String)}.
*/
@@ -121,7 +122,7 @@ public class Xenserver625StorageProcessor extends
XenServerStorageProcessor {
PBD pbd = null;
try {
Host host = Host.getByUuid(conn, hostUuid);
- String srUuid =
UUID.nameUUIDFromBytes(srPath.getBytes()).toString();
+ String srUuid =
UuidUtils.nameUUIDFromBytes(srPath.getBytes()).toString();
Map<String, String> smConfig = new HashMap<String, String>();
sr = SR.introduce(conn, srUuid, srPath, srPath, "file", "file",
false, smConfig);
@@ -243,7 +244,7 @@ public class Xenserver625StorageProcessor extends
XenServerStorageProcessor {
}
protected SR createFileSr(Connection conn, String remotePath, String dir,
String nfsVersion) {
- String localDir = BASE_MOUNT_POINT_ON_REMOTE +
UUID.nameUUIDFromBytes(remotePath.getBytes());
+ String localDir = BASE_MOUNT_POINT_ON_REMOTE +
UuidUtils.nameUUIDFromBytes(remotePath.getBytes());
mountNfs(conn, remotePath, localDir, nfsVersion);
return createFileSR(conn, localDir + "/" + dir);
}
@@ -563,12 +564,12 @@ public class Xenserver625StorageProcessor extends
XenServerStorageProcessor {
final String folder = destPath;
String finalPath = null;
- final String localMountPoint = BaseMountPointOnHost +
File.separator +
UUID.nameUUIDFromBytes(secondaryStorageUrl.getBytes()).toString();
+ final String localMountPoint = BaseMountPointOnHost +
File.separator +
UuidUtils.nameUUIDFromBytes(secondaryStorageUrl.getBytes()).toString();
if (fullbackup) {
SR snapshotSr = null;
Task task = null;
try {
- final String localDir = BASE_MOUNT_POINT_ON_REMOTE +
UUID.nameUUIDFromBytes(secondaryStorageMountPath.getBytes());
+ final String localDir = BASE_MOUNT_POINT_ON_REMOTE +
UuidUtils.nameUUIDFromBytes(secondaryStorageMountPath.getBytes());
mountNfs(conn, secondaryStorageMountPath, localDir,
nfsVersion);
final boolean result = makeDirectory(conn, localDir + "/"
+ folder);
if (!result) {
@@ -1097,7 +1098,7 @@ public class Xenserver625StorageProcessor extends
XenServerStorageProcessor {
srcSr = createFileSr(conn, srcUri.getHost() + ":" +
srcUri.getPath(), srcDir, srcNfsVersion);
final String destNfsPath = destUri.getHost() + ":" +
destUri.getPath();
- final String localDir = BASE_MOUNT_POINT_ON_REMOTE +
UUID.nameUUIDFromBytes(destNfsPath.getBytes());
+ final String localDir = BASE_MOUNT_POINT_ON_REMOTE +
UuidUtils.nameUUIDFromBytes(destNfsPath.getBytes());
String destNfsVersion = destStore.getNfsVersion();
mountNfs(conn, destUri.getHost() + ":" + destUri.getPath(),
localDir, destNfsVersion);
@@ -1240,7 +1241,7 @@ public class Xenserver625StorageProcessor extends
XenServerStorageProcessor {
srcSr = hypervisorResource.getIscsiSR(conn, iScsiName,
storageHost, iScsiName, chapInitiatorUsername, chapInitiatorSecret, false,
srType, true);
final String destNfsPath = destUri.getHost() + ":" +
destUri.getPath();
- final String localDir = BASE_MOUNT_POINT_ON_REMOTE +
UUID.nameUUIDFromBytes(destNfsPath.getBytes());
+ final String localDir = BASE_MOUNT_POINT_ON_REMOTE +
UuidUtils.nameUUIDFromBytes(destNfsPath.getBytes());
String nfsVersion = destStore.getNfsVersion();
mountNfs(conn, destNfsPath, localDir, nfsVersion);
diff --git
a/plugins/hypervisors/xenserver/src/test/java/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessorTest.java
b/plugins/hypervisors/xenserver/src/test/java/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessorTest.java
index 5f2ae88faa7..ba7b88ea229 100644
---
a/plugins/hypervisors/xenserver/src/test/java/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessorTest.java
+++
b/plugins/hypervisors/xenserver/src/test/java/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessorTest.java
@@ -26,7 +26,6 @@ import static org.mockito.Mockito.times;
import java.util.HashSet;
import java.util.Set;
-import java.util.UUID;
import org.apache.commons.lang3.StringUtils;
import org.apache.xmlrpc.XmlRpcException;
@@ -41,6 +40,7 @@ import org.mockito.MockedStatic;
import org.mockito.Mockito;
import org.mockito.junit.MockitoJUnitRunner;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.xensource.xenapi.Connection;
import com.xensource.xenapi.Host;
@@ -310,7 +310,7 @@ public class Xenserver625StorageProcessorTest {
String uuid = "hostUuid";
Mockito.when(citrixResourceBase._host.getUuid()).thenReturn(uuid);
- String srUuid = UUID.nameUUIDFromBytes(pathMock.getBytes()).toString();
+ String srUuid =
UuidUtils.nameUUIDFromBytes(pathMock.getBytes()).toString();
Host hostMock = Mockito.mock(Host.class);
@@ -337,7 +337,7 @@ public class Xenserver625StorageProcessorTest {
SR srMock = Mockito.mock(SR.class);
Mockito.doReturn(srMock).when(xenserver625StorageProcessor).retrieveAlreadyConfiguredSrWithoutException(connectionMock,
pathMock);
- String srUuid = UUID.nameUUIDFromBytes(pathMock.getBytes()).toString();
+ String srUuid =
UuidUtils.nameUUIDFromBytes(pathMock.getBytes()).toString();
Host hostMock = Mockito.mock(Host.class);
@@ -368,7 +368,7 @@ public class Xenserver625StorageProcessorTest {
Mockito.when(citrixResourceBase._host.getUuid()).thenReturn(uuid);
SR srMock = Mockito.mock(SR.class);
- String srUuid = UUID.nameUUIDFromBytes(pathMock.getBytes()).toString();
+ String srUuid =
UuidUtils.nameUUIDFromBytes(pathMock.getBytes()).toString();
Host hostMock = Mockito.mock(Host.class);
diff --git
a/plugins/storage/volume/default/src/main/java/org/apache/cloudstack/storage/datastore/lifecycle/CloudStackPrimaryDataStoreLifeCycleImpl.java
b/plugins/storage/volume/default/src/main/java/org/apache/cloudstack/storage/datastore/lifecycle/CloudStackPrimaryDataStoreLifeCycleImpl.java
index fbcc51e2e8c..b3cf825ea59 100644
---
a/plugins/storage/volume/default/src/main/java/org/apache/cloudstack/storage/datastore/lifecycle/CloudStackPrimaryDataStoreLifeCycleImpl.java
+++
b/plugins/storage/volume/default/src/main/java/org/apache/cloudstack/storage/datastore/lifecycle/CloudStackPrimaryDataStoreLifeCycleImpl.java
@@ -69,6 +69,7 @@ import com.cloud.storage.dao.VolumeDao;
import com.cloud.user.dao.UserDao;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.db.DB;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.vm.VirtualMachineManager;
@@ -309,7 +310,7 @@ public class CloudStackPrimaryDataStoreLifeCycleImpl
extends BasePrimaryDataStor
} else if ("PreSetup".equalsIgnoreCase(scheme) &&
!HypervisorType.VMware.equals(hypervisorType)) {
uuid = hostPath.replace("/", "");
} else {
- uuid = UUID.nameUUIDFromBytes((storageHost +
hostPath).getBytes()).toString();
+ uuid = UuidUtils.nameUUIDFromBytes((storageHost +
hostPath).getBytes()).toString();
}
List<StoragePoolVO> spHandles =
primaryDataStoreDao.findIfDuplicatePoolsExistByUUID(uuid);
diff --git
a/server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java
b/server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java
index 64b2a66f452..300a96b27b5 100644
--- a/server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java
+++ b/server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java
@@ -43,7 +43,6 @@ import java.util.Map.Entry;
import java.util.Objects;
import java.util.Optional;
import java.util.Set;
-import java.util.UUID;
import java.util.Vector;
import java.util.stream.Collectors;
@@ -293,6 +292,7 @@ import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
import com.cloud.utils.UriUtils;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.crypt.DBEncryptionUtil;
import com.cloud.utils.db.DB;
@@ -3106,7 +3106,7 @@ public class ConfigurationManagerImpl extends ManagerBase
implements Configurati
checkZoneParameters(zoneName, dns1, dns2, internalDns1, internalDns2,
true, domainId, allocationStateStr, ip6Dns1, ip6Dns2);
final byte[] bytes = (zoneName +
System.currentTimeMillis()).getBytes();
- final String zoneToken = UUID.nameUUIDFromBytes(bytes).toString();
+ final String zoneToken = UuidUtils.nameUUIDFromBytes(bytes).toString();
// Create the new zone in the database
final DataCenterVO zoneFinal = new DataCenterVO(zoneName, null, dns1,
dns2, internalDns1, internalDns2, guestCidr, domain, domainId, zoneType,
zoneToken, networkDomain,
diff --git
a/server/src/main/java/com/cloud/hypervisor/kvm/discoverer/LibvirtServerDiscoverer.java
b/server/src/main/java/com/cloud/hypervisor/kvm/discoverer/LibvirtServerDiscoverer.java
index a83db42f598..7e019bb39f6 100644
---
a/server/src/main/java/com/cloud/hypervisor/kvm/discoverer/LibvirtServerDiscoverer.java
+++
b/server/src/main/java/com/cloud/hypervisor/kvm/discoverer/LibvirtServerDiscoverer.java
@@ -26,7 +26,6 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
-import java.util.UUID;
import javax.inject.Inject;
import javax.naming.ConfigurationException;
@@ -69,6 +68,7 @@ import com.cloud.resource.ServerResource;
import com.cloud.resource.UnableDeleteHostException;
import com.cloud.utils.PasswordGenerator;
import com.cloud.utils.StringUtils;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.ssh.SSHCmdHelper;
import com.trilead.ssh2.Connection;
@@ -241,7 +241,7 @@ public abstract class LibvirtServerDiscoverer extends
DiscovererBase implements
// Set cluster GUID based on cluster ID if null
if (cluster.getGuid() == null) {
-
cluster.setGuid(UUID.nameUUIDFromBytes(String.valueOf(clusterId).getBytes()).toString());
+
cluster.setGuid(UuidUtils.nameUUIDFromBytes(String.valueOf(clusterId).getBytes()).toString());
_clusterDao.update(clusterId, cluster);
}
@@ -259,7 +259,7 @@ public abstract class LibvirtServerDiscoverer extends
DiscovererBase implements
String hostname = uri.getHost();
InetAddress ia = InetAddress.getByName(hostname);
agentIp = ia.getHostAddress();
- String guid =
UUID.nameUUIDFromBytes(agentIp.getBytes()).toString();
+ String guid =
UuidUtils.nameUUIDFromBytes(agentIp.getBytes()).toString();
List<HostVO> existingHosts =
_resourceMgr.listAllHostsInOneZoneByType(Host.Type.Routing, dcId);
if (existingHosts != null) {
diff --git a/server/src/main/java/com/cloud/test/DatabaseConfig.java
b/server/src/main/java/com/cloud/test/DatabaseConfig.java
index c48e3331a80..0f04cc71c1a 100644
--- a/server/src/main/java/com/cloud/test/DatabaseConfig.java
+++ b/server/src/main/java/com/cloud/test/DatabaseConfig.java
@@ -57,6 +57,7 @@ import com.cloud.storage.Storage.ProvisioningType;
import com.cloud.storage.dao.DiskOfferingDaoImpl;
import com.cloud.utils.DateUtil;
import com.cloud.utils.PropertiesUtil;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.component.ComponentContext;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.Transaction;
@@ -609,7 +610,7 @@ public class DatabaseConfig {
String hostAddress = _currentObjectParams.get("hostAddress");
String hostPath = _currentObjectParams.get("hostPath");
String storageType = _currentObjectParams.get("storageType");
- String uuid = UUID.nameUUIDFromBytes(new String(hostAddress +
hostPath).getBytes()).toString();
+ String uuid = UuidUtils.nameUUIDFromBytes(new String(hostAddress +
hostPath).getBytes()).toString();
String insertSql1 =
"INSERT INTO `storage_pool` (`id`, `name`, `uuid` , `pool_type` ,
`port`, `data_center_id` ,`available_bytes` , `capacity_bytes` ,`host_address`,
`path`, `created`, `pod_id`,`status` , `cluster_id`) VALUES
(?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
diff --git a/server/src/main/java/com/cloud/user/AccountManagerImpl.java
b/server/src/main/java/com/cloud/user/AccountManagerImpl.java
index d93993af9ab..a73a00d9152 100644
--- a/server/src/main/java/com/cloud/user/AccountManagerImpl.java
+++ b/server/src/main/java/com/cloud/user/AccountManagerImpl.java
@@ -176,6 +176,7 @@ import com.cloud.utils.ConstantTimeComparator;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.component.ComponentContext;
import com.cloud.utils.component.Manager;
import com.cloud.utils.component.ManagerBase;
@@ -1365,7 +1366,7 @@ public class AccountManagerImpl extends ManagerBase
implements AccountManager, M
if (accountType == Account.Type.RESOURCE_DOMAIN_ADMIN) {
// set registration token
byte[] bytes = (domainIdFinal + accountNameFinal +
userName + System.currentTimeMillis()).getBytes();
- String registrationToken =
UUID.nameUUIDFromBytes(bytes).toString();
+ String registrationToken =
UuidUtils.nameUUIDFromBytes(bytes).toString();
user.setRegistrationToken(registrationToken);
}
diff --git
a/services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java
b/services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java
index 609cda693f8..500e6bf47df 100644
---
a/services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java
+++
b/services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java
@@ -172,6 +172,7 @@ import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.StringUtils;
import com.cloud.utils.SwiftUtil;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.net.NetUtils;
import com.cloud.utils.script.OutputInterpreter;
@@ -671,7 +672,7 @@ public class NfsSecondaryStorageResource extends
ServerResourceBase implements S
}
public static String getSecondaryDatastoreUUID(String storeUrl) {
- return UUID.nameUUIDFromBytes(storeUrl.getBytes()).toString();
+ return UuidUtils.nameUUIDFromBytes(storeUrl.getBytes()).toString();
}
private static String getTemplateRelativeDirInSecStorage(long accountId,
long templateId) {
@@ -3029,7 +3030,7 @@ public class NfsSecondaryStorageResource extends
ServerResourceBase implements S
String nfsPath = uriHostIp + ":" + uri.getPath();
// Single means of calculating mount directory regardless of scheme
- String dir =
UUID.nameUUIDFromBytes(nfsPath.getBytes(com.cloud.utils.StringUtils.getPreferredCharset())).toString();
+ String dir =
UuidUtils.nameUUIDFromBytes(nfsPath.getBytes(com.cloud.utils.StringUtils.getPreferredCharset())).toString();
String localRootPath = _parent + "/" + dir;
// remote device syntax varies by scheme.
@@ -3481,7 +3482,7 @@ public class NfsSecondaryStorageResource extends
ServerResourceBase implements S
templateName = uploadEntity.getUuid().trim().replace(" ", "_");
} else {
try {
- templateName =
UUID.nameUUIDFromBytes((uploadEntity.getFilename() +
System.currentTimeMillis()).getBytes("UTF-8")).toString();
+ templateName =
UuidUtils.nameUUIDFromBytes((uploadEntity.getFilename() +
System.currentTimeMillis()).getBytes("UTF-8")).toString();
} catch (UnsupportedEncodingException e) {
templateName = uploadEntity.getUuid().trim().replace(" ", "_");
}
diff --git
a/services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/template/DownloadManagerImpl.java
b/services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/template/DownloadManagerImpl.java
index 64bac9e43e2..599dcfa0c48 100644
---
a/services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/template/DownloadManagerImpl.java
+++
b/services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/template/DownloadManagerImpl.java
@@ -86,6 +86,7 @@ import com.cloud.storage.template.TemplateProp;
import com.cloud.storage.template.VhdProcessor;
import com.cloud.storage.template.VmdkProcessor;
import com.cloud.utils.NumbersUtil;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.net.Proxy;
@@ -595,7 +596,7 @@ public class DownloadManagerImpl extends ManagerBase
implements DownloadManager
if (extension.equals("iso")) {
templateName = jobs.get(jobId).getTmpltName().trim().replace(" ",
"_");
} else {
- templateName =
UUID.nameUUIDFromBytes((jobs.get(jobId).getTmpltName() +
System.currentTimeMillis()).getBytes(com.cloud.utils.StringUtils.getPreferredCharset())).toString();
+ templateName =
UuidUtils.nameUUIDFromBytes((jobs.get(jobId).getTmpltName() +
System.currentTimeMillis()).getBytes(com.cloud.utils.StringUtils.getPreferredCharset())).toString();
}
return templateName;
}
diff --git a/utils/src/main/java/com/cloud/utils/UuidUtils.java
b/utils/src/main/java/com/cloud/utils/UuidUtils.java
index 42604e5c8a0..6f62bd4a952 100644
--- a/utils/src/main/java/com/cloud/utils/UuidUtils.java
+++ b/utils/src/main/java/com/cloud/utils/UuidUtils.java
@@ -22,6 +22,8 @@ package com.cloud.utils;
import com.cloud.utils.exception.CloudRuntimeException;
import org.apache.xerces.impl.xpath.regex.RegularExpression;
+import java.util.UUID;
+
public class UuidUtils {
private static final RegularExpression uuidRegex = new
RegularExpression("[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}");
@@ -64,4 +66,9 @@ public class UuidUtils {
public static RegularExpression getUuidRegex() {
return uuidRegex;
}
+
+
+ public static UUID nameUUIDFromBytes(byte[] name) {
+ return UUID.nameUUIDFromBytes(name);
+ }
}
diff --git
a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
index 1dc6ab64f0a..6c941f8012a 100644
---
a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
+++
b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
@@ -65,6 +65,7 @@ import com.cloud.utils.ActionDelegate;
import com.cloud.utils.LogUtils;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
+import com.cloud.utils.UuidUtils;
import com.cloud.utils.cisco.n1kv.vsm.NetconfHelper;
import com.cloud.utils.cisco.n1kv.vsm.PolicyMap;
import com.cloud.utils.cisco.n1kv.vsm.PortProfile;
@@ -249,7 +250,7 @@ public class HypervisorHostHelper {
}
public static String getSecondaryDatastoreUUID(String storeUrl) {
- return UUID.nameUUIDFromBytes(storeUrl.getBytes()).toString();
+ return UuidUtils.nameUUIDFromBytes(storeUrl.getBytes()).toString();
}
public static DatastoreMO getHyperHostDatastoreMO(VmwareHypervisorHost
hyperHost, String datastoreName) throws Exception {