~ubuntu-branches/ubuntu/trusty/smuxi/trusty-proposed

« back to all changes in this revision

Viewing changes to lib/ServiceStack/src/ServiceStack.Common/ServiceModel/Validation/ValidationErrorResult.cs

  • Committer: Package Import Robot
  • Author(s): Mirco Bauer
  • Date: 2013-05-25 22:11:31 UTC
  • mfrom: (1.2.12)
  • Revision ID: package-import@ubuntu.com-20130525221131-nd2mc0kzubuwyx20
Tags: 0.8.11-1
* [22d13d5] Imported Upstream version 0.8.11
* [6d2b95a] Refreshed patches
* [89eb66e] Added ServiceStack libraries to smuxi-engine package
* [848ab10] Enable Campfire engine
* [c6dbdc7] Always build db4o for predictable build result
* [13ec489] Exclude OS X specific libraries from dh_clideps

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
using System;
 
2
using System.Collections.Generic;
 
3
using ServiceStack.Common.Extensions;
 
4
 
 
5
namespace ServiceStack.Validation
 
6
{
 
7
    /// <summary>
 
8
    /// Encapsulates a validation result.
 
9
    /// </summary>
 
10
    public class ValidationErrorResult
 
11
    {
 
12
        public static ValidationErrorResult Success
 
13
        {
 
14
            get
 
15
            {
 
16
                return new ValidationErrorResult();
 
17
            }
 
18
        }
 
19
 
 
20
        /// <summary>
 
21
        /// Gets or sets the success code.
 
22
        /// </summary>
 
23
        /// <value>The success code.</value>
 
24
        public string SuccessCode
 
25
        {
 
26
            get;
 
27
            protected set;
 
28
        }
 
29
 
 
30
        /// <summary>
 
31
        /// Gets or sets the error code.
 
32
        /// </summary>
 
33
        /// <value>The error code.</value>
 
34
        public string ErrorCode
 
35
        {
 
36
            get;
 
37
            set;
 
38
        }
 
39
 
 
40
        /// <summary>
 
41
        /// Gets or sets the success message.
 
42
        /// </summary>
 
43
        /// <value>The success message.</value>
 
44
        public string SuccessMessage { get; set; }
 
45
 
 
46
        /// <summary>
 
47
        /// Gets or sets the error message.
 
48
        /// </summary>
 
49
        /// <value>The error message.</value>
 
50
        public string ErrorMessage { get; set; }
 
51
 
 
52
        public virtual string Message
 
53
        {
 
54
            get
 
55
            {
 
56
                return Errors.Count > 0 ? ErrorMessage : SuccessMessage;
 
57
            }
 
58
        }
 
59
 
 
60
 
 
61
        /// <summary>
 
62
        /// The errors generated by the validation.
 
63
        /// </summary>
 
64
        public IList<ValidationErrorField> Errors
 
65
        {
 
66
            get;
 
67
            protected set;
 
68
        }
 
69
 
 
70
        /// <summary>
 
71
        /// Returns True if the validation was successful (errors list is empty).
 
72
        /// </summary>
 
73
        public virtual bool IsValid
 
74
        {
 
75
            get
 
76
            {
 
77
                return this.Errors.Count == 0;
 
78
            }
 
79
        }
 
80
 
 
81
        /// <summary>
 
82
        /// Constructs a new ValidationResult
 
83
        /// </summary>
 
84
        public ValidationErrorResult()
 
85
            : this(new List<ValidationErrorField>())
 
86
        {
 
87
        }
 
88
 
 
89
        /// <summary>
 
90
        /// Constructs a new ValidationResult
 
91
        /// </summary>
 
92
        /// <param name="errors">A list of validation results</param>
 
93
        public ValidationErrorResult(IList<ValidationErrorField> errors) : this(errors, null, null) { }
 
94
 
 
95
        /// <summary>
 
96
        /// Initializes a new instance of the <see cref="ValidationErrorResult"/> class.
 
97
        /// </summary>
 
98
        /// <param name="errors">The errors.</param>
 
99
        /// <param name="successCode">The success code.</param>
 
100
        /// <param name="errorCode">The error code.</param>
 
101
        public ValidationErrorResult(IList<ValidationErrorField> errors, string successCode, string errorCode)
 
102
        {
 
103
            this.Errors = errors ?? new List<ValidationErrorField>();
 
104
            if (successCode != null)
 
105
            {
 
106
                this.SuccessCode = successCode;
 
107
                this.SuccessMessage = successCode.SplitCamelCase();
 
108
            }
 
109
            if (errorCode != null)
 
110
            {
 
111
                this.ErrorCode = errorCode;
 
112
            }
 
113
            else
 
114
            {
 
115
                if (this.Errors.Count > 0)
 
116
                {
 
117
                    this.ErrorCode = this.Errors[0].ErrorCode;
 
118
                    this.ErrorMessage = this.Errors[0].ErrorMessage;
 
119
                }
 
120
            }
 
121
            
 
122
            if (this.ErrorMessage == null && this.ErrorCode != null)
 
123
            {
 
124
                this.ErrorMessage = this.ErrorCode.ToEnglish();
 
125
            }
 
126
        }
 
127
    }
 
128
}
 
 
b'\\ No newline at end of file'