view Xml/IBBXmlResolver.cs @ 69:b5d7e8b93205

Re #30: Improve Translations API * Add translation sets * Add reset method to translations * Fix translations where API documentation (contract) didn't match behaviour
author IBBoard <dev@ibboard.co.uk>
date Tue, 06 Apr 2010 15:41:20 +0000
parents cc7fae81afec
children 0f88d32b22cc
line wrap: on
line source

// This file (IBBXmlResolver.cs) is a part of the IBBoard library and is copyright 2009 IBBoard.
//
// The file and the library/program it is in are licensed under the GNU LGPL license, either version 3 of the License or (at your option) any later version. Please see COPYING.LGPL for more information and the full license.

using System;
using System.Xml;

namespace IBBoard.Xml
{
	/// <summary>
	/// Summary description for IBBXmlResolver.
	/// </summary>
	public class IBBXmlResolver : XmlUrlResolver
	{
		private string baseFilePath = "";

		public IBBXmlResolver(string basePath)
		{
			baseFilePath = basePath;
		}

		public override Uri ResolveUri(Uri baseUri, string relativeUri)
		{
			if (relativeUri.StartsWith("dtds/"))
			{
				//Uri uri = base.ResolveUri(baseUri, relativeUri);
				return new Uri(Uri.UriSchemeFile + "://" + baseFilePath + Constants.DirectoryString + relativeUri);
			}
			else
			{
				return base.ResolveUri(baseUri, relativeUri);
			}
		}
	}
}