SharpCifs.Smb.SmbFile.DoEnum C# (CSharp) Method

DoEnum() private method

private DoEnum ( List list, bool files, string wildcard, int searchAttributes, ISmbFilenameFilter fnf, ISmbFileFilter ff ) : void
list List
files bool
wildcard string
searchAttributes int
fnf ISmbFilenameFilter
ff ISmbFileFilter
return void
        internal virtual void DoEnum(List<object> list, bool files, string wildcard, int searchAttributes
            , ISmbFilenameFilter fnf, ISmbFileFilter ff)
        {
            if (ff != null && ff is DosFileFilter)
            {
                DosFileFilter dff = (DosFileFilter)ff;
                if (dff.Wildcard != null)
                {
                    wildcard = dff.Wildcard;
                }
                searchAttributes = dff.Attributes;
            }
            try
            {
                int hostlen = Url.GetHost() != null ? Url.GetHost().Length : 0;
                if (hostlen == 0 || GetType() == TypeWorkgroup)
                {
                    DoNetServerEnum(list, files, wildcard, searchAttributes, fnf, ff);
                }
                else
                {
                    if (_share == null)
                    {
                        DoShareEnum(list, files, wildcard, searchAttributes, fnf, ff);
                    }
                    else
                    {
                        DoFindFirstNext(list, files, wildcard, searchAttributes, fnf, ff);
                    }
                }
            }
            catch (UnknownHostException uhe)
            {
                throw new SmbException(Url.ToString(), uhe);
            }
            catch (UriFormatException mue)
            {
                throw new SmbException(Url.ToString(), mue);
            }
        }