Пример #1
0
        /*++
         *
         *  Routine Main
         *
         * Description:
         *
         *  This is the main routine of the program.
         *
         * Arguments:
         *
         *  args - Command line arguments
         *
         * Return value:
         *
         *  void
         *
         * Notes:
         *
         *
         * --*/

        static void Main(string [] args)
        {
            //Create an instance of the IFsrmClassificationManager
            FsrmClassificationManager fsrmManager = new FsrmClassificationManager();

            string filePath                = "";
            string propertyName            = "";
            bool   enumerateProperties     = false;
            bool   enumerateFileProperties = false;
            bool   getFileProperty         = false;

            //Parse command line arguments

            for (int i = 0; i < args.Length; i++)
            {
                if (args[i].Equals("-f", StringComparison.OrdinalIgnoreCase) &&
                    i + 1 < args.Length)
                {
                    filePath = args[i + 1];
                    i++;
                    continue;
                }

                if (args[i].Equals("-p", StringComparison.OrdinalIgnoreCase) &&
                    i + 1 < args.Length)
                {
                    propertyName = args[i + 1];
                    i++;
                    continue;
                }
                if (args[i].Equals("-enumerateProperties", StringComparison.OrdinalIgnoreCase))
                {
                    enumerateProperties = true;
                    continue;
                }
                if (args[i].Equals("-enumerateFileProperties", StringComparison.OrdinalIgnoreCase))
                {
                    enumerateFileProperties = true;
                    continue;
                }
                if (args[i].Equals("-getFileProperty", StringComparison.OrdinalIgnoreCase))
                {
                    getFileProperty = true;
                    continue;
                }
            }

            if (!(getFileProperty || enumerateProperties || enumerateFileProperties))
            {
                DisplayUsage();
                System.Environment.Exit(-1);
            }

            if (enumerateFileProperties && filePath == "")
            {
                DisplayUsage();
                System.Environment.Exit(-1);
            }

            if (getFileProperty && (filePath == "" || propertyName == ""))
            {
                DisplayUsage();
                System.Environment.Exit(-1);
            }

            //Enumerate all FSRM properties
            if (enumerateProperties)
            {
                Console.WriteLine("Enumerating Properties");
                EnumerateProperties(fsrmManager);
            }

            //Enumerate all FSRM properties on a file
            if (enumerateFileProperties)
            {
                Console.WriteLine("Enumerating File Properties - {0}", filePath);
                EnumerateFileProperties(filePath, fsrmManager);
            }

            //Get and print a particular FSRM property on a file
            if (getFileProperty)
            {
                Console.WriteLine("Getting the {0} Property from file {1}", propertyName, filePath);
                GetFileProperty(filePath, propertyName, fsrmManager);
            }
        }
        /*++

            Routine Main

        Description:

            This is the main routine of the program.

        Arguments:

            args - Command line arguments

        Return value:

            void

        Notes:

        --*/
        static void Main(string [] args)
        {
            //Create an instance of the IFsrmClassificationManager
            FsrmClassificationManager fsrmManager = new FsrmClassificationManager();

            string filePath = "";
            string propertyName = "";
            bool enumerateProperties = false;
            bool enumerateFileProperties = false;
            bool getFileProperty = false;

            //Parse command line arguments

            for(int i=0;i<args.Length;i++){

                if(args[i].Equals("-f", StringComparison.OrdinalIgnoreCase)
                    && i+1<args.Length)
                {
                    filePath = args[i+1];
                    i++;
                    continue;
                }

                if(args[i].Equals("-p", StringComparison.OrdinalIgnoreCase)
                    && i+1<args.Length)
                {
                    propertyName = args[i+1];
                    i++;
                    continue;
                }
                if(args[i].Equals("-enumerateProperties", StringComparison.OrdinalIgnoreCase))
                {
                    enumerateProperties = true;
                    continue;
                }
                if(args[i].Equals("-enumerateFileProperties", StringComparison.OrdinalIgnoreCase))
                {
                    enumerateFileProperties = true;
                    continue;
                }
                if(args[i].Equals("-getFileProperty", StringComparison.OrdinalIgnoreCase))
                {
                    getFileProperty = true;
                    continue;
                }
            }

            if (!(getFileProperty || enumerateProperties || enumerateFileProperties)) {

                DisplayUsage();
                System.Environment.Exit(-1);
            }

            if (enumerateFileProperties && filePath == "") {

                DisplayUsage();
                System.Environment.Exit( -1 );
            }

            if (getFileProperty && (filePath == "" || propertyName == "")) {

                DisplayUsage();
                System.Environment.Exit( -1 );
            }

            //Enumerate all FSRM properties
            if (enumerateProperties) {
                Console.WriteLine( "Enumerating Properties" );
                EnumerateProperties( fsrmManager );
            }

            //Enumerate all FSRM properties on a file
            if (enumerateFileProperties) {
                Console.WriteLine( "Enumerating File Properties - {0}",filePath );
                EnumerateFileProperties( filePath, fsrmManager );
            }

            //Get and print a particular FSRM property on a file
            if (getFileProperty) {
                Console.WriteLine( "Getting the {0} Property from file {1}",propertyName,filePath );
                GetFileProperty( filePath, propertyName, fsrmManager );
            }
        }