+ManifestHandler::OnDirectoryConfigStartElement()
+{
+ XmlAttribute* pAttr = GetAttribute();
+ TryReturn(pAttr, true, "pAttr is null.");
+
+ char* pVirtualRoot = pAttr->Find("VirtualRoot");
+ TryReturn(pVirtualRoot, false, "pVirtualRoot is null.");
+
+ if (strcasecmp(pVirtualRoot, "true") == 0)
+ {
+ __pContext->__isVirtualRoot = true;
+ }
+
+ AppLog("<DirectoryConfig VirtualRoot=\"%s\">", pVirtualRoot);
+
+ return true;
+}
+
+bool
+ManifestHandler::OnSymbolicLinkStartElement()
+{
+ XmlAttribute* pAttr = GetAttribute();
+ TryReturn(pAttr, true, "pAttr is null.");
+
+ char* pSource = pAttr->Find("Source");
+ TryReturn(pSource, false, "pSource is null.");
+
+ char* pDestination = pAttr->Find("Destination");
+ TryReturn(pDestination, false, "pDestination is null.");
+
+ __pContext->__pSymbolicLinkList->Add(new (std::nothrow) String(pSource), new (std::nothrow) String(pDestination));
+
+ AppLog("<SymbolicLink Source=\"%s\", Destination=\"%s\">", pSource, pDestination);
+
+ return true;
+}
+
+bool