Lucene.Net.Util.LuceneTestCase.NewDirectoryImpl C# (CSharp) Method

NewDirectoryImpl() private static method

private static NewDirectoryImpl ( Random random, string clazzName ) : Directory
random Random
clazzName string
return Directory
        private static Directory NewDirectoryImpl(Random random, string clazzName)
        {
            if (clazzName.Equals("random"))
            {
                if (Rarely(random))
                {
                    clazzName = RandomInts.RandomFrom(random, CORE_DIRECTORIES);
                }
                else
                {
                    clazzName = "RAMDirectory";
                }
            }

            if (VERBOSE)
            {
                Trace.TraceInformation("Type of Directory is : {0}", clazzName);
            }

            Type clazz = CommandLineUtil.LoadDirectoryClass(clazzName);
            // If it is a FSDirectory type, try its ctor(File)
            if (clazz.IsSubclassOf(typeof(FSDirectory)))
            {
                DirectoryInfo dir = CreateTempDir("index-" + clazzName);
                dir.Create(); // ensure it's created so we 'have' it.
                return NewFSDirectoryImpl(clazz, dir);
            }

            // try empty ctor
            return (Directory)Activator.CreateInstance(clazz);
        }