Removed untyped contructor from ComponentRegistration and add a protected setter.
[castle.git] / ActiveRecord / Castle.ActiveRecord / Attributes / VersionAttribute.cs
blob66968065cf4fc07dbe1f0406a3109eb9b853c5ac
1 // Copyright 2004-2008 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.ActiveRecord
17 using System;
19 /// <summary>
20 /// This attribute is used to specify that a property is the versioning property of the class
21 /// </summary>
22 [AttributeUsage(AttributeTargets.Property, AllowMultiple=false), Serializable]
23 public class VersionAttribute : WithAccessAttribute
25 private String column, type, unsavedValue;
27 /// <summary>
28 /// Initializes a new instance of the <see cref="VersionAttribute"/> class.
29 /// </summary>
30 public VersionAttribute()
34 /// <summary>
35 /// Initializes a new instance of the <see cref="VersionAttribute"/> class.
36 /// </summary>
37 /// <param name="column">The column.</param>
38 public VersionAttribute(String column)
40 this.column = column;
43 /// <summary>
44 /// Gets or sets the column name
45 /// </summary>
46 /// <value>The column.</value>
47 public String Column
49 get { return column; }
50 set { column = value; }
53 /// <summary>
54 /// Gets or sets the type of the column (should be an integer of some type)
55 /// </summary>
56 /// <value>The type.</value>
57 public String Type
59 get { return type; }
60 set { type = value; }
63 /// <summary>
64 /// Gets or sets the unsaved value for this column
65 /// </summary>
66 /// <value>The unsaved value.</value>
67 public String UnsavedValue
69 get { return unsavedValue; }
70 set { unsavedValue = value; }