servus 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +6 -0
  3. data/CHANGELOG.md +7 -0
  4. data/IDEAS.md +5 -0
  5. data/READme.md +147 -42
  6. data/Rakefile +33 -0
  7. data/builds/servus-0.1.3.gem +0 -0
  8. data/builds/servus-0.1.4.gem +0 -0
  9. data/docs/core/1_overview.md +77 -0
  10. data/docs/core/2_architecture.md +92 -0
  11. data/docs/core/3_service_objects.md +121 -0
  12. data/docs/features/1_schema_validation.md +119 -0
  13. data/docs/features/2_error_handling.md +121 -0
  14. data/docs/features/3_async_execution.md +81 -0
  15. data/docs/features/4_logging.md +64 -0
  16. data/docs/guides/1_common_patterns.md +90 -0
  17. data/docs/guides/2_migration_guide.md +175 -0
  18. data/docs/integration/1_configuration.md +51 -0
  19. data/docs/integration/2_testing.md +164 -0
  20. data/docs/integration/3_rails_integration.md +99 -0
  21. data/docs/yard/Servus/Base.html +1645 -0
  22. data/docs/yard/Servus/Config.html +582 -0
  23. data/docs/yard/Servus/Extensions/Async/Call.html +400 -0
  24. data/docs/yard/Servus/Extensions/Async/Errors/AsyncError.html +140 -0
  25. data/docs/yard/Servus/Extensions/Async/Errors/JobEnqueueError.html +154 -0
  26. data/docs/yard/Servus/Extensions/Async/Errors/ServiceNotFoundError.html +154 -0
  27. data/docs/yard/Servus/Extensions/Async/Errors.html +128 -0
  28. data/docs/yard/Servus/Extensions/Async/Ext.html +119 -0
  29. data/docs/yard/Servus/Extensions/Async/Job.html +310 -0
  30. data/docs/yard/Servus/Extensions/Async.html +141 -0
  31. data/docs/yard/Servus/Extensions.html +117 -0
  32. data/docs/yard/Servus/Generators/ServiceGenerator.html +261 -0
  33. data/docs/yard/Servus/Generators.html +115 -0
  34. data/docs/yard/Servus/Helpers/ControllerHelpers.html +457 -0
  35. data/docs/yard/Servus/Helpers.html +115 -0
  36. data/docs/yard/Servus/Railtie.html +134 -0
  37. data/docs/yard/Servus/Support/Errors/AuthenticationError.html +287 -0
  38. data/docs/yard/Servus/Support/Errors/BadRequestError.html +283 -0
  39. data/docs/yard/Servus/Support/Errors/ForbiddenError.html +284 -0
  40. data/docs/yard/Servus/Support/Errors/InternalServerError.html +283 -0
  41. data/docs/yard/Servus/Support/Errors/NotFoundError.html +284 -0
  42. data/docs/yard/Servus/Support/Errors/ServiceError.html +489 -0
  43. data/docs/yard/Servus/Support/Errors/ServiceUnavailableError.html +290 -0
  44. data/docs/yard/Servus/Support/Errors/UnauthorizedError.html +200 -0
  45. data/docs/yard/Servus/Support/Errors/UnprocessableEntityError.html +288 -0
  46. data/docs/yard/Servus/Support/Errors/ValidationError.html +200 -0
  47. data/docs/yard/Servus/Support/Errors.html +140 -0
  48. data/docs/yard/Servus/Support/Logger.html +856 -0
  49. data/docs/yard/Servus/Support/Rescuer/BlockContext.html +585 -0
  50. data/docs/yard/Servus/Support/Rescuer/CallOverride.html +257 -0
  51. data/docs/yard/Servus/Support/Rescuer/ClassMethods.html +343 -0
  52. data/docs/yard/Servus/Support/Rescuer.html +267 -0
  53. data/docs/yard/Servus/Support/Response.html +574 -0
  54. data/docs/yard/Servus/Support/Validator.html +1150 -0
  55. data/docs/yard/Servus/Support.html +119 -0
  56. data/docs/yard/Servus/Testing/ExampleBuilders.html +523 -0
  57. data/docs/yard/Servus/Testing/ExampleExtractor.html +578 -0
  58. data/docs/yard/Servus/Testing.html +142 -0
  59. data/docs/yard/Servus.html +343 -0
  60. data/docs/yard/_index.html +535 -0
  61. data/docs/yard/class_list.html +54 -0
  62. data/docs/yard/css/common.css +1 -0
  63. data/docs/yard/css/full_list.css +58 -0
  64. data/docs/yard/css/style.css +503 -0
  65. data/docs/yard/file.1_common_patterns.html +154 -0
  66. data/docs/yard/file.1_configuration.html +115 -0
  67. data/docs/yard/file.1_overview.html +142 -0
  68. data/docs/yard/file.1_schema_validation.html +188 -0
  69. data/docs/yard/file.2_architecture.html +157 -0
  70. data/docs/yard/file.2_error_handling.html +190 -0
  71. data/docs/yard/file.2_migration_guide.html +242 -0
  72. data/docs/yard/file.2_testing.html +227 -0
  73. data/docs/yard/file.3_async_execution.html +145 -0
  74. data/docs/yard/file.3_rails_integration.html +160 -0
  75. data/docs/yard/file.3_service_objects.html +191 -0
  76. data/docs/yard/file.4_logging.html +135 -0
  77. data/docs/yard/file.ErrorHandling.html +190 -0
  78. data/docs/yard/file.READme.html +674 -0
  79. data/docs/yard/file.architecture.html +157 -0
  80. data/docs/yard/file.async_execution.html +145 -0
  81. data/docs/yard/file.common_patterns.html +154 -0
  82. data/docs/yard/file.configuration.html +115 -0
  83. data/docs/yard/file.error_handling.html +190 -0
  84. data/docs/yard/file.logging.html +135 -0
  85. data/docs/yard/file.migration_guide.html +242 -0
  86. data/docs/yard/file.overview.html +142 -0
  87. data/docs/yard/file.rails_integration.html +160 -0
  88. data/docs/yard/file.schema_validation.html +188 -0
  89. data/docs/yard/file.service_objects.html +191 -0
  90. data/docs/yard/file.testing.html +227 -0
  91. data/docs/yard/file_list.html +119 -0
  92. data/docs/yard/frames.html +22 -0
  93. data/docs/yard/index.html +674 -0
  94. data/docs/yard/js/app.js +344 -0
  95. data/docs/yard/js/full_list.js +242 -0
  96. data/docs/yard/js/jquery.js +4 -0
  97. data/docs/yard/method_list.html +542 -0
  98. data/docs/yard/top-level-namespace.html +110 -0
  99. data/lib/generators/servus/service/service_generator.rb +64 -1
  100. data/lib/generators/servus/service/templates/service.rb.erb +1 -1
  101. data/lib/servus/base.rb +258 -57
  102. data/lib/servus/config.rb +58 -12
  103. data/lib/servus/extensions/async/call.rb +50 -18
  104. data/lib/servus/extensions/async/errors.rb +23 -3
  105. data/lib/servus/extensions/async/ext.rb +10 -2
  106. data/lib/servus/extensions/async/job.rb +30 -9
  107. data/lib/servus/helpers/controller_helpers.rb +73 -37
  108. data/lib/servus/support/errors.rb +135 -45
  109. data/lib/servus/support/rescuer.rb +189 -36
  110. data/lib/servus/support/response.rb +49 -7
  111. data/lib/servus/support/validator.rb +120 -19
  112. data/lib/servus/testing/example_builders.rb +133 -0
  113. data/lib/servus/testing/example_extractor.rb +309 -0
  114. data/lib/servus/testing.rb +17 -0
  115. data/lib/servus/version.rb +1 -1
  116. metadata +117 -19
