示例#1
0
 /// <summary>
 /// Enumerates all unmanaged folders, meaning alias'ed folders
 /// </summary>
 /// <param name="type">The type of data to return</param>
 /// <param name="filter">A filter applied to the items</param>
 /// <param name="recursive">True if the list should contains recursive results</param>
 /// <param name="startpath">The path to retrieve the data from</param>
 /// <returns>A list of unmanaged data</returns>
 public override UnmanagedDataList EnumerateUnmanagedData(string startpath, string filter, bool recursive, UnmanagedDataTypes type)
 {
     string req = m_reqBuilder.EnumerateUnmanagedData(startpath, filter, recursive, type);
     System.IO.MemoryStream ms = new System.IO.MemoryStream();
     using(System.IO.Stream s = this.OpenRead(req))
         Utility.CopyStream(s, ms);
     ms.Position = 0;
     return (UnmanagedDataList)DeserializeObject(typeof(UnmanagedDataList), ms);
 }
示例#2
0
 public override UnmanagedDataList EnumerateUnmanagedData(string startpath, string filter, bool recursive, UnmanagedDataTypes type)
 {
     var resSvc = GetResourceService();
     var br = resSvc.EnumerateUnmanagedData(startpath, recursive, type.ToString(), filter);
     var result = (UnmanagedDataList)base.DeserializeObject(typeof(UnmanagedDataList), new MgReadOnlyStream(new GetByteReaderMethod(() => { return br; })));
     LogMethodCall("MgResourceService::EnumerateUnmanagedData", true, startpath, recursive.ToString(), type.ToString(), filter);
     return result;
 }
示例#3
0
 /// <summary>
 /// Enumerates all unmanaged folders, meaning alias'ed folders
 /// </summary>
 /// <param name="type">The type of data to return</param>
 /// <param name="filter">A filter applied to the items</param>
 /// <param name="recursive">True if the list should contains recursive results</param>
 /// <param name="startpath">The path to retrieve the data from</param>
 /// <returns>A list of unmanaged data</returns>
 public override UnmanagedDataList EnumerateUnmanagedData(string startpath, string filter, bool recursive, UnmanagedDataTypes type)
 {
     MgResourceService res = this.Connection.CreateService(MgServiceType.ResourceService) as MgResourceService;
     GetByteReaderMethod fetch = () =>
     {
         return res.EnumerateUnmanagedData(startpath, recursive, type.ToString(), filter);
     };
     LogMethodCall("MgResourceService::EnumerateUnmanagedData", true, startpath, recursive, type.ToString(), filter);
     return base.DeserializeObject<UnmanagedDataList>(new MgReadOnlyStream(fetch));
 }
示例#4
0
        public string EnumerateUnmanagedData(string startpath, string filter, bool recursive, UnmanagedDataTypes type)
        {
            NameValueCollection param = new NameValueCollection();
            param.Add("OPERATION", "ENUMERATEUNMANAGEDDATA");
            param.Add("VERSION", "1.0.0");
            param.Add("SESSION", m_sessionID);
            param.Add("FORMAT", "text/xml");
            param.Add("CLIENTAGENT", m_userAgent);
            if (startpath != null)
                param.Add("PATH", startpath);
            if (filter != null)
                param.Add("FILTER", filter);
            param.Add("RECURSIVE", recursive ? "1" : "0");
            if (type == UnmanagedDataTypes.Files)
                param.Add("Type", "Files");
            else if (type == UnmanagedDataTypes.Folders)
                param.Add("Type", "Folders");
            else
                param.Add("Type", "Both");

            if (m_locale != null)
                param.Add("LOCALE", m_locale);

            return m_hosturi + "?" + EncodeParameters(param);
        }