package org.ovirt.engine.core.bll.adbroker; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.utils.GuidUtils; public class ADLdapGuidEncoder implements LdapGuidEncoder { @Override public String encodeGuid(Guid guid) { byte[] ba = GuidUtils.ToByteArray(guid.getUuid()); // AD guid is stored in reversed order than MS-SQL guid - // Since it is important for us to work with GUIDs which are MS-SQL // aligned, // for each GUID -before using with AD we will change its byte order to // support AD Guid adGuid = new Guid(ba, false); ba = GuidUtils.ToByteArray(adGuid.getUuid()); StringBuilder sb = new StringBuilder(); for (int idx = 0; idx < ba.length; idx++) { sb.append("\\" + String.format("%02X", ba[idx])); } return sb.toString(); } }