Added ability to order the execution of dictionary adapter behaviors.
[castle.git] / Components / DictionaryAdapter / Castle.Components.DictionaryAdapter / IDictionaryPropertySetter.cs
blobd8db28465de10d666794d42e46a99b20db8eee27
1 // Copyright 2004-2007 Castle Project - http://www.castleproject.org/
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace Castle.Components.DictionaryAdapter
17 using System.Collections;
19 /// <summary>
20 /// Defines the contract for updating dictionary values.
21 /// </summary>
22 public interface IDictionaryPropertySetter : IDictionaryBehavior
24 /// <summary>
25 /// Sets the stored dictionary value.
26 /// </summary>
27 /// <param name="factory">The dictionary factory.</param>
28 /// <param name="dictionary">The dictionary.</param>
29 /// <param name="key">The key.</param>
30 /// <param name="value">The stored value.</param>
31 /// <param name="property">The property.</param>
32 /// <returns>true if the property should be stored.</returns>
33 bool SetPropertyValue(IDictionaryAdapterFactory factory, IDictionary dictionary,
34 string key, ref object value, PropertyDescriptor property);