Exemple #1
0
        /// <summary>
        /// Constructor predicated upon file size information
        /// </summary>
        /// <param name="boolRecurse">Whether or not to retrieve files recursively</param>
        /// <param name="sizeType">The size type to query file system objects for</param>
        /// <param name="decMinimumSize">The minimum size of the file system object</param>
        /// <param name="decMaximumSize">The maximum size of the file system object</param>
        public SearchInformation(bool boolRecurse, FileInformation.FileSizeType sizeType, decimal decMinimumSize = 0, decimal decMaximumSize = Decimal.MaxValue)
        {
            this.Recurse     = boolRecurse;
            this.SizeType    = sizeType;
            this.MinimumSize = decMinimumSize;
            this.MaximumSize = decMaximumSize;

            // Configure Search Information Values
            this.LoadSearchInformation();
        }
Exemple #2
0
        /// <summary>
        /// Constructor predicated upon file size
        /// </summary>
        /// <param name="boolRecurse">Whether or not to retrieve files recursively</param>
        /// <param name="strSearchPattern">Search pattern to use to find file system objects</param>
        /// <param name="boolMatchCase">Whether or not the search pattern is case sensitive</param>
        /// <param name="sizeType">The size type to query file system objects for</param>
        /// <param name="decMinimumSize">The minimum size of the file system object</param>
        /// <param name="decMaximumSize">The maximum size of the file system object</param>
        public SearchInformation(bool boolRecurse, string strSearchPattern, bool boolMatchCase,
                                 FileInformation.FileSizeType sizeType, decimal decMinimumSize, decimal decMaximumSize)
        {
            this.Recurse       = boolRecurse;
            this.SearchPattern = strSearchPattern;
            this.MatchCase     = boolMatchCase;

            // Configure Search Information Values
            this.LoadSearchInformation();
        }
Exemple #3
0
        /// <summary>
        /// Constructor with constraints for recursion, search parameters, date information, and size information
        /// </summary>
        /// <param name="boolRecurse">Whether or not to retrieve files recursively</param>
        /// <param name="strSearchPattern">Search pattern to use to find file system objects</param>
        /// <param name="boolMatchCase">Whether or not the search pattern is case sensitive</param>
        /// <param name="dateType">The date type to query file system objects for</param>
        /// <param name="dtMinimumDate">The minimum date of the file system object</param>
        /// <param name="dtMaximumDate">The maximum date of the file system object</param>
        /// <param name="sizeType">The size type to query file system objects for</param>
        /// <param name="decMinimumSize">The minimum size of the file system object</param>
        /// <param name="decMaximumSize">The maximum size of the file system object</param>
        public SearchInformation(bool boolRecurse, string strSearchPattern, bool boolMatchCase,
                                 FileInformation.FileDatePropertyType dateType, DateTime dtMinimumDate, DateTime dtMaximumDate,
                                 FileInformation.FileSizeType sizeType = FileInformation.FileSizeType.Bytes, decimal decMinimumSize = 0, decimal decMaximumSize = Decimal.MaxValue)
        {
            this.Recurse       = boolRecurse;
            this.SearchPattern = strSearchPattern;
            this.MatchCase     = boolMatchCase;
            this.DateType      = dateType;
            this.MinimumDate   = dtMinimumDate;
            this.MaximumDate   = dtMaximumDate;
            this.SizeType      = sizeType;
            this.MinimumSize   = decMinimumSize;
            this.MaximumSize   = decMaximumSize;

            // Configure Search Information Values
            this.LoadSearchInformation();
        }
Exemple #4
0
        internal static decimal GetSize(this DirectoryObject directoryObject, FileInformation.FileSizeType fileSizeType, bool boolRecurse)
        {
            try
            {
                // Get Directory Files
                FileObjectList listFiles = directoryObject.GetFiles(boolRecurse);

                // Get Total Size
                decimal decDirectorySize = listFiles.Select(file => (
                                                                (fileSizeType == FileInformation.FileSizeType.Bytes) ? file.Size.Bytes :
                                                                (fileSizeType == FileInformation.FileSizeType.KiloBytes) ? file.Size.KiloBytes :
                                                                (fileSizeType == FileInformation.FileSizeType.MegaBytes) ? file.Size.MegaBytes :
                                                                (fileSizeType == FileInformation.FileSizeType.GigaBytes) ? file.Size.GigaBytes : 0)).Sum();

                return(decDirectorySize);
            }
            catch (Exception ex)
            {
                // To Be Implemented: Throw Custom Exception...
                Console.WriteLine(ex.ToString());
                return(-1);
            }
        }