@@ -0,0 +1,288 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Exception: Servus::Support::Errors::UnprocessableEntityError
8
+
9
+ &mdash; Servus | Service Object Framework
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../../css/style.css" type="text/css" />
14
+
15
+ <link rel="stylesheet" href="../../../css/common.css" type="text/css" />
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Servus::Support::Errors::UnprocessableEntityError";
19
+ relpath = '../../../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../../../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../../../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../../../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../../../_index.html">Index (U)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../../../Servus.html" title="Servus (module)">Servus</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../Support.html" title="Servus::Support (module)">Support</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Errors.html" title="Servus::Support::Errors (module)">Errors</a></span></span>
41
+ &raquo;
42
+ <span class="title">UnprocessableEntityError</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../../../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Exception: Servus::Support::Errors::UnprocessableEntityError
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName"><span class='object_link'><a href="ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span></span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">StandardError</li>
78
+
79
+ <li class="next"><span class='object_link'><a href="ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span></li>
80
+
81
+ <li class="next">Servus::Support::Errors::UnprocessableEntityError</li>
82
+
83
+ </ul>
84
+ <a href="#" class="inheritanceTree">show all</a>
85
+
86
+ </dd>
87
+ </dl>
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+ <dl>
100
+ <dt>Defined in:</dt>
101
+ <dd>lib/servus/support/errors.rb</dd>
102
+ </dl>
103
+
104
+ </div>
105
+
106
+ <h2>Overview</h2><div class="docstring">
107
+ <div class="discussion">
108
+ <p>Represents a 422 Unprocessable Entity error.</p>
109
+
110
+ <p>Use this error when the request is well-formed but contains semantic errors
111
+ that prevent processing (e.g., business logic violations).</p>
112
+
113
+
114
+ </div>
115
+ </div>
116
+ <div class="tags">
117
+
118
+ <div class="examples">
119
+ <h4 class="tag_title">Examples:</h4>
120
+
121
+
122
+ <pre class="example code"><code><span class='kw'>def</span> <span class='id identifier rubyid_call'>call</span>
123
+ <span class='kw'>return</span> <span class='id identifier rubyid_failure'>failure</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Order already shipped</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>type:</span> <span class='const'>UnprocessableEntityError</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='ivar'>@order</span><span class='period'>.</span><span class='id identifier rubyid_shipped?'>shipped?</span>
124
+ <span class='kw'>end</span></code></pre>
125
+
126
+ </div>
127
+
128
+
129
+ </div><div id="subclasses">
130
+ <h2>Direct Known Subclasses</h2>
131
+ <p class="children"><span class='object_link'><a href="ValidationError.html" title="Servus::Support::Errors::ValidationError (class)">ValidationError</a></span></p>
132
+ </div>
133
+
134
+
135
+ <h2>
136
+ Constant Summary
137
+ <small><a href="#" class="constants_summary_toggle">collapse</a></small>
138
+ </h2>
139
+
140
+ <dl class="constants">
141
+
142
+ <dt id="DEFAULT_MESSAGE-constant" class="">DEFAULT_MESSAGE =
143
+
144
+ </dt>
145
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Unprocessable entity</span><span class='tstring_end'>&#39;</span></span></pre></dd>
146
+
147
+ </dl>
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+ <h2>Instance Attribute Summary</h2>
156
+
157
+ <h3 class="inherited">Attributes inherited from <span class='object_link'><a href="ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span></h3>
158
+ <p class="inherited"><span class='object_link'><a href="ServiceError.html#message-instance_method" title="Servus::Support::Errors::ServiceError#message (method)">#message</a></span></p>
159
+
160
+
161
+
162
+ <h2>
163
+ Instance Method Summary
164
+ <small><a href="#" class="summary_toggle">collapse</a></small>
165
+ </h2>
166
+
167
+ <ul class="summary">
168
+
169
+ <li class="public ">
170
+ <span class="summary_signature">
171
+
172
+ <a href="#api_error-instance_method" title="#api_error (instance method)">#<strong>api_error</strong> &#x21d2; Hash </a>
173
+
174
+
175
+
176
+ </span>
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+ <span class="summary_desc"><div class='inline'><p>API error response with :unprocessable_entity code.</p>
187
+ </div></span>
188
+
189
+ </li>
190
+
191
+
192
+ </ul>
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+ <h3 class="inherited">Methods inherited from <span class='object_link'><a href="ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span></h3>
205
+ <p class="inherited"><span class='object_link'><a href="ServiceError.html#initialize-instance_method" title="Servus::Support::Errors::ServiceError#initialize (method)">#initialize</a></span></p>
206
+
207
+ <div id="constructor_details" class="method_details_list">
208
+ <h2>Constructor Details</h2>
209
+
210
+ <p class="notice">This class inherits a constructor from <span class='object_link'><a href="ServiceError.html#initialize-instance_method" title="Servus::Support::Errors::ServiceError#initialize (method)">Servus::Support::Errors::ServiceError</a></span></p>
211
+
212
+ </div>
213
+
214
+
215
+ <div id="instance_method_details" class="method_details_list">
216
+ <h2>Instance Method Details</h2>
217
+
218
+
219
+ <div class="method_details first">
220
+ <h3 class="signature first" id="api_error-instance_method">
221
+
222
+ #<strong>api_error</strong> &#x21d2; <tt>Hash</tt>
223
+
224
+
225
+
226
+
227
+
228
+ </h3><div class="docstring">
229
+ <div class="discussion">
230
+ <p>Returns API error response with :unprocessable_entity code.</p>
231
+
232
+
233
+ </div>
234
+ </div>
235
+ <div class="tags">
236
+
237
+ <p class="tag_title">Returns:</p>
238
+ <ul class="return">
239
+
240
+ <li>
241
+
242
+
243
+ <span class='type'>(<tt>Hash</tt>)</span>
244
+
245
+
246
+
247
+ &mdash;
248
+ <div class='inline'><p>API error response with :unprocessable_entity code</p>
249
+ </div>
250
+
251
+ </li>
252
+
253
+ </ul>
254
+
255
+ </div><table class="source_code">
256
+ <tr>
257
+ <td>
258
+ <pre class="lines">
259
+
260
+
261
+ 169
262
+ 170
263
+ 171</pre>
264
+ </td>
265
+ <td>
266
+ <pre class="code"><span class="info file"># File 'lib/servus/support/errors.rb', line 169</span>
267
+
268
+ <span class='kw'>def</span> <span class='id identifier rubyid_api_error'>api_error</span>
269
+ <span class='lbrace'>{</span> <span class='label'>code:</span> <span class='symbol'>:unprocessable_entity</span><span class='comma'>,</span> <span class='label'>message:</span> <span class='id identifier rubyid_message'>message</span> <span class='rbrace'>}</span>
270
+ <span class='kw'>end</span></pre>
271
+ </td>
272
+ </tr>
273
+ </table>
274
+ </div>
275
+
276
+ </div>
277
+
278
+ </div>
279
+
280
+ <div id="footer">
281
+ Generated on Fri Nov 21 00:33:24 2025 by
282
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
283
+ 0.9.37 (ruby-3.4.4).
284
+ </div>
285
+
286
+ </div>
287
+ </body>
288
+ </html>
@@ -0,0 +1,200 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Exception: Servus::Support::Errors::ValidationError
8
+
9
+ &mdash; Servus | Service Object Framework
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../../css/style.css" type="text/css" />
14
+
15
+ <link rel="stylesheet" href="../../../css/common.css" type="text/css" />
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Servus::Support::Errors::ValidationError";
19
+ relpath = '../../../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../../../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../../../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../../../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../../../_index.html">Index (V)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../../../Servus.html" title="Servus (module)">Servus</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../Support.html" title="Servus::Support (module)">Support</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Errors.html" title="Servus::Support::Errors (module)">Errors</a></span></span>
41
+ &raquo;
42
+ <span class="title">ValidationError</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../../../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Exception: Servus::Support::Errors::ValidationError
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName"><span class='object_link'><a href="UnprocessableEntityError.html" title="Servus::Support::Errors::UnprocessableEntityError (class)">UnprocessableEntityError</a></span></span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">StandardError</li>
78
+
79
+ <li class="next"><span class='object_link'><a href="ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span></li>
80
+
81
+ <li class="next"><span class='object_link'><a href="UnprocessableEntityError.html" title="Servus::Support::Errors::UnprocessableEntityError (class)">UnprocessableEntityError</a></span></li>
82
+
83
+ <li class="next">Servus::Support::Errors::ValidationError</li>
84
+
85
+ </ul>
86
+ <a href="#" class="inheritanceTree">show all</a>
87
+
88
+ </dd>
89
+ </dl>
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+ <dl>
102
+ <dt>Defined in:</dt>
103
+ <dd>lib/servus/support/errors.rb</dd>
104
+ </dl>
105
+
106
+ </div>
107
+
108
+ <h2>Overview</h2><div class="docstring">
109
+ <div class="discussion">
110
+ <p>Represents validation failures (inherits 422 status).</p>
111
+
112
+ <p>Automatically raised by the framework when schema validation fails.
113
+ Can also be used for custom validation errors.</p>
114
+
115
+
116
+ </div>
117
+ </div>
118
+ <div class="tags">
119
+
120
+ <div class="examples">
121
+ <h4 class="tag_title">Examples:</h4>
122
+
123
+
124
+ <pre class="example code"><code><span class='kw'>def</span> <span class='id identifier rubyid_call'>call</span>
125
+ <span class='kw'>return</span> <span class='id identifier rubyid_failure'>failure</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Email format invalid</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>type:</span> <span class='const'>ValidationError</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_valid_email?'>valid_email?</span>
126
+ <span class='kw'>end</span></code></pre>
127
+
128
+ </div>
129
+
130
+
131
+ </div>
132
+
133
+ <h2>
134
+ Constant Summary
135
+ <small><a href="#" class="constants_summary_toggle">collapse</a></small>
136
+ </h2>
137
+
138
+ <dl class="constants">
139
+
140
+ <dt id="DEFAULT_MESSAGE-constant" class="">DEFAULT_MESSAGE =
141
+
142
+ </dt>
143
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Validation failed</span><span class='tstring_end'>&#39;</span></span></pre></dd>
144
+
145
+ </dl>
146
+
147
+
148
+
149
+
150
+
151
+
152
+
153
+ <h2>Instance Attribute Summary</h2>
154
+
155
+ <h3 class="inherited">Attributes inherited from <span class='object_link'><a href="ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span></h3>
156
+ <p class="inherited"><span class='object_link'><a href="ServiceError.html#message-instance_method" title="Servus::Support::Errors::ServiceError#message (method)">#message</a></span></p>
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+ <h2>Method Summary</h2>
167
+
168
+ <h3 class="inherited">Methods inherited from <span class='object_link'><a href="UnprocessableEntityError.html" title="Servus::Support::Errors::UnprocessableEntityError (class)">UnprocessableEntityError</a></span></h3>
169
+ <p class="inherited"><span class='object_link'><a href="UnprocessableEntityError.html#api_error-instance_method" title="Servus::Support::Errors::UnprocessableEntityError#api_error (method)">#api_error</a></span></p>
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+ <h3 class="inherited">Methods inherited from <span class='object_link'><a href="ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span></h3>
180
+ <p class="inherited"><span class='object_link'><a href="ServiceError.html#api_error-instance_method" title="Servus::Support::Errors::ServiceError#api_error (method)">#api_error</a></span>, <span class='object_link'><a href="ServiceError.html#initialize-instance_method" title="Servus::Support::Errors::ServiceError#initialize (method)">#initialize</a></span></p>
181
+
182
+ <div id="constructor_details" class="method_details_list">
183
+ <h2>Constructor Details</h2>
184
+
185
+ <p class="notice">This class inherits a constructor from <span class='object_link'><a href="ServiceError.html#initialize-instance_method" title="Servus::Support::Errors::ServiceError#initialize (method)">Servus::Support::Errors::ServiceError</a></span></p>
186
+
187
+ </div>
188
+
189
+
190
+ </div>
191
+
192
+ <div id="footer">
193
+ Generated on Fri Nov 21 00:33:24 2025 by
194
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
195
+ 0.9.37 (ruby-3.4.4).
196
+ </div>
197
+
198
+ </div>
199
+ </body>
200
+ </html>
@@ -0,0 +1,140 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Module: Servus::Support::Errors
8
+
9
+ &mdash; Servus | Service Object Framework
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" />
14
+
15
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" />
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Servus::Support::Errors";
19
+ relpath = '../../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../../_index.html">Index (E)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../../Servus.html" title="Servus (module)">Servus</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Support.html" title="Servus::Support (module)">Support</a></span></span>
41
+ &raquo;
42
+ <span class="title">Errors</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Module: Servus::Support::Errors
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+ <dl>
78
+ <dt>Included in:</dt>
79
+ <dd><span class='object_link'><a href="../Base.html" title="Servus::Base (class)">Base</a></span></dd>
80
+ </dl>
81
+
82
+
83
+
84
+ <dl>
85
+ <dt>Defined in:</dt>
86
+ <dd>lib/servus/support/errors.rb</dd>
87
+ </dl>
88
+
89
+ </div>
90
+
91
+ <h2>Overview</h2><div class="docstring">
92
+ <div class="discussion">
93
+ <p>Contains all error classes used by Servus services.</p>
94
+
95
+ <p>All error classes inherit from <span class='object_link'><a href="Errors/ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span> and provide both a human-readable
96
+ message and an API-friendly error response via <span class='object_link'><a href="Errors/ServiceError.html#api_error-instance_method" title="Servus::Support::Errors::ServiceError#api_error (method)">ServiceError#api_error</a></span>.</p>
97
+
98
+
99
+ </div>
100
+ </div>
101
+ <div class="tags">
102
+
103
+
104
+ <p class="tag_title">See Also:</p>
105
+ <ul class="see">
106
+
107
+ <li><span class='object_link'><a href="Errors/ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span></li>
108
+
109
+ </ul>
110
+
111
+ </div><h2>Defined Under Namespace</h2>
112
+ <p class="children">
113
+
114
+
115
+
116
+
117
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Errors/AuthenticationError.html" title="Servus::Support::Errors::AuthenticationError (class)">AuthenticationError</a></span>, <span class='object_link'><a href="Errors/BadRequestError.html" title="Servus::Support::Errors::BadRequestError (class)">BadRequestError</a></span>, <span class='object_link'><a href="Errors/ForbiddenError.html" title="Servus::Support::Errors::ForbiddenError (class)">ForbiddenError</a></span>, <span class='object_link'><a href="Errors/InternalServerError.html" title="Servus::Support::Errors::InternalServerError (class)">InternalServerError</a></span>, <span class='object_link'><a href="Errors/NotFoundError.html" title="Servus::Support::Errors::NotFoundError (class)">NotFoundError</a></span>, <span class='object_link'><a href="Errors/ServiceError.html" title="Servus::Support::Errors::ServiceError (class)">ServiceError</a></span>, <span class='object_link'><a href="Errors/ServiceUnavailableError.html" title="Servus::Support::Errors::ServiceUnavailableError (class)">ServiceUnavailableError</a></span>, <span class='object_link'><a href="Errors/UnauthorizedError.html" title="Servus::Support::Errors::UnauthorizedError (class)">UnauthorizedError</a></span>, <span class='object_link'><a href="Errors/UnprocessableEntityError.html" title="Servus::Support::Errors::UnprocessableEntityError (class)">UnprocessableEntityError</a></span>, <span class='object_link'><a href="Errors/ValidationError.html" title="Servus::Support::Errors::ValidationError (class)">ValidationError</a></span>
118
+
119
+
120
+ </p>
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+ </div>
131
+
132
+ <div id="footer">
133
+ Generated on Fri Nov 21 00:33:23 2025 by
134
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
135
+ 0.9.37 (ruby-3.4.4).
136
+ </div>
137
+
138
+ </div>
139
+ </body>
140
+ </html>