|
/*
Used to determine Browser Capabilities by the Browsers UserAgent string.
Copyright (C) 2002-Present Owen Brady (Ocean at xvision.com)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
using System;
namespace Ocean.Web.HttpCapabilities
{
/// <summary>
/// Configuration section handler used to gain acces to the browser config section to allow the
/// procesing of useragent and header information to determine the browser details.
/// </summary>
public class SectionHandler:System.Configuration.IConfigurationSectionHandler
{
/// <summary>
/// Implements configuration section handler, and returns a settings object which will use the config data to process the browser identification request.
/// </summary>
/// <param name="parent">
/// The configuration settings in a corresponding parent configuration section.
/// </param>
/// <param name="context">
/// An HttpConfigurationContext when Create is called from the ASP.NET configuration system. Otherwise, this parameter is reserved and is a null reference (Nothing in Visual Basic).
/// </param>
/// <param name="section">
/// The XmlNode that contains the configuration information from the configuration file. Provides direct access to the XML contents of the configuration section.
/// </param>
/// <returns>
/// A Settings object.
/// </returns>
public System.Object Create ( System.Object parent , System.Object context , System.Xml.XmlNode section )
{
Settings settings;
if(parent == null)
{
settings = Settings.Default;
}
else
{
settings = (Settings)parent;
}
if (section!=null)
{
settings.AddSettings(section);
}
else
{
settings.AddSettings(Ocean.Web.HttpCapabilities.EmbededFile.BrowserCap);
}
return settings;
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
Chris Maunder is the co-founder of
CodeProject and
ContentLab.com, and has been a prominent figure in the software development community for nearly 30 years. Hailing from Australia, Chris has a background in Mathematics, Astrophysics, Environmental Engineering and Defence Research. His programming endeavours span everything from FORTRAN on Super Computers, C++/MFC on Windows, through to to high-load .NET web applications and Python AI applications on everything from macOS to a Raspberry Pi. Chris is a full-stack developer who is as comfortable with SQL as he is with CSS.
In the late 1990s, he and his business partner David Cunningham recognized the need for a platform that would facilitate knowledge-sharing among developers, leading to the establishment of CodeProject.com in 1999. Chris's expertise in programming and his passion for fostering a collaborative environment have played a pivotal role in the success of CodeProject.com. Over the years, the website has grown into a vibrant community where programmers worldwide can connect, exchange ideas, and find solutions to coding challenges. Chris is a prolific contributor to the developer community through his articles and tutorials, and his latest passion project,
CodeProject.AI.
In addition to his work with CodeProject.com, Chris co-founded ContentLab and DeveloperMedia, two projects focussed on helping companies make their Software Projects a success. Chris's roles included Product Development, Content Creation, Client Satisfaction and Systems Automation.