GetString() public method

Get a string associated with the given configuration key. *
is thrown if the key maps to an /// object that is not a String. /// ///
public GetString ( String key ) : String
key String The configuration key. ///
return String
 public override void Init(ExtendedProperties configuration)
 {
     this.pluginNameAndPathSplitString = configuration.GetString("class.pluginNameAndPathSplitString");
     if (this.pluginNameAndPathSplitString == null)
         this.pluginNameAndPathSplitString = ":";
     this.viewNamePrefix = configuration.GetString("class.viewNamePrefix");
     if (this.viewNamePrefix == null)
         this.viewNamePrefix = "view/";
     this.viewNameSuffix = configuration.GetString("class.viewNameSuffix");
     if (this.viewNameSuffix == null)
         this.viewNameSuffix = ".html";
 }
Beispiel #2
0
        public void Test_ExtendedProperties()
        {
            FileInfo file = new FileInfo("test1.properties");
            StreamWriter sw = file.CreateText();
            sw.WriteLine("# lines starting with # are comments.  Blank lines are ignored");
            sw.WriteLine("");
            sw.WriteLine("# This is the simplest property");
            sw.WriteLine("key = value");
            sw.WriteLine("");
            sw.WriteLine("# A long property may be separated on multiple lines");
            sw.WriteLine("longvalue = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \\");
            sw.WriteLine("            aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
            sw.WriteLine("");
            sw.WriteLine("# This is a property with many tokens");
            sw.WriteLine("tokens_on_a_line = first token, second token");
            sw.WriteLine("");
            sw.WriteLine("# This sequence generates exactly the same result");
            sw.WriteLine("tokens_on_multiple_lines = first token");
            sw.WriteLine("tokens_on_multiple_lines = second token");
            sw.WriteLine("");
            sw.WriteLine("# commas may be escaped in tokens");
            sw.WriteLine("commas.excaped = Hi\\, what'up?");
            sw.Flush();
            sw.Close();

            StreamReader sr = file.OpenText();
            String s = sr.ReadToEnd();
            sr.Close();

            // TODO: could build string, then write, then read and compare.
            ExtendedProperties props = new ExtendedProperties(file.FullName);

            Assertion.Assert("expected to have 5 properties, had " + props.Count.ToString(), props.Count==5);

            Assertion.Assert("key was not correct: " + props.GetString("key"), props.GetString("key").Equals("value"));
            Assertion.Assert("commas.excaped was not correct: " + props.GetString("commas.excaped"), props.GetString("commas.excaped").Equals("Hi, what'up?"));

            Object o = props.GetProperty("tokens_on_a_line");
            Assertion.Assert("tokens_on_a_line was expected to be an ArrayList", (o is ArrayList));
            Assertion.Assert("tokens_on_a_line was expected to be an ArrayList with 2 elements", ((ArrayList)o).Count==2);

            StringWriter writer = new StringWriter();
            props.Save(writer, "header");
        }
	/// <summary>
	/// overridden LoadConfiguration that will create a properties file on the fly
	/// </summary>
	/// <returns></returns>
	protected override ExtendedProperties LoadConfiguration() {
	    ExtendedProperties p = new ExtendedProperties();

	    // override the loader path and log file locations based on where the physical application path is
	    p.SetProperty(NVelocity.Runtime.RuntimeConstants_Fields.FILE_RESOURCE_LOADER_PATH, context.Request.PhysicalApplicationPath);
	    p.SetProperty(NVelocity.Runtime.RuntimeConstants_Fields.RUNTIME_LOG,
			  context.Request.PhysicalApplicationPath + p.GetString(NVelocity.Runtime.RuntimeConstants_Fields.RUNTIME_LOG, "nvelocity.log"));

	    return p;
	}
        public NVelocityViewEngine(IDictionary properties)
        {
            if( properties == null ) properties = DEFAULT_PROPERTIES;

            var props = new ExtendedProperties();
            foreach(string key in properties.Keys)
            {
                props.AddProperty(key, properties[key]);
            }

            _masterFolder = props.GetString("master.folder", string.Empty);

            _engine = new VelocityEngine();
            _engine.Init(props);
        }
		/// <summary>
		/// This initialization is used by all resource
		/// loaders and must be called to set up common
		/// properties shared by all resource loaders
		/// </summary>
		public void CommonInit(IRuntimeServices rs, ExtendedProperties configuration)
		{
			rsvc = rs;

			// these two properties are not required for all loaders.
			// For example, for ClasspathLoader, what would cache mean? 
			// so adding default values which I think are the safest

			// don't cache, and modCheckInterval irrelevant...

			isCachingOn = configuration.GetBoolean("cache", false);
			modificationCheckInterval = configuration.GetLong("modificationCheckInterval", 0);

			// this is a must!
			className = configuration.GetString("class");
		}
	/// <summary> This initialization is used by all resource
	/// loaders and must be called to set up common
	/// properties shared by all resource loaders
	/// </summary>
	public virtual void  commonInit(RuntimeServices rs, ExtendedProperties configuration) {
	    this.rsvc = rs;

	    /*
	    *  these two properties are not required for all loaders.
	    *  For example, for ClasspathLoader, what would cache mean? 
	    *  so adding default values which I think are the safest
	    *
	    *  don't cache, and modCheckInterval irrelevant...
	    */

	    isCachingOn_Renamed_Field = configuration.GetBoolean("cache", false);
	    modificationCheckInterval = configuration.GetLong("modificationCheckInterval", 0);

	    /*
	    * this is a must!
	    */

	    className = configuration.GetString("class");
	}
        public virtual void Test_run()
        {
            System.IO.StreamWriter result = null;
            ExtendedProperties c = null;
            try {
            assureResultsDirectoryExists(RESULTS_DIR);
            c = new ExtendedProperties(TEST_CONFIG);
            result = new System.IO.StreamWriter(getFileName(RESULTS_DIR, "output", "res"));
            } catch (System.Exception e) {
            throw new System.Exception("Cannot setup CommonsExtPropTestCase!", e);
            }

            message(result, "Testing order of keys ...");
            showIterator(result, c.Keys);

            message(result, "Testing retrieval of CSV values ...");
            showVector(result, c.GetVector("resource.loader"));

            message(result, "Testing subset(prefix).getKeys() ...");
            ExtendedProperties subset = c.Subset("file.resource.loader");
            showIterator(result, subset.Keys);

            message(result, "Testing getVector(prefix) ...");
            showVector(result, subset.GetVector("path"));

            message(result, "Testing getString(key) ...");
            result.Write(c.GetString("config.string.value"));
            result.Write("\n\n");

            message(result, "Testing getBoolean(key) ...");
            //UPGRADE_TODO: The equivalent in .NET for method 'java.lang.Boolean.toString' may return a different value. 'ms-help://MS.VSCC/commoner/redir/redirect.htm?keyword="jlca1043"'
            result.Write(c.GetBoolean("config.boolean.value").ToString());
            result.Write("\n\n");

            message(result, "Testing getByte(key) ...");
            result.Write(c.GetByte("config.byte.value").ToString());
            result.Write("\n\n");

            message(result, "Testing getShort(key) ...");
            result.Write(c.GetShort("config.short.value").ToString());
            result.Write("\n\n");

            message(result, "Testing getInt(key) ...");
            result.Write(c.GetInt("config.int.value").ToString());
            result.Write("\n\n");

            message(result, "Testing getLong(key) ...");
            result.Write(c.GetLong("config.long.value").ToString());
            result.Write("\n\n");

            message(result, "Testing getFloat(key) ...");
            result.Write(c.GetFloat("config.float.value").ToString());
            result.Write("\n\n");

            message(result, "Testing getDouble(key) ...");
            result.Write(c.GetDouble("config.double.value").ToString());
            result.Write("\n\n");

            message(result, "Testing escaped-comma scalar...");
            result.Write(c.GetString("escape.comma1"));
            result.Write("\n\n");

            message(result, "Testing escaped-comma vector...");
            showVector(result, c.GetVector("escape.comma2"));
            result.Write("\n\n");

            result.Flush();
            result.Close();

            if (!isMatch(RESULTS_DIR, COMPARE_DIR, "output", "res", "cmp")) {
            Assertion.Fail("Output incorrect.");
            }
        }