Fix for CONNECTORS-782.

git-svn-id: https://svn.apache.org/repos/asf/manifoldcf/integration/sharepoint-2010/trunk@1526075 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/CHANGES.txt b/CHANGES.txt
index 9ddce6e..0beeb04 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -5,6 +5,10 @@
 
 ======================= Release 0.3 =====================
 
+CONNECTORS-782: Add support for GUID return value for lists
+service.
+(Dmitry Goldenberg, Karl Wright)
+
 CONNECTORS-772: SharePoint on AWS does not permit using the
 URL to locate the site.
 (Dmitry Goldenberg, Karl Wright)
diff --git a/webservice/MCPermissions.cs b/webservice/MCPermissions.cs
index 6ae3cb3..5476be4 100644
--- a/webservice/MCPermissions.cs
+++ b/webservice/MCPermissions.cs
@@ -105,7 +105,7 @@
                         listQuery.Query = "<OrderBy Override=\"TRUE\"><FieldRef Name=\"FileRef\" /></OrderBy>";

                         listQuery.QueryThrottleMode = SPQueryThrottleOption.Override;

                         listQuery.ViewAttributes = "Scope=\"Recursive\"";

-                        listQuery.ViewFields = "<FieldRef Name='FileRef' />";

+                        listQuery.ViewFields = "<FieldRef Name='FileRef'/><FieldRef Name='ID'/><FieldRef Name='UniqueId'/>";

                         listQuery.RowLimit = 1000;

 

                         XmlDocument doc = new XmlDocument();

@@ -127,9 +127,15 @@
                                 if (counter >= startRowParam && counter < startRowParam + rowLimitParam)

                                 {

                                     XmlNode resultNode = doc.CreateElement("GetListItemsResult");

-                                    XmlAttribute idAttribute = doc.CreateAttribute("FileRef");

-                                    idAttribute.Value = oListItem.Url;

+                                    XmlAttribute urlAttribute = doc.CreateAttribute("FileRef");

+                                    urlAttribute.Value = oListItem.Url;

+                                    resultNode.Attributes.Append(urlAttribute);

+                                    XmlAttribute idAttribute = doc.CreateAttribute("ID");

+                                    idAttribute.Value = oListItem.ID.ToString();

                                     resultNode.Attributes.Append(idAttribute);

+                                    XmlAttribute uniqueIdAttribute = doc.CreateAttribute("GUID");

+                                    uniqueIdAttribute.Value = oListItem.UniqueId.ToString();

+                                    resultNode.Attributes.Append(uniqueIdAttribute);

                                     getListItemsNode.AppendChild(resultNode);

                                 }

                                 counter++;