User: xtoff
Date: 2009/12/19 04:58 PM
Modified:
/InversionOfControl/trunk/src/Castle.MicroKernel/
DefaultKernel_Events.cs
/InversionOfControl/trunk/src/Castle.MicroKernel/ComponentActivator/
DefaultComponentActivator.cs
/InversionOfControl/trunk/src/Castle.MicroKernel/ModelBuilder/Inspectors/
LifecycleModelInspector.cs, MethodMetaInspector.cs,
PropertiesDependenciesModelInspector.cs
/InversionOfControl/trunk/src/Castle.MicroKernel/Registration/Strategies/
AllTypes.cs, ServiceDescriptor.cs
/InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/
DefaultConversionManager.cs
/InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/Converters/
DefaultComplexConverter.cs, PrimitiveConverter.cs
/InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Resource/
DefaultResourceSubSystem.cs
/InversionOfControl/trunk/src/Castle.Windsor.Tests/Components/
CalculatorServiceWithLifecycle.cs, Camera.cs, MarshalCalculatorService.cs
Log:
Applied patch from Simon Cropp for IOC-ISSUE-184 - Anothe set of misc patches
for silverlight
File Changes:
Directory: /InversionOfControl/trunk/src/Castle.MicroKernel/
============================================================
File [modified]: DefaultKernel_Events.cs
Delta lines: +2 -0
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/ModelBuilder/Inspectors/LifecycleModelInspector.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/ModelBuilder/Inspectors/LifecycleModelInspector.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -50,10 +50,12 @@
{
model.LifecycleSteps.Add(
LifecycleStepType.Commission, InitializationConcern.Instance );
}
+#if (!SILVERLIGHT)
if (typeof
(ISupportInitialize).IsAssignableFrom(model.Implementation))
{
model.LifecycleSteps.Add(
LifecycleStepType.Commission, SupportInitializeConcern.Instance );
}
+#endif
if (typeof
(IDisposable).IsAssignableFrom(model.Implementation))
{
Directory: /InversionOfControl/trunk/src/Castle.MicroKernel/ComponentActivator/
===============================================================================
File [modified]: DefaultComponentActivator.cs
Delta lines: +1 -1
===================================================================
--- InversionOfControl/trunk/src/Castle.MicroKernel/DefaultKernel_Events.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++ InversionOfControl/trunk/src/Castle.MicroKernel/DefaultKernel_Events.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -288,7 +288,7 @@
return;
}
- events.Add(key, Delegate.Combine(value));
+ events.Add(key, Delegate.Combine(value, null));
}
Directory: /InversionOfControl/trunk/src/Castle.Windsor.Tests/Components/
=========================================================================
File [modified]: CalculatorServiceWithLifecycle.cs
Delta lines: +4 -0
===================================================================
--- InversionOfControl/trunk/src/Castle.Windsor.Tests/Components/Camera.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++ InversionOfControl/trunk/src/Castle.Windsor.Tests/Components/Camera.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -58,7 +58,11 @@
}
}
+#if (SILVERLIGHT)
+ public class CameraService : ICameraService
+#else
public class CameraService : MarshalByRefObject, ICameraService
+#endif
{
public ICamera Add(String name, String ipNumber)
File [modified]: Camera.cs
Delta lines: +4 -3
===================================================================
---
InversionOfControl/trunk/src/Castle.Windsor.Tests/Components/MarshalCalculatorService.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.Windsor.Tests/Components/MarshalCalculatorService.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -16,11 +16,12 @@
{
using System;
+#if (SILVERLIGHT)
+ public class MarshalCalculatorService : ICalcService
+#else
public class MarshalCalculatorService : MarshalByRefObject, ICalcService
+#endif
{
- public MarshalCalculatorService()
- {
- }
public int Sum(int x, int y)
File [modified]: MarshalCalculatorService.cs
Delta lines: +0 -0
===================================================================
Directory:
/InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/
==================================================================================
File [modified]: DefaultConversionManager.cs
Delta lines: +1 -1
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Resource/DefaultResourceSubSystem.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Resource/DefaultResourceSubSystem.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -35,9 +35,9 @@
protected virtual void InitDefaultResourceFactories()
{
RegisterResourceFactory( new AssemblyResourceFactory()
);
- RegisterResourceFactory( new FileResourceFactory() );
RegisterResourceFactory( new UncResourceFactory() );
#if !SILVERLIGHT
+ RegisterResourceFactory( new FileResourceFactory() );
RegisterResourceFactory( new ConfigResourceFactory() );
#endif
Directory:
/InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/Converters/
=============================================================================================
File [modified]: DefaultComplexConverter.cs
Delta lines: +3 -1
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/Converters/PrimitiveConverter.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/Converters/PrimitiveConverter.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -12,6 +12,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+using System.Threading;
+
namespace Castle.MicroKernel.SubSystems.Conversion
{
using System;
@@ -60,7 +62,7 @@
try
{
- return Convert.ChangeType(value, targetType);
+ return Convert.ChangeType(value,
targetType,Thread.CurrentThread.CurrentCulture);
}
catch(Exception ex)
File [modified]: PrimitiveConverter.cs
Delta lines: +3 -1
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/DefaultConversionManager.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/DefaultConversionManager.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -33,7 +33,7 @@
private static readonly LocalDataStoreSlot slot =
Thread.AllocateDataSlot();
#else
[ThreadStatic]
- private static readonly Stack<ComponentModel> slot;
+ private static Stack<ComponentModel> slot;
#endif
private readonly IList<ITypeConverter> converters = new
List<ITypeConverter>();
private readonly IList<ITypeConverter> standAloneConverters = new
List<ITypeConverter>();
@@ -56,7 +56,9 @@
Add(new ArrayConverter());
Add(new ComponentConverter());
Add(new AttributeAwareConverter());
+#if (!SILVERLIGHT)
Add(new ComponentModelConverter());
+#endif
}
Directory:
/InversionOfControl/trunk/src/Castle.MicroKernel/ModelBuilder/Inspectors/
====================================================================================
File [modified]: LifecycleModelInspector.cs
Delta lines: +4 -2
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/ModelBuilder/Inspectors/MethodMetaInspector.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/ModelBuilder/Inspectors/MethodMetaInspector.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -13,8 +13,10 @@
// limitations under the License.
+
namespace Castle.MicroKernel.ModelBuilder.Inspectors
{
+ using System.Globalization;
using System;
using System.Collections.Generic;
using System.Reflection;
@@ -139,7 +141,7 @@
private IList<MethodInfo> GetMethods(Type implementation,
String name, String signature)
{
- if (signature == null || signature.Length == 0)
+ if (string.IsNullOrEmpty(signature))
{
MethodInfo[] allmethods =
implementation.GetMethods(AllMethods);
@@ -147,7 +149,7 @@
foreach(MethodInfo method in allmethods)
{
- if (String.Compare(method.Name, name,
true) == 0)
+ if
(CultureInfo.InvariantCulture.CompareInfo.Compare(method.Name, name,
CompareOptions.IgnoreCase) == 0)
{
methods.Add(method);
File [modified]: MethodMetaInspector.cs
Delta lines: +8 -6
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/ModelBuilder/Inspectors/PropertiesDependenciesModelInspector.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/ModelBuilder/Inspectors/PropertiesDependenciesModelInspector.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -12,11 +12,13 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+
namespace Castle.MicroKernel.ModelBuilder.Inspectors
{
using System;
+ using System.Collections.Generic;
+ using System.Linq;
using System.Reflection;
-
using Castle.Core;
using Castle.MicroKernel.SubSystems.Conversion;
using Castle.Core.Configuration;
@@ -152,12 +154,12 @@
}
catch(Exception)
{
- String[] enumNames =
Enum.GetNames(typeof(PropertiesInspectionBehavior));
-
- String message = String.Format("Error on
properties inspection. " +
- "Could not convert the
inspectionBehavior attribute value into an expected enum value. " +
+ Type enumType =
typeof(PropertiesInspectionBehavior);
+ FieldInfo[] infos =
enumType.GetFields(BindingFlags.Public | BindingFlags.Static);
+ IEnumerable<string> enumNames = infos.Select(x
=> x.Name);
+ String message = String.Format("Error on
properties inspection. Could not convert the inspectionBehavior attribute value
into an expected enum value. " +
"Value found is '{0}' while possible
values are '{1}'",
- enumStringVal, String.Join(",",
enumNames));
+ enumStringVal, String.Join(",",
enumNames.ToArray()));
throw new KernelException(message);
File [modified]: PropertiesDependenciesModelInspector.cs
Delta lines: +4 -0
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/Registration/Strategies/AllTypes.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/Registration/Strategies/AllTypes.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -65,6 +65,9 @@
if (extension == ".dll" || extension == ".exe")
{
+#if (SILVERLIGHT)
+ assembly =
Assembly.Load(Path.GetFileNameWithoutExtension(assemblyName));
+#else
if (Path.GetDirectoryName(assemblyName) ==
AppDomain.CurrentDomain.BaseDirectory)
{
assembly =
Assembly.Load(Path.GetFileNameWithoutExtension(assemblyName));
@@ -73,6 +76,7 @@
{
assembly =
Assembly.LoadFile(assemblyName);
}
+#endif
}
else
Directory: /InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Resource/
================================================================================
File [modified]: DefaultResourceSubSystem.cs
Delta lines: +4 -13
===================================================================
---
InversionOfControl/trunk/src/Castle.Windsor.Tests/Components/CalculatorServiceWithLifecycle.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.Windsor.Tests/Components/CalculatorServiceWithLifecycle.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -18,15 +18,15 @@
using Castle.Core;
[Transient]
+#if (SILVERLIGHT)
+ public class CalculatorServiceWithLifecycle : ICalcService,
IInitializable, IDisposable
+#else
public class CalculatorServiceWithLifecycle : MarshalByRefObject,
ICalcService, IInitializable, IDisposable
+#endif
{
private bool _initialized;
private bool _disposed;
- public CalculatorServiceWithLifecycle()
- {
- }
-
public int Sum(int x, int y)
{
return x + y;
@@ -52,14 +52,5 @@
get { return _disposed; }
}
- public override bool Equals(object obj)
- {
- return base.Equals(obj);
- }
-
- public override int GetHashCode()
- {
- return base.GetHashCode();
- }
}
}
Directory:
/InversionOfControl/trunk/src/Castle.MicroKernel/Registration/Strategies/
====================================================================================
File [modified]: AllTypes.cs
Delta lines: +4 -2
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/Registration/Strategies/ServiceDescriptor.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/Registration/Strategies/ServiceDescriptor.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -12,8 +12,10 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+
namespace Castle.MicroKernel.Registration
{
+ using System.Linq;
using System;
using System.Collections.Generic;
@@ -143,11 +145,11 @@
services = serviceSelector(type, baseType);
if(services!=null)
{
- services = new
List<Type>(services).ConvertAll<Type>(WorkaroundCLRBug);
+ services = services.Select(x =>
WorkaroundCLRBug(x));
}
}
- return services ?? new Type[] { type };
+ return services ?? new[] { type };
}
File [modified]: ServiceDescriptor.cs
Delta lines: +6 -6
===================================================================
---
InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/Converters/DefaultComplexConverter.cs
2009-12-19 23:46:12 UTC (rev 6477)
+++
InversionOfControl/trunk/src/Castle.MicroKernel/SubSystems/Conversion/Converters/DefaultComplexConverter.cs
2009-12-19 23:58:09 UTC (rev 6478)
@@ -12,6 +12,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.using System;
+using System.Globalization;
+
namespace Castle.MicroKernel.SubSystems.Conversion
{
using System;
@@ -139,12 +141,11 @@
IConfiguration paramConfig =
FindChildIgnoreCase(configuration, parameter.Name);
if (paramConfig == null)
- throw new ConverterException("Child '"
+ parameter.Name + "' missing in " + configuration.Name + " element.");
+ throw new
ConverterException(string.Format("Child '{0}' missing in {1} element.",
parameter.Name, configuration.Name));
Type paramType = parameter.ParameterType;
if
(!this.ConversionManager.CanHandleType(paramType))
- throw new ConverterException("No
converter found for child '" + parameter.Name + "' in " + configuration.Name +
- " element
(type: " + paramType.Name + ").");
+ throw new
ConverterException(string.Format("No converter found for child '{0}' in {1}
element (type: {2}).", parameter.Name, configuration.Name, paramType.Name));
parameterValues[i] =
ConvertChildParameter(paramConfig, paramType);
@@ -172,8 +173,7 @@
Type propType = property.PropertyType;
if
(!this.ConversionManager.CanHandleType(propType))
- throw new ConverterException("No
converter found for child '" + property.Name + "' in " + configuration.Name +
- " element
(type: " + propType.Name + ").");
+ throw new
ConverterException(string.Format("No converter found for child '{0}' in {1}
element (type: {2}).", property.Name, configuration.Name, propType.Name));
object val = ConvertChildParameter(propConfig,
propType);
property.SetValue(instance, val, null);
@@ -220,7 +220,7 @@
{
foreach(IConfiguration child in config.Children)
{
- if (string.Compare(child.Name, name, true) == 0)
+ if
(CultureInfo.CurrentCulture.CompareInfo.Compare(child.Name, name,
CompareOptions.IgnoreCase) == 0)
return child;
}
--
You received this message because you are subscribed to the Google Groups
"Castle Project Commits" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/castle-project-commits?hl=en.