ymikulski 2003/01/23 13:50:47
Modified: csframework/src/cs/Service IServiceSelector.cs
IServiceable.cs
csframework/src/cs/Parameters Parameters.cs
csframework/src/cs/Activity ISuspendable.cs IStartable.cs
IInitializable.cs IExecutable.cs IDisposable.cs
csframework/src/cs/Context DefaultContext.cs
ContextException.cs
csframework/src/cs/Configuration IReconfigurable.cs
IConfiguration.cs IConfigurable.cs
DefaultConfigurationSerializer.cs
DefaultConfigurationSectionHandler.cs
DefaultConfiguration.cs ConfigurationException.cs
ConfigurationCollection.cs AbstractConfiguration.cs
csframework/src/cs/Util ContainerUtil.cs
Log:
no message
Revision Changes Path
1.3 +1 -1
jakarta-avalon-excalibur/csframework/src/cs/Service/IServiceSelector.cs
Index: IServiceSelector.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Service/IServiceSelector.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IServiceSelector.cs 25 Sep 2002 22:48:11 -0000 1.2
+++ IServiceSelector.cs 23 Jan 2003 21:50:33 -0000 1.3
@@ -10,7 +10,7 @@
namespace Apache.Avalon.Service
{
/// <summary>
- /// A <code>IServiceSelector</code> selects components based on a
+ /// A <c>IServiceSelector</c> selects components based on a
/// supplied policy. The contract is that all the components implement the
/// same role.
/// </summary>
1.3 +3 -3
jakarta-avalon-excalibur/csframework/src/cs/Service/IServiceable.cs
Index: IServiceable.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Service/IServiceable.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IServiceable.cs 25 Sep 2002 22:48:11 -0000 1.2
+++ IServiceable.cs 23 Jan 2003 21:50:33 -0000 1.3
@@ -24,14 +24,14 @@
public interface IServiceable
{
/// <summary>
- /// Pass the <see cref="IServiceManager"/> to the
<code>IServiceable</code>.
+ /// Pass the <see cref="IServiceManager"/> to the <c>IServicable</c>.
///
- /// The <code>IServiceable</code> implementation should use the
specified
+ /// The <c>IServiceable</c> implementation should use the specified
/// <see cref="IServiceManager"/> to acquire the components it needs
for execution.
/// </summary>
/// <param name="manager">
/// The <see cref="IServiceManager"/> which
- /// this <code>IServiceable</code> uses.
+ /// this <c>IServiceable</c> uses.
/// </param>
/// <exception cref="ServiceException">if an error occurs</exception>
void Service( IServiceManager manager );
1.7 +22 -26
jakarta-avalon-excalibur/csframework/src/cs/Parameters/Parameters.cs
Index: Parameters.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Parameters/Parameters.cs,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- Parameters.cs 19 Nov 2002 10:35:13 -0000 1.6
+++ Parameters.cs 23 Jan 2003 21:50:33 -0000 1.7
@@ -11,7 +11,6 @@
using Apache.Avalon.Util;
-
namespace Apache.Avalon.Parameter
{
/// <summary>
@@ -26,6 +25,10 @@
[Serializable]
public class Parameters: IEnumerable, ISerializable
{
+ private const string SERIAL_NAME_KEYS = "keys";
+ private const string SERIAL_NAME_VALUES = "values";
+ private const string SERIAL_NAME_READ_ONLY = "read-only";
+
private bool readOnly;
private Hashtable parameters = new Hashtable();
@@ -53,37 +56,18 @@
/// <param name="context"></param>
public Parameters (SerializationInfo info, StreamingContext context)
{
-
- parameters = new Hashtable();
-
- object[] keys = (object[]) info.GetValue("parameters-keys",
typeof(object));
- object[] values = (object[])
info.GetValue("parameters-values", typeof(object));
+ parameters = new
Hashtable(RuntimeSerializer.DeserializeIDictionary(info,
+ SERIAL_NAME_KEYS, SERIAL_NAME_VALUES));
- for (int i = 0; i < keys.Length; i++)
+ bool readOnlyMode = info.GetBoolean(SERIAL_NAME_READ_ONLY);
+
+ if (readOnlyMode)
{
- parameters[keys[i]] = values[i];
+ MakeReadOnly();
}
}
/// <summary>
- ///
- /// </summary>
- /// <param name="info"></param>
- /// <param name="context"></param>
- public void GetObjectData(SerializationInfo info, StreamingContext
context)
- {
-
- object[] keys = new object[parameters.Keys.Count];
- parameters.Keys.CopyTo(keys, 0);
-
- object[] values = new object[parameters.Values.Count];
- parameters.Values.CopyTo(values, 0);
-
- info.AddValue("parameters-keys", keys);
- info.AddValue("parameters-values", values);
- }
-
- /// <summary>
/// Gets a value indicating whether the parameters is read-only.
/// </summary>
/// <value>True if the parameters are read-only; otherwise,
false.</value>
@@ -244,6 +228,18 @@
{
return parameters.Count;
}
+ }
+
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="info"></param>
+ /// <param name="context"></param>
+ public void GetObjectData(SerializationInfo info, StreamingContext
context)
+ {
+ RuntimeSerializer.SerializeIDictionary(info, parameters,
SERIAL_NAME_KEYS, SERIAL_NAME_VALUES);
+
+ info.AddValue(SERIAL_NAME_READ_ONLY, IsReadOnly);
}
}
}
1.3 +2 -2
jakarta-avalon-excalibur/csframework/src/cs/Activity/ISuspendable.cs
Index: ISuspendable.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Activity/ISuspendable.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ISuspendable.cs 25 Sep 2002 22:46:30 -0000 1.2
+++ ISuspendable.cs 23 Jan 2003 21:50:34 -0000 1.3
@@ -10,10 +10,10 @@
namespace Apache.Avalon.Activity
{
/// <summary>
- /// The ISuspendable interface is used when a component
+ /// The <see cref="ISuspendable"/> interface is used when a component
/// will need to temporarily halt execution of a component.
/// The execution may be halted so that you can reconfigure/
- /// recompose/recontextualize component.
+ /// recompose/recontextualize the component.
/// </summary>
public interface ISuspendable
{
1.3 +4 -4
jakarta-avalon-excalibur/csframework/src/cs/Activity/IStartable.cs
Index: IStartable.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Activity/IStartable.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IStartable.cs 25 Sep 2002 22:46:30 -0000 1.2
+++ IStartable.cs 23 Jan 2003 21:50:36 -0000 1.3
@@ -10,7 +10,7 @@
namespace Apache.Avalon.Activity
{
/// <summary>
- /// The IStartable interface is used when components need to
+ /// The <see cref="IStartable"/> interface is used when components need to
/// be "running" to be active. It provides a method through
/// which components can be "started" and "stopped" without
/// requiring a thread.
@@ -24,8 +24,8 @@
/// <summary>
/// Starts the component.
/// </summary>
- /// <exception cref="System.Exception">
- /// The Exception if Component can not be started.
+ /// <exception cref="Exception">
+ /// The Exception if the component can not be started.
/// </exception>
void Start();
@@ -33,7 +33,7 @@
/// Stops the component.
/// </summary>
/// <exception cref="System.Exception">
- /// The Exception if the Component can not be stopped.
+ /// The Exception if the component can not be stopped.
/// </exception>
void Stop();
}
1.3 +7 -6
jakarta-avalon-excalibur/csframework/src/cs/Activity/IInitializable.cs
Index: IInitializable.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Activity/IInitializable.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IInitializable.cs 25 Sep 2002 22:46:30 -0000 1.2
+++ IInitializable.cs 23 Jan 2003 21:50:36 -0000 1.3
@@ -10,18 +10,19 @@
namespace Apache.Avalon.Activity
{
/// <summary>
- /// The IInitializable interface is used by components
- /// that need to allocate resources prior
- /// to them becoming active.
+ /// The <see cref="IInitializable"/> interface is used by components
+ /// that need to allocate resources prior to them becoming active.
/// </summary>
public interface IInitializable
{
/// <summary>
/// Initialializes the component.
- /// An Initialization includes allocating any resources
- /// required throughout the components lifecycle.
/// </summary>
- /// <exception cref="System.Exception">
+ /// <remarks>
+ /// An Initialization includes allocating any resources
+ /// required throughout the component lifecycle.
+ /// </remarks>
+ /// <exception cref="Exception">
/// The Exception if an error occurs.
/// </exception>
void Initialize();
1.3 +2 -2
jakarta-avalon-excalibur/csframework/src/cs/Activity/IExecutable.cs
Index: IExecutable.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Activity/IExecutable.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IExecutable.cs 25 Sep 2002 22:46:30 -0000 1.2
+++ IExecutable.cs 23 Jan 2003 21:50:36 -0000 1.3
@@ -10,7 +10,7 @@
namespace Apache.Avalon.Activity
{
/// <summary>
- /// The IExecutable can be implemented by components
+ /// The <see cref="IExecutable"/> can be implemented by components
/// that need to perform some work.
/// </summary>
/// <remarks>
@@ -22,7 +22,7 @@
/// <summary>
/// Executes the action associated with this component.
/// </summary>
- /// <exception cref="System.Exception">
+ /// <exception cref="Exception">
/// The Exception if an error occurs.
/// </exception>
void Execute();
1.3 +5 -3
jakarta-avalon-excalibur/csframework/src/cs/Activity/IDisposable.cs
Index: IDisposable.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Activity/IDisposable.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IDisposable.cs 25 Sep 2002 22:46:30 -0000 1.2
+++ IDisposable.cs 23 Jan 2003 21:50:36 -0000 1.3
@@ -17,10 +17,12 @@
{
/// <summary>
/// The Dispose operation is called at the end of a components
lifecycle.
- /// This method will be called after IStartable.stop() method (if
implemented
- /// by component). Components use this method to release and destroy
any
- /// resources that the Component owns.
/// </summary>
+ /// <remarks>
+ /// This method will be called after <see cref="IStartable.Stop()"/>
method
+ /// (if implemented by the component). Components use this method to
release
+ /// and destroy any resources that the component owns.
+ /// </remarks>
void Dispose();
}
}
1.5 +50 -9
jakarta-avalon-excalibur/csframework/src/cs/Context/DefaultContext.cs
Index: DefaultContext.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Context/DefaultContext.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- DefaultContext.cs 19 Nov 2002 10:35:13 -0000 1.4
+++ DefaultContext.cs 23 Jan 2003 21:50:43 -0000 1.5
@@ -7,27 +7,32 @@
//------------------------------------------------------------------------------
using System;
using System.Collections;
+using System.Runtime.Serialization;
+
+using Apache.Avalon.Util;
namespace Apache.Avalon.Context
{
/// <summary>
/// Default implementation of IContext.
/// </summary>
- public class DefaultContext: MarshalByRefObject, IContext, IEnumerable
+ [Serializable]
+ public class DefaultContext: MarshalByRefObject, IContext, IEnumerable,
ISerializable
{
+ private const string SERIAL_NAME_KEYS = "keys";
+ private const string SERIAL_NAME_VALUES = "values";
+ private const string SERIAL_NAME_PARENT = "parent";
+ private const string SERIAL_NAME_READ_ONLY = "read-only";
+
private IDictionary components;
private IContext parent;
private bool readOnly;
/// <summary>
- /// Creates a context with specified data and parent.
+ /// Creates a context with no parent.
/// </summary>
- /// <param name="data">The Context data.</param>
- /// <param name="context">The Parent context (may be null).</param>
- public DefaultContext(IDictionary data, IContext context)
+ public DefaultContext(): this ((IContext) null)
{
- parent = context;
- components = data;
}
/// <summary>
@@ -47,10 +52,34 @@
}
/// <summary>
- /// Creates a context with no parent.
+ /// Creates a context with specified data and parent.
/// </summary>
- public DefaultContext(): this ((IContext) null)
+ /// <param name="data">The Context data.</param>
+ /// <param name="context">The Parent context (may be null).</param>
+ public DefaultContext(IDictionary data, IContext context)
{
+ parent = context;
+ components = data;
+ }
+
+ /// <summary>
+ /// Creates a new Parameters instance.
+ /// </summary>
+ /// <param name="info"></param>
+ /// <param name="context"></param>
+ public DefaultContext (SerializationInfo info, StreamingContext
context)
+ {
+ components = new
Hashtable(RuntimeSerializer.DeserializeIDictionary(info,
+ SERIAL_NAME_KEYS, SERIAL_NAME_VALUES));
+
+ parent = (IContext) info.GetValue(SERIAL_NAME_PARENT,
typeof(IContext));
+
+ bool readOnlyMode = info.GetBoolean(SERIAL_NAME_READ_ONLY);
+
+ if (readOnlyMode)
+ {
+ MakeReadOnly();
+ }
}
/// <summary>
@@ -164,5 +193,17 @@
return components.GetEnumerator();
}
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="info"></param>
+ /// <param name="context"></param>
+ public void GetObjectData(SerializationInfo info, StreamingContext
context)
+ {
+ RuntimeSerializer.SerializeIDictionary(info, components,
SERIAL_NAME_KEYS, SERIAL_NAME_VALUES);
+
+ info.AddValue(SERIAL_NAME_PARENT, parent);
+ info.AddValue(SERIAL_NAME_READ_ONLY, IsReadOnly);
+ }
}
}
1.4 +3 -3
jakarta-avalon-excalibur/csframework/src/cs/Context/ContextException.cs
Index: ContextException.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Context/ContextException.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ContextException.cs 8 Nov 2002 20:38:17 -0000 1.3
+++ ContextException.cs 23 Jan 2003 21:50:43 -0000 1.4
@@ -21,14 +21,14 @@
public class ContextException: Exception
{
/// <summary>
- /// Constructs a new <code>ContextException</code> instance.
+ /// Constructs a new <c>ContextException</c> instance.
/// </summary>
public ContextException(): this(null)
{
}
/// <summary>
- /// Constructs a new <code>ContextException</code> instance.
+ /// Constructs a new <c>ContextException</c> instance.
/// </summary>
/// <param name="message">The Detail message for this
exception.</param>
public ContextException(string message): this(message, null)
@@ -36,7 +36,7 @@
}
/// <summary>
- /// Constructs a new <code>ContextException</code> instance.
+ /// Constructs a new <c>ContextException</c> instance.
/// </summary>
/// <param name="message">The Detail message for this
exception.</param>
/// <param name="inner">The Root cause of the exception.</param>
1.3 +5 -0
jakarta-avalon-excalibur/csframework/src/cs/Configuration/IReconfigurable.cs
Index: IReconfigurable.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/IReconfigurable.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IReconfigurable.cs 25 Sep 2002 22:46:57 -0000 1.2
+++ IReconfigurable.cs 23 Jan 2003 21:50:43 -0000 1.3
@@ -14,6 +14,11 @@
/// </summary>
public interface IReconfigurable: IConfigurable
{
+ /// <summary>
+ /// Allows reconfiguration at runtime.
+ /// </summary>
+ /// <param name="configuration">An <see cref="IConfiguration"/>
value.</param>
+ /// <exception cref="ConfigurationException">If an error
occurs.</exception>
void Reconfigure( IConfiguration configuration );
}
}
1.4 +24 -26
jakarta-avalon-excalibur/csframework/src/cs/Configuration/IConfiguration.cs
Index: IConfiguration.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/IConfiguration.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- IConfiguration.cs 25 Sep 2002 22:46:57 -0000 1.3
+++ IConfiguration.cs 23 Jan 2003 21:50:43 -0000 1.4
@@ -11,13 +11,9 @@
namespace Apache.Avalon.Configuration
{
/// <summary>
- /// <c>IConfiguration</c> is a interface encapsulating a configuration node
+ /// <see cref="IConfiguration"/> is a interface encapsulating a configuration
node
/// used to retrieve configuration values.
/// </summary>
- /// <remarks>
- /// This is a "read only" interface preventing applications from modifying
their
- /// own configurations. Once it is created, the information never changes.
- /// </remarks>
public interface IConfiguration
{
/// <summary>
@@ -32,10 +28,10 @@
}
/// <summary>
- /// Gets a string describing location of <c>IConfiguration</c>.
+ /// Gets a string describing location of <see cref="IConfiguration"/>.
/// </summary>
/// <value>
- /// A String describing location of <c>IConfiguration</c>.
+ /// A String describing location of <see cref="IConfiguration"/>.
/// </value>
string Location
{
@@ -54,7 +50,7 @@
}
/// <summary>
- /// Gets the Namespace of the node.
+ /// Gets the namespace of the node.
/// </summary>
/// <value>
/// The Namespace of the node.
@@ -65,7 +61,7 @@
}
/// <summary>
- /// Gets the Prefix of the node.
+ /// Gets the prefix of the node.
/// </summary>
/// <value>
/// The Prefix of the node.
@@ -76,10 +72,10 @@
}
/// <summary>
- /// Gets a value indicating whether the <c>IConfiguration</c> is
read-only.
+ /// Gets a value indicating whether the <see cref="IConfiguration"/>
is read-only.
/// </summary>
/// <value>
- /// True if the <c>IConfiguration</c> is read-only; otherwise, false.
+ /// <see langword="true"/> if the <see cref="IConfiguration"/> is
read-only; otherwise, <see langword="false"/>.
/// </value>
bool IsReadOnly
{
@@ -87,7 +83,7 @@
}
/// <summary>
- /// Gets an <see cref="ConfigurationCollection"/> of
<c>IConfiguration</c>
+ /// Gets an <see cref="ConfigurationCollection"/> of <see
cref="IConfiguration"/>
/// elements containing all node children.
/// </summary>
/// <value>The Collection of child nodes.</value>
@@ -105,50 +101,52 @@
}
/// <summary>
- /// Gets a <c>IConfiguration</c> instance encapsulating the
specified
+ /// Gets a <see cref="IConfiguration"/> instance encapsulating the
specified
/// child node.
/// </summary>
/// <param name="child">The Name of the child node.</param>
/// <param name="createNew">
- /// If <c>true</c>, a new <c>IConfiguration</c>
+ /// If <see langword="true"/>, a new <see cref="IConfiguration"/>
/// will be created and returned if the specified child does not exist.
- /// If <c>false</c>, <c>null</c> will be returned when the specified
+ /// If <see langword="false"/>, <see langword="null"/> will be
returned when the specified
/// child doesn't exist.
/// </param>
- /// <returns><c>IConfiguration</c></returns>
+ /// <returns>
+ /// The <see cref="IConfiguration"/> instance encapsulating the
specified child node.
+ /// </returns>
IConfiguration GetChild(string child, bool createNew);
/// <summary>
- /// Return an <see cref="ConfigurationCollection"/> of
<c>IConfiguration</c>
+ /// Return an <see cref="ConfigurationCollection"/> of <see
cref="IConfiguration"/>
/// elements containing all node children with the specified name.
/// </summary>
/// <param name="name">The Name of the children to get.</param>
/// <returns>
- /// An <see cref="ConfigurationCollection"/> of
- /// <c>IConfiguration</c> objects children of
+ /// The <see cref="ConfigurationCollection"/> of
+ /// <see cref="IConfiguration"/> children of
/// this associated with the given name.
/// </returns>
ConfigurationCollection GetChildren(string name);
/// <summary>
- /// Gets the Value of the node and converts it
- /// into specified <see cref="System.Type"/>.
+ /// Gets the value of the node and converts it
+ /// into specified <see cref="Type"/>.
/// </summary>
- /// <param name="type">The <see cref="System.Type"/></param>
+ /// <param name="type">The <see cref="Type"/></param>
/// <param name="defaultValue">
- /// The defaultValue returned if the convertion fails.
+ /// The Default value returned if the convertion fails.
/// </param>
/// <returns>The Value converted into the specified type.</returns>
object GetValue(Type type, object defaultValue);
/// <summary>
/// Gets the value of specified attribute and
- /// converts it into specified <see cref="System.Type"/>.
+ /// converts it into specified <see cref="Type"/>.
/// </summary>
/// <param name="name">The Name of the attribute you ask the value
of.</param>
- /// <param name="type">The <see cref="System.Type"/></param>
+ /// <param name="type">The <see cref="Type"/></param>
/// <param name="defaultValue">
- /// The defaultValue returned if the convertion fails.
+ /// The Default value returned if the convertion fails.
/// </param>
/// <returns>The Value of the attribute.</returns>
object GetAttribute(string name, Type type, object defaultValue);
1.3 +13 -11
jakarta-avalon-excalibur/csframework/src/cs/Configuration/IConfigurable.cs
Index: IConfigurable.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/IConfigurable.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IConfigurable.cs 25 Sep 2002 22:46:57 -0000 1.2
+++ IConfigurable.cs 23 Jan 2003 21:50:43 -0000 1.3
@@ -12,25 +12,27 @@
/// <summary>
/// This interface should be implemented by classes that need to be
/// configured with custom parameters before initialization.
- /// <para>
- /// The contract surrounding a <c>IConfigurable</c> is that the
- /// instantiating entity must call the <c>Configure</c>
- /// method before it is valid. The <c>Configure</c> method
- /// must be called after the constructor, and before any other method.
- /// </para>
/// </summary>
+ /// <remarks>
+ /// The contract surrounding a <see cref="IConfigurable"/> is that the
+ /// instantiating entity must call the <see
cref="IConfigurable.Configure(IConfiguration configuration)"/>
+ /// method before it is valid.
+ /// The <see cref="IConfigurable.Configure(IConfiguration configuration)"/>
method
+ /// must be called after the constructor, and before any other method.
+ /// </remarks>
/// <remarks>
/// Note that this interface is incompatible with <see
cref="Apache.Avalon.Parameter.IParameterizable"/>.
/// </remarks>
public interface IConfigurable
{
/// <summary>
- ///
- /// Pass the <see cref="IConfiguration"/> to the <c>IConfigurable</c>
- /// class. This method must always be called after the constructor
- /// and before any other method.
+ /// Pass the <see cref="IConfiguration"/> to the <see
cref="IConfigurable"/> instanse.
/// </summary>
- /// <param name="configuration">The Configuration</param>
+ /// <remarks>
+ /// This method must always be called after the constructor and before
any other method.
+ /// </remarks>
+ /// <param name="configuration">The <see cref="IConfiguration"/> to
pass.</param>
+ /// <exception cref="ConfigurationException">If an error
occurs.</exception>
void Configure( IConfiguration configuration );
}
}
1.8 +9 -9
jakarta-avalon-excalibur/csframework/src/cs/Configuration/DefaultConfigurationSerializer.cs
Index: DefaultConfigurationSerializer.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/DefaultConfigurationSerializer.cs,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- DefaultConfigurationSerializer.cs 19 Nov 2002 11:34:02 -0000 1.7
+++ DefaultConfigurationSerializer.cs 23 Jan 2003 21:50:43 -0000 1.8
@@ -75,8 +75,8 @@
/// <summary>
/// Makes a deserialization of a <see cref="DefaultConfiguration"/>
instance.
/// </summary>
- /// <param name="fileName">The name of the file, containing the XML
document to deserialize.</param>
- /// <returns>A deserialized <see cref="DefaultConfiguration"/>
instance.</returns>
+ /// <param name="fileName">The Name of the file, containing the XML
document to deserialize.</param>
+ /// <returns>A Deserialized <see cref="DefaultConfiguration"/>
instance.</returns>
public static DefaultConfiguration Deserialize(string fileName)
{
DefaultConfiguration configuration = null;
@@ -95,11 +95,11 @@
}
/// <summary>
- /// Makes a deserialization of <see cref="System.Xml.XmlNode"/>
instance.
+ /// Makes a deserialization of <see cref="XmlNode"/> instance.
/// </summary>
- /// <param name="node">The node to deserialize.</param>
- /// <param name="parent">A deserialized <see
cref="DefaultConfiguration"/> parent instance.</param>
- /// <returns>A deserialized <see cref="DefaultConfiguration"/>
instance.</returns>
+ /// <param name="node">The Node to deserialize.</param>
+ /// <param name="parent">A Deserialized <see
cref="DefaultConfiguration"/> parent instance.</param>
+ /// <returns>A Deserialized <see cref="DefaultConfiguration"/>
instance.</returns>
public static DefaultConfiguration Deserialize(XmlNode node,
DefaultConfiguration parent)
{
// node deserialization
@@ -145,10 +145,10 @@
}
/// <summary>
- /// Makes a deserialization of <see cref="System.Xml.XmlNode"/>
instance.
+ /// Makes a deserialization of <see cref="XmlNode"/> instance.
/// </summary>
- /// <param name="node">The node to deserialize.</param>
- /// <returns>A deserialized <see cref="DefaultConfiguration"/>
instance.</returns>
+ /// <param name="node">The Node to deserialize.</param>
+ /// <returns>A Deserialized <see cref="DefaultConfiguration"/>
instance.</returns>
public static DefaultConfiguration Deserialize(XmlNode node)
{
return Deserialize(node, null);
1.3 +2 -2
jakarta-avalon-excalibur/csframework/src/cs/Configuration/DefaultConfigurationSectionHandler.cs
Index: DefaultConfigurationSectionHandler.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/DefaultConfigurationSectionHandler.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- DefaultConfigurationSectionHandler.cs 25 Sep 2002 22:46:57 -0000 1.2
+++ DefaultConfigurationSectionHandler.cs 23 Jan 2003 21:50:43 -0000 1.3
@@ -29,7 +29,7 @@
/// <seealso cref="IConfigurationSectionHandler"/>
/// </summary>
/// <param name="parent">
- /// The configuration settings in a corresponding parent configuration
section.
+ /// The Configuration settings in a corresponding parent configuration
section.
/// </param>
/// <param name="configContext">
/// <see cref="IConfigurationSectionHandler"/>.
@@ -38,7 +38,7 @@
/// Contains the configuration information from the configuration file.
/// </param>
/// <returns>
- /// A DefaultConfiguration instance based on a configuration section.
+ /// A <see cref="DefaultConfiguration"/> instance based on a
configuration section.
/// </returns>
public object Create(object parent, object configContext, XmlNode
section)
{
1.3 +84 -18
jakarta-avalon-excalibur/csframework/src/cs/Configuration/DefaultConfiguration.cs
Index: DefaultConfiguration.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/DefaultConfiguration.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- DefaultConfiguration.cs 25 Sep 2002 22:46:57 -0000 1.2
+++ DefaultConfiguration.cs 23 Jan 2003 21:50:43 -0000 1.3
@@ -7,6 +7,9 @@
//------------------------------------------------------------------------------
using System;
using System.Collections;
+using System.Runtime.Serialization;
+
+using Apache.Avalon.Util;
namespace Apache.Avalon.Configuration
{
@@ -14,21 +17,30 @@
/// This is the default <see cref="IConfiguration"/> implementation.
/// </summary>
[Serializable]
- public class DefaultConfiguration: AbstractConfiguration
+ public class DefaultConfiguration: AbstractConfiguration, ISerializable
{
-
+ private const string SERIAL_NAME_NAME = "name";
+ private const string SERIAL_NAME_LOCATION = "location";
+ private const string SERIAL_NAME_NAMESPACE = "namespace";
+ private const string SERIAL_NAME_PREFIX = "prefix";
+ private const string SERIAL_NAME_VALUE = "value";
+ private const string SERIAL_NAME_READ_ONLY = "read-only";
+ private const string SERIAL_NAME_ATTRIBUTE_KEYS = "attribute-keys";
+ private const string SERIAL_NAME_ATTRIBUTE_VALUES = "attribute-values";
+ private const string SERIAL_NAME_CHILDREN = "children";
+
/// <summary>
- /// Creates a new <c>DefaultConfiguration</c> instance.
+ /// Creates a new <see cref="DefaultConfiguration"/> instance.
/// </summary>
public DefaultConfiguration()
{
}
/// <summary>
- /// Creates a new <c>DefaultConfiguration</c> instance.
+ /// Creates a new <see cref="DefaultConfiguration"/> instance.
/// </summary>
- /// <param name="name"></param>
- /// <param name="location"></param>
+ /// <param name="name">The Name of the node.</param>
+ /// <param name="location">The Location of the node.</param>
public DefaultConfiguration(string name, string location )
{
Name = name;
@@ -36,12 +48,12 @@
}
/// <summary>
- /// Creates a new <c>DefaultConfiguration</c> instance.
+ /// Creates a new <see cref="DefaultConfiguration"/> instance.
/// </summary>
- /// <param name="name"></param>
- /// <param name="location"></param>
- /// <param name="ns"></param>
- /// <param name="prefix"></param>
+ /// <param name="name">The Name of the node.</param>
+ /// <param name="location">The Location of the node.</param>
+ /// <param name="ns">The Namespace of the node.</param>
+ /// <param name="prefix">The Prefix of the node.</param>
public DefaultConfiguration(string name, string location, string ns,
string prefix): this(name, location)
{
Namespace = ns;
@@ -49,17 +61,49 @@
}
/// <summary>
- /// Gets a <c>IConfiguration</c> instance encapsulating the
specified
+ /// Creates a new <see cref="DefaultConfiguration"/> instance.
+ /// </summary>
+ /// <param name="info">The <see cref="SerializationInfo"/> to populate
with data.</param>
+ /// <param name="context">The destination for this
serialization.</param>
+ public DefaultConfiguration(SerializationInfo info, StreamingContext
context)
+ {
+ Name = info.GetString(SERIAL_NAME_NAME);
+ Location = info.GetString(SERIAL_NAME_LOCATION);
+ Namespace = info.GetString(SERIAL_NAME_NAMESPACE);
+ Prefix = info.GetString(SERIAL_NAME_PREFIX);
+
+ Value = info.GetString(SERIAL_NAME_VALUE);
+
+ Attributes = new
Hashtable(RuntimeSerializer.DeserializeIDictionary(info,
+ SERIAL_NAME_ATTRIBUTE_KEYS,
SERIAL_NAME_ATTRIBUTE_VALUES));
+
+ foreach (IConfiguration config in
RuntimeSerializer.DeserializeArray(info, SERIAL_NAME_CHILDREN))
+ {
+ Children.Add((IConfiguration) config);
+ }
+
+ bool readOnlyMode = info.GetBoolean(SERIAL_NAME_READ_ONLY);
+
+ if (readOnlyMode)
+ {
+ MakeReadOnly();
+ }
+ }
+
+ /// <summary>
+ /// Gets an <see cref="IConfiguration"/> instance encapsulating
the specified
/// child node.
/// </summary>
/// <param name="name">The Name of the child node.</param>
/// <param name="createNew">
- /// If <c>true</c>, a new <c>IConfiguration</c>
+ /// If <see langword="true"/>, a new <see cref="IConfiguration"/>
/// will be created and returned if the specified child does not exist.
- /// If <c>false</c>, <c>null</c> will be returned when the specified
+ /// If <see langword="true"/>, <see langword="null"/> will be returned
when the specified
/// child doesn't exist.
/// </param>
- /// <returns><c>IConfiguration</c></returns>
+ /// <returns>
+ /// The <see cref="IConfiguration"/> instance encapsulating the
specified child node.
+ /// </returns>
public override IConfiguration GetChild(string name, bool createNew )
{
IConfiguration result = null;
@@ -88,13 +132,12 @@
}
/// <summary>
- /// Return an <see cref="ConfigurationCollection"/> of
<c>IConfiguration</c>
+ /// Return a collection of <see cref="IConfiguration"/>
/// elements containing all node children with the specified name.
/// </summary>
/// <param name="name">The Name of the children to get.</param>
/// <returns>
- /// An <see cref="ConfigurationCollection"/> of
- /// <c>IConfiguration</c> objects children of
+ /// The collection of <see cref="IConfiguration"/> children of
/// this associated with the given name.
/// </returns>
public override ConfigurationCollection GetChildren(string name)
@@ -110,6 +153,29 @@
}
return result;
+ }
+
+ /// <summary>
+ /// Populates a <see cref="SerializationInfo"/> with the data needed
+ /// to serialize the target object.
+ /// </summary>
+ /// <param name="info">The <see cref="SerializationInfo"/> to populate
with data.</param>
+ /// <param name="context">The destination for this
serialization.</param>
+ public void GetObjectData(SerializationInfo info, StreamingContext
context)
+ {
+ info.AddValue(SERIAL_NAME_NAME, Name);
+ info.AddValue(SERIAL_NAME_LOCATION, Location);
+ info.AddValue(SERIAL_NAME_NAMESPACE, Namespace);
+ info.AddValue(SERIAL_NAME_PREFIX, Prefix);
+
+ info.AddValue(SERIAL_NAME_VALUE, Value);
+
+ info.AddValue(SERIAL_NAME_READ_ONLY, IsReadOnly);
+
+ RuntimeSerializer.SerializeIDictionary(info, Attributes,
+ SERIAL_NAME_ATTRIBUTE_KEYS,
SERIAL_NAME_ATTRIBUTE_VALUES);
+
+ RuntimeSerializer.SerializeICollection(info, Children,
SERIAL_NAME_CHILDREN);
}
}
}
1.4 +3 -3
jakarta-avalon-excalibur/csframework/src/cs/Configuration/ConfigurationException.cs
Index: ConfigurationException.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/ConfigurationException.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ConfigurationException.cs 8 Nov 2002 20:38:17 -0000 1.3
+++ ConfigurationException.cs 23 Jan 2003 21:50:43 -0000 1.4
@@ -17,14 +17,14 @@
public class ConfigurationException: Exception
{
/// <summary>
- /// Constructs a new <c>ConfigurationException</c> instance.
+ /// Constructs a new <see cref="ConfigurationException"/> instance.
/// </summary>
public ConfigurationException(): this(null)
{
}
/// <summary>
- /// Constructs a new <c>ConfigurationException</c> instance.
+ /// Constructs a new <see cref="ConfigurationException"/> instance.
/// </summary>
/// <param name="message">The Detail message of the exception.</param>
public ConfigurationException(string message): this(message, null)
@@ -32,7 +32,7 @@
}
/// <summary>
- /// Constructs a new <c>ConfigurationException</c> instance.
+ /// Constructs a new <see cref="ConfigurationException"/> instance.
/// </summary>
/// <param name="message">The Detail message of the exception.</param>
/// <param name="inner">The Root cause of the exception.</param>
1.5 +24 -59
jakarta-avalon-excalibur/csframework/src/cs/Configuration/ConfigurationCollection.cs
Index: ConfigurationCollection.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/ConfigurationCollection.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ConfigurationCollection.cs 25 Sep 2002 22:46:57 -0000 1.4
+++ ConfigurationCollection.cs 23 Jan 2003 21:50:43 -0000 1.5
@@ -35,8 +35,9 @@
/// <summary>
/// Creates a new instance of <c>ConfigurationCollection</c>.
/// </summary>
- public ConfigurationCollection(IConfiguration[] value): this(new
ConfigurationCollection(value))
+ public ConfigurationCollection(IConfiguration[] value)
{
+ this.AddRange(value);
}
/// <summary>
@@ -81,12 +82,22 @@
return List.Add(value);
}
+ /// <summary>
+ /// Adds an array of <see cref="IConfiguration"/>.
+ /// </summary>
+ /// <param name="value">The Array of <see cref="IConfiguration"/> to
add.</param>
public void AddRange(IConfiguration[] value)
{
-
- AddRange(new ConfigurationCollection(value));
+ foreach(IConfiguration configuration in value)
+ {
+ this.Add(configuration);
+ }
}
+ /// <summary>
+ /// Adds a <see cref="ConfigurationCollection"/>.
+ /// </summary>
+ /// <param name="value">The <see cref="ConfigurationCollection"/> to
add.</param>
public void AddRange(ConfigurationCollection value)
{
foreach(IConfiguration configuration in value)
@@ -95,7 +106,14 @@
}
}
- public void CopyTo(IConfiguration[] array, int index)
+ /// <summary>
+ /// Copies the elements to a one-dimensional <see cref="Array"/>
instance at the specified index.
+ /// </summary>
+ /// <param name="array">
+ /// The one-dimensional <see cref="Array"/> must have zero-based
indexing.
+ /// </param>
+ /// <param name="index">The zero-based index in array at which copying
begins.</param>
+ public void CopyTo(IConfiguration[] array, int index)
{
List.CopyTo(array, index);
@@ -117,7 +135,7 @@
}
/// <summary>
- /// Retuns the index of a <see cref="IConfiguration"/> in
+ /// Gets the index of a <see cref="IConfiguration"/> in
/// the collection.
/// </summary>
/// <param name="value">The <see cref="IConfiguration"/> to
locate.</param>
@@ -142,22 +160,13 @@
List.Insert(index, value);
}
-
- /// <summary>
- /// Returns an enumerator that can iterate through the collection.
- /// </summary>
- public new ConfigurationEnumerator GetEnumerator()
- {
-
- return new ConfigurationEnumerator(this);
- }
/// <summary>
/// Removes a specific <see cref="IConfiguration"/> from the
/// collection.
/// </summary>
/// <param name="value">The <see cref="IConfiguration"/> to remove
from the collection.</param>
- /// <exception cref="System.ArgumentException">
+ /// <exception cref="ArgumentException">
/// <paramref name="value"/> is not found in the collection.
/// </exception>
public void Remove(IConfiguration value)
@@ -165,49 +174,5 @@
List.Remove(value);
}
-
- public class ConfigurationEnumerator : IEnumerator
- {
- private IEnumerator baseEnumerator;
-
- public ConfigurationEnumerator(ConfigurationCollection
mappings)
- {
- this.baseEnumerator = mappings.GetEnumerator();
- }
-
-/*
- public IConfiguration Current
- {
- get
- {
- return (IConfiguration) baseEnumerator.Current;
- }
-
- }
-*/
-
- public bool MoveNext()
- {
-
- return baseEnumerator.MoveNext();
- }
-
- object IEnumerator.Current
- {
- get
- {
- return baseEnumerator.Current;
- }
-
- }
-
- public void Reset()
- {
-
- baseEnumerator.Reset();
- }
-
- }
-
}
}
1.4 +49 -30
jakarta-avalon-excalibur/csframework/src/cs/Configuration/AbstractConfiguration.cs
Index: AbstractConfiguration.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Configuration/AbstractConfiguration.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- AbstractConfiguration.cs 25 Sep 2002 22:46:57 -0000 1.3
+++ AbstractConfiguration.cs 23 Jan 2003 21:50:43 -0000 1.4
@@ -29,10 +29,11 @@
private ConfigurationCollection children = new
ConfigurationCollection();
/// <summary>
- /// Gets a value indicating whether the <c>IConfiguration</c> is
read-only.
+ /// Gets a value indicating whether the <see cref="IConfiguration"/>
is read-only.
/// </summary>
/// <value>
- /// True if the <c>IConfiguration</c> is read-only; otherwise, false.
+ /// <see langword="true"> if the <see cref="IConfiguration"/> is
read-only;
+ /// otherwise, <see langword="false">.
/// </value>
public bool IsReadOnly
{
@@ -43,10 +44,10 @@
}
/// <summary>
- /// Gets the name of the node.
+ /// Gets the name of the <see cref="IConfiguration"/>.
/// </summary>
/// <value>
- /// The Name of the node.
+ /// The Name of the <see cref="IConfiguration"/>.
/// </value>
public string Name
{
@@ -63,10 +64,10 @@
}
/// <summary>
- /// Gets a string describing location of <c>IConfiguration</c>.
+ /// Gets a string describing location of the <see
cref="IConfiguration"/>.
/// </summary>
/// <value>
- /// A String describing location of <c>IConfiguration</c>.
+ /// A String describing location of the <see cref="IConfiguration"/>.
/// </value>
public string Location
{
@@ -83,10 +84,10 @@
}
/// <summary>
- /// Gets the value of the node.
+ /// Gets the value of <see cref="IConfiguration"/>.
/// </summary>
/// <value>
- /// The Value of the node.
+ /// The Value of the <see cref="IConfiguration"/>.
/// </value>
public string Value
{
@@ -103,10 +104,10 @@
}
/// <summary>
- /// Gets the Namespace of the node.
+ /// Gets the namespace of the <see cref="IConfiguration"/>.
/// </summary>
/// <value>
- /// The Namespace of the node.
+ /// The Namespace of the <see cref="IConfiguration"/>.
/// </value>
public string Namespace
{
@@ -124,10 +125,10 @@
}
/// <summary>
- /// Gets the Prefix of the node.
+ /// Gets the prefix of the <see cref="IConfiguration"/>.
/// </summary>
/// <value>
- /// The Prefix of the node.
+ /// The prefix of the <see cref="IConfiguration"/>.
/// </value>
public string Prefix
{
@@ -146,10 +147,9 @@
/// <summary>
- /// Gets an <see cref="ConfigurationCollection"/> of
<c>IConfiguration</c>
- /// elements containing all node children.
+ /// Gets all child nodes.
/// </summary>
- /// <value>The Collection of child nodes.</value>
+ /// <value>The <see cref="ConfigurationCollection"/> of child
nodes.</value>
public ConfigurationCollection Children
{
get
@@ -171,8 +171,11 @@
}
/// <summary>
- /// Gets an <see cref="IDictionary"/> of the configuration attributes.
+ /// Gets node attributes.
/// </summary>
+ /// <value>
+ /// All attributes of the node.
+ /// </value>
public IDictionary Attributes
{
get
@@ -193,44 +196,54 @@
}
}
+ /// <summary>
+ /// Gets a <see cref="IConfiguration"/> instance encapsulating the
specified
+ /// child node.
+ /// </summary>
+ /// <param name="child">The Name of the child node.</param>
+ /// <returns>
+ /// The <see cref="IConfiguration"/> instance encapsulating the
specified
+ /// child node.
+ /// </returns>
public IConfiguration GetChild(string child)
{
return GetChild(child, false);
}
/// <summary>
- /// Gets a <c>IConfiguration</c> instance encapsulating the
specified
+ /// Gets a <see cref="IConfiguration"/> instance encapsulating the
specified
/// child node.
/// </summary>
/// <param name="child">The Name of the child node.</param>
/// <param name="createNew">
- /// If <c>true</c>, a new <c>IConfiguration</c>
+ /// If <see langword="true"/>, a new <see cref="IConfiguration"/>
/// will be created and returned if the specified child does not exist.
- /// If <c>false</c>, <c>null</c> will be returned when the specified
+ /// If <see langword="false"/>, <see langword="null"/> will be
returned when the specified
/// child doesn't exist.
/// </param>
- /// <returns><c>IConfiguration</c></returns>
+ /// <returns>
+ /// The <see cref="IConfiguration"/> instance encapsulating the
specified
+ /// child node.
+ /// </returns>
public abstract IConfiguration GetChild(string child, bool createNew);
/// <summary>
- /// Return an <see cref="ConfigurationCollection"/> of
<c>IConfiguration</c>
+ /// Return an <see cref="ConfigurationCollection"/> of <see
cref="IConfiguration"/>
/// elements containing all node children with the specified name.
/// </summary>
/// <param name="name">The Name of the children to get.</param>
/// <returns>
- /// An <see cref="ConfigurationCollection"/> of
- /// <c>IConfiguration</c> objects children of
- /// this associated with the given name.
+ /// All node children with the specified name
/// </returns>
public abstract ConfigurationCollection GetChildren(string name);
/// <summary>
- /// Gets the Value of the node and converts it
+ /// Gets the value of the node and converts it
/// into specified <see cref="System.Type"/>.
/// </summary>
/// <param name="type">The <see cref="System.Type"/></param>
/// <returns>The Value converted into the specified type.</returns>
- /// <exception cref="System.InvalidCastException">
+ /// <exception cref="InvalidCastException">
/// If the convertion fails, an exception will be thrown.
/// </exception>
public object GetValue(Type type)
@@ -239,12 +252,12 @@
}
/// <summary>
- /// Gets the Value of the node and converts it
+ /// Gets the value of the node and converts it
/// into specified <see cref="System.Type"/>.
/// </summary>
/// <param name="type">The <see cref="System.Type"/></param>
/// <param name="defaultValue">
- /// The defaultValue returned if the convertion fails.
+ /// The Default value returned if the convertion fails.
/// </param>
/// <returns>The Value converted into the specified type.</returns>
public object GetValue(Type type, object defaultValue)
@@ -260,7 +273,7 @@
/// <param name="name">The Name of the attribute you ask the value
of.</param>
/// <param name="type">The <see cref="System.Type"/></param>
/// <returns>The Value converted into the specified type.</returns>
- /// <exception cref="System.InvalidCastException">
+ /// <exception cref="InvalidCastException">
/// If the convertion fails, an exception will be thrown.
/// </exception>
public object GetAttribute(string name, Type type)
@@ -276,7 +289,7 @@
/// <param name="name">The Name of the attribute you ask the value
of.</param>
/// <param name="type">The <see cref="System.Type"/></param>
/// <param name="defaultValue">
- /// The defaultValue returned if the convertion fails.
+ /// The Default value returned if the convertion fails.
/// </param>
/// <returns>The Value converted into the specified type.</returns>
public object GetAttribute(string name, Type type, object defaultValue)
@@ -293,6 +306,12 @@
readOnly = true;
}
+ /// <summary>
+ /// Check whether this node is readonly or not.
+ /// </summary>
+ /// <exception cref="ConfigurationException">
+ /// If this node is readonly then an exception will be thrown.
+ /// </exception>
protected void CheckReadOnly()
{
if( IsReadOnly )
1.3 +0 -5
jakarta-avalon-excalibur/csframework/src/cs/Util/ContainerUtil.cs
Index: ContainerUtil.cs
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/csframework/src/cs/Util/ContainerUtil.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ContainerUtil.cs 25 Sep 2002 22:48:22 -0000 1.2
+++ ContainerUtil.cs 23 Jan 2003 21:50:47 -0000 1.3
@@ -251,11 +251,6 @@
/// </exception>
public static void Dispose(object component)
{
- if (component is System.IDisposable)
- {
- ((System.IDisposable) component).Dispose();
- }
-
if (component is Apache.Avalon.Activity.IDisposable)
{
((Apache.Avalon.Activity.IDisposable)
component).Dispose();
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>