├── .gitattributes
├── .sonarqube
├── bin
│ ├── SonarScanner.MSBuild.Common.dll
│ ├── SonarScanner.MSBuild.Tasks.dll
│ └── targets
│ │ └── SonarQube.Integration.targets
├── conf
│ ├── 0
│ │ ├── ProjectOutFolderPath.txt
│ │ └── merged.ruleset
│ ├── SonarQubeAnalysisConfig.xml
│ ├── SonarQubeRoslyn-cs.ruleset
│ ├── SonarQubeRoslyn-vbnet.ruleset
│ ├── cs
│ │ └── SonarLint.xml
│ └── vbnet
│ │ └── SonarLint.xml
└── out
│ ├── 0
│ ├── FilesToAnalyze.txt
│ ├── ProjectInfo.xml
│ └── output-cs
│ │ ├── encoding.pb
│ │ ├── file-metadata.pb
│ │ ├── metrics.pb
│ │ ├── symrefs.pb
│ │ ├── token-cpd.pb
│ │ └── token-type.pb
│ ├── .sonar
│ ├── .sonar_lock
│ └── report-task.txt
│ ├── ProjectInfo.log
│ ├── sonar-project.properties
│ └── summary.md
├── .vs
└── CleanCodeDemo
│ └── v15
│ ├── .suo
│ └── Server
│ └── sqlite3
│ ├── db.lock
│ └── storage.ide
├── CleanCodeDemo.sln
└── CleanCodeDemo
├── App.config
├── BankServices
├── CentralBankService.cs
├── FakeBankService.cs
└── IsBankService.cs
├── Business
└── ProductManager.cs
├── CleanCodeDemo.csproj
├── CleanCodeDemo.csproj.user
├── Entities
├── CurrencyRate.cs
├── Customer.cs
├── Officer.cs
├── Product.cs
└── Student.cs
├── Handlers
├── CustomerCampaignHandler.cs
├── OfficerCampaignHandler.cs
└── StudentCampaignHandler.cs
├── Interfaces
├── IBankService.cs
├── IEntity.cs
├── IPerson.cs
├── IPersonCampaignHandler.cs
└── IProductService.cs
├── Program.cs
├── Properties
└── AssemblyInfo.cs
├── bin
└── Debug
│ ├── CleanCodeDemo.exe
│ ├── CleanCodeDemo.exe.RoslynCA.json
│ ├── CleanCodeDemo.exe.config
│ └── CleanCodeDemo.pdb
└── obj
└── Debug
├── CleanCodeDemo.csproj.CoreCompileInputs.cache
├── CleanCodeDemo.csproj.FileListAbsolute.txt
├── CleanCodeDemo.csprojAssemblyReference.cache
├── CleanCodeDemo.exe
├── CleanCodeDemo.pdb
├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
└── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform CRLF normalization * text=auto
--------------------------------------------------------------------------------
/.sonarqube/bin/SonarScanner.MSBuild.Common.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.sonarqube/bin/SonarScanner.MSBuild.Common.dll
--------------------------------------------------------------------------------
/.sonarqube/bin/SonarScanner.MSBuild.Tasks.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.sonarqube/bin/SonarScanner.MSBuild.Tasks.dll
--------------------------------------------------------------------------------
/.sonarqube/bin/targets/SonarQube.Integration.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
91 |
92 |
93 |
94 |
95 |
100 |
101 |
102 |
103 | true
104 |
105 |
106 |
107 |
108 | $(SonarQubeTempPath)\conf
109 | $(SonarQubeTempPath)\out
110 |
111 |
112 | AndroidEnvironment;AndroidJavaSource;AndroidResource;Build;ClCompile;ClInclude;Compile;Content;DeploymentExtensionConfiguration;EmbeddedResource;EntityDeploy;None;PostDeploy;PRIResource;PreDeploy;RefactorLog;Resource;Script;ScriptCode;TypeScriptCompile;$(SQAdditionalAnalysisFileItemTypes)
113 |
114 |
115 |
116 |
117 |
118 |
119 |
121 | $([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), SonarScanner.MSBuild.Tasks.dll))\SonarScanner.MSBuild.Tasks.dll
122 |
123 |
124 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
139 |
140 |
141 |
142 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
163 |
165 |
166 |
167 |
168 | true
169 |
170 |
171 | true
172 | true
173 |
174 |
175 |
176 |
181 |
182 |
183 |
184 | true
185 | true
186 | true
187 |
188 |
189 |
190 | true
191 |
192 |
193 |
194 |
195 | 3AC096D0-A1C2-E12C-1390-A8335801FDAB
196 | true
197 |
198 |
199 |
201 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
214 |
216 |
217 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 | $([System.IO.Path]::Combine($(MSBuildProjectDirectory),$(BaseIntermediateOutputPath)))
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 | true
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 | $(SonarQubeConfigPath)\$(UniqueName)
256 |
257 |
258 |
259 |
260 |
261 |
265 |
266 |
270 |
271 |
272 |
273 |
274 |
275 | $(ProjectSpecificOutDir)\FilesToAnalyze.txt
276 |
277 |
278 |
279 |
284 |
285 |
286 |
287 |
288 | FilesToAnalyze
289 |
290 |
291 |
292 |
294 |
295 |
309 |
310 |
311 |
312 |
313 |
314 |
327 |
328 |
329 | cs
330 | vbnet
331 |
332 |
333 |
334 |
335 |
336 |
350 |
355 |
356 |
357 |
358 | true
359 |
360 |
361 | false
362 |
363 |
364 |
366 | 4
367 |
368 |
369 |
370 |
371 |
372 |
373 |
374 |
376 |
377 |
378 |
379 |
380 |
381 |
388 |
389 |
390 |
391 |
392 |
393 |
394 |
397 | $(TargetDir)$(TargetFileName).RoslynCA.json
398 | $(SQRuleSetFilePath)
399 | $(ProjectSpecificConfDir)\ProjectOutFolderPath.txt
400 |
401 |
402 |
405 |
406 |
407 |
408 |
409 |
410 |
411 |
412 |
413 |
414 |
415 |
416 |
417 |
418 |
419 |
420 |
424 |
425 |
426 |
427 |
429 | $(ErrorLog)
430 |
431 |
433 | $(ProjectSpecificOutDir)
434 |
435 |
436 |
437 |
438 |
439 |
440 |
441 |
442 |
--------------------------------------------------------------------------------
/.sonarqube/conf/0/ProjectOutFolderPath.txt:
--------------------------------------------------------------------------------
1 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\out\0
2 |
--------------------------------------------------------------------------------
/.sonarqube/conf/0/merged.ruleset:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 |
298 |
299 |
300 |
301 |
302 |
303 |
304 |
305 |
306 |
307 |
308 |
309 |
310 |
311 |
312 |
313 |
314 |
315 |
316 |
317 |
318 |
319 |
320 |
321 |
322 |
323 |
324 |
325 |
326 |
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 |
337 |
338 |
339 |
340 |
341 |
342 |
343 |
344 |
345 |
346 |
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 |
355 |
--------------------------------------------------------------------------------
/.sonarqube/conf/SonarQubeAnalysisConfig.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\conf
4 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\out
5 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\bin
6 | C:\Users\kerem\source\repos\CleanCodeDemo
7 | true
8 | http://localhost:9000
9 | 7.4.0.18908
10 | 39393f3dbea9edf48ca213b3243ab1fee8a814c9
11 |
12 |
13 |
14 |
15 |
16 |
17 | 7.7.0.7192
18 | true
19 | .ts,.tsx
20 | $, jQuery
21 | 7.7.0.7192
22 | .go
23 | SonarQube
24 | false
25 | 104
26 | **/vendor/**
27 | false
28 | 60
29 | false
30 | as
31 | .rb
32 | SonarAnalyzer.CSharp
33 | xunit-reports/xunit-result-*.xml
34 | false
35 | angular,goog,google,OpenLayers,d3,dojo,dojox,dijit,Backbone,moment,casper
36 | 24
37 | **/node_modules/**,**/bower_components/**
38 | .css,.less,.scss
39 | false
40 | false
41 | true
42 | false
43 | target/jacoco.exec, target/jacoco-it.exec
44 | SonarAnalyzer.VisualBasic
45 | false
46 | noreply@nowhere
47 | 7.7.0.7192
48 | true
49 | node
50 | 4
51 | previous_version
52 | SonarAnalyzer.VisualBasic
53 | [SONARQUBE]
54 | false
55 | csharp
56 | SonarAnalyzer.VisualBasic
57 | true
58 | 30
59 | 52
60 | https://secure.gravatar.com/avatar/{EMAIL_MD5}.jpg?s={SIZE}&d=identicon
61 | coverage/.resultset.json
62 | SonarAnalyzer-7.7.0.7192.zip
63 | 600
64 | SonarAnalyzer.CSharp
65 | amd, applescript, atomtest, browser, commonjs, couch, embertest, flow, greasemonkey, jasmine, jest, jquery, meteor, mocha, mongo, nashorn, node, phantomjs, prototypejs, protractor, qunit, rhino, serviceworker, shared-node-browser, shelljs, webextensions, worker, wsh, yui
66 | false
67 | false
68 | coverage-reports/*coverage-*.xml
69 | **/node_modules/**,**/bower_components/**
70 | .vb
71 | SonarAnalyzer.CSharp
72 | false
73 | 0.05,0.1,0.2,0.5
74 | 30
75 | false
76 | devcockpit,pdfreport,governance,ldap,authaad,authgithub,authbitbucket,googleanalytics
77 | py
78 | 7.7.0.7192
79 | .cs
80 | .js,.jsx,.vue
81 | SonarAnalyzer-7.7.0.7192.zip
82 | .java,.jav
83 | .kt
84 | php,php3,php4,php5,phtml,inc
85 | .xml,.xsd,.xsl
86 | 260
87 | vbnet
88 | false
89 | https://update.sonarsource.org/update-center.properties
90 | BF41A1F2-AWcy2e5bJXd29NOl70Og
91 | 27.11.2018 09:17:10
92 |
93 |
94 | http://localhost:9000
95 |
96 |
97 |
98 | cs
99 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\conf\SonarQubeRoslyn-cs.ruleset
100 |
101 | C:\Users\kerem\AppData\Local\Temp\.sonarqube\resources\0\Google.Protobuf.dll
102 | C:\Users\kerem\AppData\Local\Temp\.sonarqube\resources\0\SonarAnalyzer.CSharp.dll
103 | C:\Users\kerem\AppData\Local\Temp\.sonarqube\resources\0\SonarAnalyzer.dll
104 |
105 |
106 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\conf\cs\SonarLint.xml
107 |
108 |
109 |
110 | vbnet
111 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\conf\SonarQubeRoslyn-vbnet.ruleset
112 |
113 | C:\Users\kerem\AppData\Local\Temp\.sonarqube\resources\1\Google.Protobuf.dll
114 | C:\Users\kerem\AppData\Local\Temp\.sonarqube\resources\1\SonarAnalyzer.dll
115 | C:\Users\kerem\AppData\Local\Temp\.sonarqube\resources\1\SonarAnalyzer.VisualBasic.dll
116 |
117 |
118 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\conf\vbnet\SonarLint.xml
119 |
120 |
121 |
122 |
--------------------------------------------------------------------------------
/.sonarqube/conf/SonarQubeRoslyn-cs.ruleset:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 |
298 |
299 |
300 |
301 |
302 |
303 |
304 |
305 |
306 |
307 |
308 |
309 |
310 |
311 |
312 |
313 |
314 |
315 |
316 |
317 |
318 |
319 |
320 |
321 |
322 |
323 |
324 |
325 |
326 |
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 |
337 |
338 |
339 |
340 |
341 |
342 |
343 |
344 |
345 |
346 |
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 |
--------------------------------------------------------------------------------
/.sonarqube/conf/SonarQubeRoslyn-vbnet.ruleset:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
--------------------------------------------------------------------------------
/.sonarqube/conf/cs/SonarLint.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | sonar.cs.ignoreHeaderComments
6 | true
7 |
8 |
9 | sonar.cs.roslyn.ignoreIssues
10 | false
11 |
12 |
13 | sonar.cs.file.suffixes
14 | .cs
15 |
16 |
17 |
18 |
19 | S2225
20 |
21 |
22 | S2346
23 |
24 |
25 | S2589
26 |
27 |
28 | S2223
29 |
30 |
31 | S3433
32 |
33 |
34 | S2344
35 |
36 |
37 | S1135
38 |
39 |
40 | S2345
41 |
42 |
43 | S1134
44 |
45 |
46 | S4524
47 |
48 |
49 | S2342
50 |
51 |
52 | format
53 | ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
54 |
55 |
56 | flagsAttributeFormat
57 | ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?s$
58 |
59 |
60 |
61 |
62 | S2583
63 |
64 |
65 | S1940
66 |
67 |
68 | S3447
69 |
70 |
71 | S2234
72 |
73 |
74 | S3444
75 |
76 |
77 | S3445
78 |
79 |
80 | S1144
81 |
82 |
83 | S2114
84 |
85 |
86 | S1264
87 |
88 |
89 | S3442
90 |
91 |
92 | S3443
93 |
94 |
95 | S3440
96 |
97 |
98 | S1944
99 |
100 |
101 | S3449
102 |
103 |
104 | S1939
105 |
106 |
107 | S3655
108 |
109 |
110 | S3776
111 |
112 |
113 | threshold
114 | 15
115 |
116 |
117 | propertyThreshold
118 | 3
119 |
120 |
121 |
122 |
123 | S3897
124 |
125 |
126 | S2688
127 |
128 |
129 | S2201
130 |
131 |
132 | S1110
133 |
134 |
135 | S2681
136 |
137 |
138 | S1118
139 |
140 |
141 | S2328
142 |
143 |
144 | S1117
145 |
146 |
147 | S2326
148 |
149 |
150 | S2327
151 |
152 |
153 | S3415
154 |
155 |
156 | S1479
157 |
158 |
159 | maximum
160 | 30
161 |
162 |
163 |
164 |
165 | S1116
166 |
167 |
168 | S1905
169 |
170 |
171 | S4061
172 |
173 |
174 | S1125
175 |
176 |
177 | S2696
178 |
179 |
180 | S1123
181 |
182 |
183 | S1121
184 |
185 |
186 | S2692
187 |
188 |
189 | S2219
190 |
191 |
192 | S1006
193 |
194 |
195 | S3427
196 |
197 |
198 | S1481
199 |
200 |
201 | S3237
202 |
203 |
204 | S3358
205 |
206 |
207 | S3598
208 |
209 |
210 | S3236
211 |
212 |
213 | S4200
214 |
215 |
216 | S2386
217 |
218 |
219 | S3597
220 |
221 |
222 | S1854
223 |
224 |
225 | S1172
226 |
227 |
228 | S4457
229 |
230 |
231 | S4214
232 |
233 |
234 | S4456
235 |
236 |
237 | S3249
238 |
239 |
240 | S1862
241 |
242 |
243 | S2278
244 |
245 |
246 | S3246
247 |
248 |
249 | S3005
250 |
251 |
252 | S3247
253 |
254 |
255 | S4211
256 |
257 |
258 | S3244
259 |
260 |
261 | S4210
262 |
263 |
264 | S1066
265 |
266 |
267 | S1186
268 |
269 |
270 | S2275
271 |
272 |
273 | S1185
274 |
275 |
276 | S3927
277 |
278 |
279 | S3925
280 |
281 |
282 | S3928
283 |
284 |
285 | S3926
286 |
287 |
288 | S2953
289 |
290 |
291 | S3923
292 |
293 |
294 | S3241
295 |
296 |
297 | S2368
298 |
299 |
300 | S3457
301 |
302 |
303 | S3458
304 |
305 |
306 | S2245
307 |
308 |
309 | S4426
310 |
311 |
312 | S1155
313 |
314 |
315 | S3456
316 |
317 |
318 | S2123
319 |
320 |
321 | S3453
322 |
323 |
324 | S2365
325 |
326 |
327 | S2486
328 |
329 |
330 | S3451
331 |
332 |
333 | S3693
334 |
335 |
336 | S3459
337 |
338 |
339 | S4428
340 |
341 |
342 | S3217
343 |
344 |
345 | S3218
346 |
347 |
348 | S927
349 |
350 |
351 | S125
352 |
353 |
354 | S3450
355 |
356 |
357 | S2259
358 |
359 |
360 | S1048
361 |
362 |
363 | S1168
364 |
365 |
366 | S2930
367 |
368 |
369 | S3346
370 |
371 |
372 | S3466
373 |
374 |
375 | S3343
376 |
377 |
378 | S3464
379 |
380 |
381 | S2255
382 |
383 |
384 | S2376
385 |
386 |
387 | S3220
388 |
389 |
390 | S4433
391 |
392 |
393 | S1163
394 |
395 |
396 | S1607
397 |
398 |
399 | S1848
400 |
401 |
402 | S3903
403 |
404 |
405 | S3904
406 |
407 |
408 | S2933
409 |
410 |
411 | S2934
412 |
413 |
414 | S818
415 |
416 |
417 | S2372
418 |
419 |
420 | S2743
421 |
422 |
423 | S110
424 |
425 |
426 | max
427 | 5
428 |
429 |
430 |
431 |
432 | S112
433 |
434 |
435 | S2068
436 |
437 |
438 | credentialWords
439 | password, passwd, pwd
440 |
441 |
442 |
443 |
444 | S2187
445 |
446 |
447 | S3397
448 |
449 |
450 | S1656
451 |
452 |
453 | S907
454 |
455 |
456 | S2184
457 |
458 |
459 | S107
460 |
461 |
462 | max
463 | 7
464 |
465 |
466 |
467 |
468 | S2183
469 |
470 |
471 | S108
472 |
473 |
474 | S2995
475 |
476 |
477 | S3600
478 |
479 |
480 | S3963
481 |
482 |
483 | S2996
484 |
485 |
486 | S3169
487 |
488 |
489 | S4019
490 |
491 |
492 | S4016
493 |
494 |
495 | S3168
496 |
497 |
498 | S4015
499 |
500 |
501 | S2757
502 |
503 |
504 | S3604
505 |
506 |
507 | S2758
508 |
509 |
510 | S2997
511 |
512 |
513 | S3603
514 |
515 |
516 | S3966
517 |
518 |
519 | S2190
520 |
521 |
522 | S1751
523 |
524 |
525 | S1871
526 |
527 |
528 | S3256
529 |
530 |
531 | S3376
532 |
533 |
534 | S1075
535 |
536 |
537 | S4586
538 |
539 |
540 | S3251
541 |
542 |
543 | S4581
544 |
545 |
546 | S3010
547 |
548 |
549 | S4220
550 |
551 |
552 | S1643
553 |
554 |
555 | S1764
556 |
557 |
558 | S2178
559 |
560 |
561 | S2971
562 |
563 |
564 | S3264
565 |
566 |
567 | S101
568 |
569 |
570 | S3265
571 |
572 |
573 | S2737
574 |
575 |
576 | S3262
577 |
578 |
579 | S3263
580 |
581 |
582 | S2292
583 |
584 |
585 | S3261
586 |
587 |
588 | S2290
589 |
590 |
591 | S2291
592 |
593 |
594 | S3875
595 |
596 |
597 | S3871
598 |
599 |
600 | S1210
601 |
602 |
603 | S1450
604 |
605 |
606 | S2306
607 |
608 |
609 | S3877
610 |
611 |
612 | S3998
613 |
614 |
615 | S1215
616 |
617 |
618 | S1699
619 |
620 |
621 | S1104
622 |
623 |
624 | S3887
625 |
626 |
627 | S3400
628 |
629 |
630 | S3884
631 |
632 |
633 | S3885
634 |
635 |
636 | S2551
637 |
638 |
639 | S3881
640 |
641 |
642 | S2436
643 |
644 |
645 | max
646 | 2
647 |
648 |
649 | maxMethod
650 | 3
651 |
652 |
653 |
654 |
655 | S3889
656 |
657 |
658 | S2437
659 |
660 |
661 | S3972
662 |
663 |
664 | S3610
665 |
666 |
667 | S3973
668 |
669 |
670 | S2761
671 |
672 |
673 | S4144
674 |
675 |
676 | S3971
677 |
678 |
679 | S3172
680 |
681 |
682 | S4143
683 |
684 |
685 | S4159
686 |
687 |
688 | S4260
689 |
690 |
691 | S3984
692 |
693 |
694 | S4277
695 |
696 |
697 | S3981
698 |
699 |
700 | S4158
701 |
702 |
703 | S4035
704 |
705 |
706 | S1206
707 |
708 |
709 | S3626
710 |
711 |
712 | S3869
713 |
714 |
715 | S4275
716 |
717 |
718 | S3060
719 |
720 |
721 |
722 |
723 |
724 |
--------------------------------------------------------------------------------
/.sonarqube/conf/vbnet/SonarLint.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | sonar.vbnet.roslyn.ignoreIssues
6 | false
7 |
8 |
9 | sonar.vbnet.ignoreHeaderComments
10 | true
11 |
12 |
13 | sonar.vbnet.file.suffixes
14 | .vb
15 |
16 |
17 |
18 |
19 | S1654
20 |
21 |
22 | format
23 | ^[a-z][a-z0-9]*([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
24 |
25 |
26 |
27 |
28 | S2346
29 |
30 |
31 | S2344
32 |
33 |
34 | S2347
35 |
36 |
37 | format
38 | ^(([a-z][a-z0-9]*)?([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?_)?([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
39 |
40 |
41 |
42 |
43 | S2345
44 |
45 |
46 | S2342
47 |
48 |
49 | format
50 | ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
51 |
52 |
53 | flagsAttributeFormat
54 | ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?s$
55 |
56 |
57 |
58 |
59 | S2068
60 |
61 |
62 | credentialWords
63 | password, passwd, pwd
64 |
65 |
66 |
67 |
68 | S112
69 |
70 |
71 | S2340
72 |
73 |
74 | S1656
75 |
76 |
77 | S2349
78 |
79 |
80 | S1940
81 |
82 |
83 | S2358
84 |
85 |
86 | S1542
87 |
88 |
89 | format
90 | ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
91 |
92 |
93 |
94 |
95 | S2355
96 |
97 |
98 | S2352
99 |
100 |
101 | S2757
102 |
103 |
104 | S2359
105 |
106 |
107 | S3449
108 |
109 |
110 | S3603
111 |
112 |
113 | S114
114 |
115 |
116 | format
117 | ^I([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
118 |
119 |
120 |
121 |
122 | S117
123 |
124 |
125 | format
126 | ^[a-z][a-z0-9]*([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
127 |
128 |
129 |
130 |
131 | S1751
132 |
133 |
134 | S3776
135 |
136 |
137 | threshold
138 | 15
139 |
140 |
141 | propertyThreshold
142 | 3
143 |
144 |
145 |
146 |
147 | S1075
148 |
149 |
150 | S1197
151 |
152 |
153 | S1871
154 |
155 |
156 | S1479
157 |
158 |
159 | maximum
160 | 30
161 |
162 |
163 |
164 |
165 | S4586
166 |
167 |
168 | S1643
169 |
170 |
171 | S1764
172 |
173 |
174 | S101
175 |
176 |
177 | format
178 | ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
179 |
180 |
181 |
182 |
183 | S2178
184 |
185 |
186 | S2737
187 |
188 |
189 | S3385
190 |
191 |
192 | S1645
193 |
194 |
195 | S1481
196 |
197 |
198 | S3358
199 |
200 |
201 | S3598
202 |
203 |
204 | S2304
205 |
206 |
207 | format
208 | ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?(\.([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?)*$
209 |
210 |
211 |
212 |
213 | S2951
214 |
215 |
216 | S1862
217 |
218 |
219 | S2551
220 |
221 |
222 | S1186
223 |
224 |
225 | S4210
226 |
227 |
228 | S3926
229 |
230 |
231 | S3927
232 |
233 |
234 | S3889
235 |
236 |
237 | S3923
238 |
239 |
240 | S2368
241 |
242 |
243 | S1313
244 |
245 |
246 | S2761
247 |
248 |
249 | S3453
250 |
251 |
252 | S2365
253 |
254 |
255 | S4144
256 |
257 |
258 | S3693
259 |
260 |
261 | S4428
262 |
263 |
264 | S4143
265 |
266 |
267 | S4159
268 |
269 |
270 | S4260
271 |
272 |
273 | S1048
274 |
275 |
276 | S3466
277 |
278 |
279 | S2375
280 |
281 |
282 | minimumSeriesLength
283 | 6
284 |
285 |
286 |
287 |
288 | S3464
289 |
290 |
291 | S4277
292 |
293 |
294 | S2376
295 |
296 |
297 | S3981
298 |
299 |
300 | S3903
301 |
302 |
303 | S3869
304 |
305 |
306 | S2372
307 |
308 |
309 | S4275
310 |
311 |
312 |
313 |
314 |
315 |
--------------------------------------------------------------------------------
/.sonarqube/out/.sonar/.sonar_lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.sonarqube/out/.sonar/.sonar_lock
--------------------------------------------------------------------------------
/.sonarqube/out/.sonar/report-task.txt:
--------------------------------------------------------------------------------
1 | projectKey=39393f3dbea9edf48ca213b3243ab1fee8a814c9
2 | serverUrl=http://localhost:9000
3 | serverVersion=7.4.0.18908
4 | dashboardUrl=http://localhost:9000/dashboard?id=39393f3dbea9edf48ca213b3243ab1fee8a814c9
5 | ceTaskId=AWdT1JgTXzumSL29Fbb1
6 | ceTaskUrl=http://localhost:9000/api/ce/task?id=AWdT1JgTXzumSL29Fbb1
7 |
--------------------------------------------------------------------------------
/.sonarqube/out/0/FilesToAnalyze.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.sonarqube/out/0/FilesToAnalyze.txt
--------------------------------------------------------------------------------
/.sonarqube/out/0/ProjectInfo.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | CleanCodeDemo
4 | C#
5 | Product
6 | 492c0c1c-c13d-4c4e-a2d9-af4e02209a29
7 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\CleanCodeDemo.csproj
8 | false
9 |
10 |
11 |
12 |
13 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\bin\Debug\CleanCodeDemo.exe.RoslynCA.json
14 | C:\Users\kerem\source\repos\CleanCodeDemo\.sonarqube\out\0
15 |
16 | Debug
17 | AnyCPU
18 |
--------------------------------------------------------------------------------
/.sonarqube/out/0/output-cs/encoding.pb:
--------------------------------------------------------------------------------
1 | c
2 | ZC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\BankServices\CentralBankService.csutf-8`
3 | WC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\BankServices\FakeBankService.csutf-8Y
4 | PC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Business\CurrencyRate.csutf-8U
5 | LC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Entities\Customer.csutf-8]
6 | TC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\BankServices\IBankService.csutf-8V
7 | MC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Interfaces\IEntity.csutf-8V
8 | MC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Interfaces\IPerson.csutf-8^
9 | UC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Interfaces\IProductService.csutf-8^
10 | UC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\BankServices\IsBankService.csutf-8T
11 | KC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Entities\Officer.csutf-8T
12 | KC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Entities\Product.csutf-8[
13 | RC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Business\ProductManager.csutf-8K
14 | BC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Program.csutf-8[
15 | RC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Properties\AssemblyInfo.csutf-8T
16 | KC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Entities\Student.csutf-8
--------------------------------------------------------------------------------
/.sonarqube/out/0/output-cs/file-metadata.pb:
--------------------------------------------------------------------------------
1 | \
2 | ZC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\BankServices\CentralBankService.csY
3 | WC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\BankServices\FakeBankService.csR
4 | PC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Business\CurrencyRate.csN
5 | LC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Entities\Customer.csV
6 | TC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\BankServices\IBankService.csO
7 | MC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Interfaces\IEntity.csO
8 | MC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Interfaces\IPerson.csW
9 | UC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Interfaces\IProductService.csW
10 | UC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\BankServices\IsBankService.csM
11 | KC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Entities\Officer.csM
12 | KC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Entities\Product.csT
13 | RC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Business\ProductManager.csD
14 | BC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Program.csT
15 | RC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Properties\AssemblyInfo.csM
16 | KC:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\Entities\Student.csX
17 | TC:\Users\kerem\AppData\Local\Temp\.NETFramework,Version=v4.6.1.AssemblyAttributes.cs
--------------------------------------------------------------------------------
/.sonarqube/out/0/output-cs/metrics.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.sonarqube/out/0/output-cs/metrics.pb
--------------------------------------------------------------------------------
/.sonarqube/out/0/output-cs/symrefs.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.sonarqube/out/0/output-cs/symrefs.pb
--------------------------------------------------------------------------------
/.sonarqube/out/0/output-cs/token-cpd.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.sonarqube/out/0/output-cs/token-cpd.pb
--------------------------------------------------------------------------------
/.sonarqube/out/0/output-cs/token-type.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.sonarqube/out/0/output-cs/token-type.pb
--------------------------------------------------------------------------------
/.sonarqube/out/ProjectInfo.log:
--------------------------------------------------------------------------------
1 | Product projects
2 | ---------------------------------------
3 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\CleanCodeDemo.csproj
4 |
5 |
6 | Test projects
7 | ---------------------------------------
8 |
9 |
10 | Invalid projects
11 | ---------------------------------------
12 | {none}
13 |
14 |
15 | Skipped projects
16 | ---------------------------------------
17 | {none}
18 |
19 |
20 | Excluded projects
21 | ---------------------------------------
22 | {none}
23 |
24 |
25 |
--------------------------------------------------------------------------------
/.sonarqube/out/sonar-project.properties:
--------------------------------------------------------------------------------
1 | sonar.projectKey=39393f3dbea9edf48ca213b3243ab1fee8a814c9
2 | sonar.working.directory=C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\.sonarqube\\out\\.sonar
3 | sonar.projectBaseDir=C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo
4 |
5 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.projectKey=39393f3dbea9edf48ca213b3243ab1fee8a814c9:492C0C1C-C13D-4C4E-A2D9-AF4E02209A29
6 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.projectName=CleanCodeDemo
7 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.projectBaseDir=C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo
8 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.sourceEncoding=utf-8
9 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.sources=\
10 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\BankServices\\CentralBankService.cs",\
11 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\BankServices\\FakeBankService.cs",\
12 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Business\\CurrencyRate.cs",\
13 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Entities\\Customer.cs",\
14 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\BankServices\\IBankService.cs",\
15 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Interfaces\\IEntity.cs",\
16 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Interfaces\\IPerson.cs",\
17 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Interfaces\\IProductService.cs",\
18 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\BankServices\\IsBankService.cs",\
19 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Entities\\Officer.cs",\
20 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Entities\\Product.cs",\
21 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Business\\ProductManager.cs",\
22 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Program.cs",\
23 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Properties\\AssemblyInfo.cs",\
24 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\Entities\\Student.cs",\
25 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\App.config"
26 |
27 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.cs.roslyn.reportFilePath=C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\bin\\Debug\\CleanCodeDemo.exe.RoslynCA.json
28 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.cs.analyzer.projectOutPath=C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\.sonarqube\\out\\0
29 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.cs.analyzer.projectOutPaths=\
30 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\.sonarqube\\out\\0"
31 | 492C0C1C-C13D-4C4E-A2D9-AF4E02209A29.sonar.cs.roslyn.reportFilePaths=\
32 | "C:\\Users\\kerem\\source\\repos\\CleanCodeDemo\\CleanCodeDemo\\bin\\Debug\\CleanCodeDemo.exe.RoslynCA.json"
33 |
34 | sonar.host.url=http://localhost:9000
35 | sonar.visualstudio.enable=false
36 |
37 | sonar.modules=492C0C1C-C13D-4C4E-A2D9-AF4E02209A29
38 |
39 |
--------------------------------------------------------------------------------
/.sonarqube/out/summary.md:
--------------------------------------------------------------------------------
1 | Analysis succeeded for SonarQube project "", version [Analysis results](http://localhost:9000/dashboard/index/39393f3dbea9edf48ca213b3243ab1fee8a814c9)
2 | - Product projects: 1, test projects: 0
3 | - Invalid projects: 0, skipped projects: 0, excluded projects: 0
4 |
--------------------------------------------------------------------------------
/.vs/CleanCodeDemo/v15/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.vs/CleanCodeDemo/v15/.suo
--------------------------------------------------------------------------------
/.vs/CleanCodeDemo/v15/Server/sqlite3/db.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.vs/CleanCodeDemo/v15/Server/sqlite3/db.lock
--------------------------------------------------------------------------------
/.vs/CleanCodeDemo/v15/Server/sqlite3/storage.ide:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/.vs/CleanCodeDemo/v15/Server/sqlite3/storage.ide
--------------------------------------------------------------------------------
/CleanCodeDemo.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 15
4 | VisualStudioVersion = 15.0.28307.106
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CleanCodeDemo", "CleanCodeDemo\CleanCodeDemo.csproj", "{492C0C1C-C13D-4C4E-A2D9-AF4E02209A29}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {492C0C1C-C13D-4C4E-A2D9-AF4E02209A29}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {492C0C1C-C13D-4C4E-A2D9-AF4E02209A29}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {492C0C1C-C13D-4C4E-A2D9-AF4E02209A29}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {492C0C1C-C13D-4C4E-A2D9-AF4E02209A29}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {C663CB7C-7AA2-4B48-9068-62715E110F52}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/CleanCodeDemo/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CleanCodeDemo/BankServices/CentralBankService.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.BankServices
5 | {
6 | public class CentralBankService
7 | {
8 | public decimal ConvertRate(CurrencyRate currencyRate)
9 | {
10 | return currencyRate.Price / (decimal)5.28;
11 | }
12 | }
13 |
14 | public class CentralBankServiceAdapter : IBankService
15 | {
16 | public decimal ConvertRate(CurrencyRate currencyRate)
17 | {
18 | CentralBankService centralBankService=new CentralBankService();
19 | return centralBankService.ConvertRate(currencyRate);
20 | }
21 | }
22 |
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/CleanCodeDemo/BankServices/FakeBankService.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.BankServices
5 | {
6 | public class FakeBankService : IBankService
7 | {
8 | public decimal ConvertRate(CurrencyRate currencyRate)
9 | {
10 | return currencyRate.Price / (decimal)5.30;
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/CleanCodeDemo/BankServices/IsBankService.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.BankServices
5 | {
6 | public class IsBankService
7 | {
8 | public decimal ConvertRate(CurrencyRate currencyRate)
9 | {
10 | return currencyRate.Price / (decimal)5.25;
11 | }
12 | }
13 | public class IsBankServiceAdapter : IBankService
14 | {
15 | public decimal ConvertRate(CurrencyRate currencyRate)
16 | {
17 | IsBankService centralBankService = new IsBankService();
18 | return centralBankService.ConvertRate(currencyRate);
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Business/ProductManager.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using CleanCodeDemo.BankServices;
3 | using CleanCodeDemo.Entities;
4 | using CleanCodeDemo.Interfaces;
5 |
6 | namespace CleanCodeDemo.Business
7 | {
8 | public class ProductManager : IProductService
9 | {
10 | private readonly IBankService _bankService;
11 |
12 | public ProductManager(IBankService bankService)
13 | {
14 | _bankService = bankService;
15 | }
16 |
17 | public void Sell(Product product, IPerson person)
18 | {
19 | var price = person.CampaignHandler.Calculate(product);
20 | var exchangePrice = _bankService.ConvertRate(new CurrencyRate { Currency = 1, Price = price });
21 |
22 | Console.WriteLine(person.Name +" İsimli Müşterimiz için indirim Karşılığı:" + price.ToString("#.##"));
23 | Console.WriteLine("Ürünün Döviz Karşılığı:" + exchangePrice.ToString("#.##"));
24 | Console.WriteLine("#####################################################");
25 | }
26 | internal static void CustomerSell()
27 | {
28 | IProductService productService = new ProductManager(new CentralBankServiceAdapter());
29 | productService.Sell(
30 | new Product { ProductId = 1, ProductName = "Laptop", ProductPrice = 1000 },
31 | new Customer() { Id = 1, Name = "Kerem" }
32 | );
33 | }
34 |
35 | internal static void StudentSell()
36 | {
37 | IProductService productService = new ProductManager(new IsBankServiceAdapter());
38 | productService.Sell(
39 | new Product { ProductId = 1, ProductName = "Laptop", ProductPrice = 1000 },
40 | new Student() { Id = 1, Name = "Nesil" }
41 | );
42 | }
43 | internal static void OfficerSell()
44 | {
45 | IProductService productService = new ProductManager(new FakeBankService());
46 | productService.Sell(
47 | new Product { ProductId = 1, ProductName = "Laptop", ProductPrice = 1000 },
48 | new Officer() { Id = 1, Name = "Engin" }
49 | );
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/CleanCodeDemo/CleanCodeDemo.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {492C0C1C-C13D-4C4E-A2D9-AF4E02209A29}
8 | Exe
9 | CleanCodeDemo
10 | CleanCodeDemo
11 | v4.6.1
12 | 512
13 | true
14 | true
15 |
16 |
17 | AnyCPU
18 | true
19 | full
20 | false
21 | bin\Debug\
22 | DEBUG;TRACE
23 | prompt
24 | 4
25 |
26 |
27 | AnyCPU
28 | pdbonly
29 | true
30 | bin\Release\
31 | TRACE
32 | prompt
33 | 4
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
--------------------------------------------------------------------------------
/CleanCodeDemo/CleanCodeDemo.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ShowAllFiles
5 |
6 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Entities/CurrencyRate.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Interfaces;
2 |
3 | namespace CleanCodeDemo.Entities
4 | {
5 | public class CurrencyRate:IEntity
6 | {
7 | public decimal Price { get; set; }
8 | public int Currency { get; set; }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Entities/Customer.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Handlers;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.Entities
5 | {
6 | public class Customer : IEntity, IPerson
7 | {
8 | public Customer()
9 | {
10 | CampaignHandler = new CustomerCampaignHandler();
11 | }
12 | public int Id { get; set; }
13 | public string Name { get; set; }
14 | public IPersonCampaignHandler CampaignHandler { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Entities/Officer.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Handlers;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.Entities
5 | {
6 | public class Officer : IEntity, IPerson
7 | {
8 | public Officer()
9 | {
10 | CampaignHandler = new OfficerCampaignHandler();
11 | }
12 | public int Id { get; set; }
13 | public string Name { get; set; }
14 | public IPersonCampaignHandler CampaignHandler { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Entities/Product.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Interfaces;
2 |
3 | namespace CleanCodeDemo.Entities
4 | {
5 | public class Product : IEntity
6 | {
7 | public int ProductId { get; set; }
8 | public string ProductName { get; set; }
9 | public decimal ProductPrice { get; set; }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Entities/Student.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Handlers;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.Entities
5 | {
6 | public class Student : IEntity, IPerson
7 | {
8 | public Student()
9 | {
10 | CampaignHandler = new StudentCampaignHandler();
11 | }
12 | public int Id { get; set; }
13 | public string Name { get; set; }
14 |
15 | public IPersonCampaignHandler CampaignHandler { get; set; }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Handlers/CustomerCampaignHandler.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.Handlers
5 | {
6 | public class CustomerCampaignHandler : IPersonCampaignHandler
7 | {
8 | public decimal Calculate(Product product)
9 | {
10 | return product.ProductPrice;
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Handlers/OfficerCampaignHandler.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.Handlers
5 | {
6 | public class OfficerCampaignHandler : IPersonCampaignHandler
7 | {
8 | public decimal Calculate(Product product)
9 | {
10 | return product.ProductPrice * (decimal)0.80;
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Handlers/StudentCampaignHandler.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 | using CleanCodeDemo.Interfaces;
3 |
4 | namespace CleanCodeDemo.Handlers
5 | {
6 | public class StudentCampaignHandler : IPersonCampaignHandler
7 | {
8 | public decimal Calculate(Product product)
9 | {
10 | return product.ProductPrice * (decimal)0.50;
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Interfaces/IBankService.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 |
3 | namespace CleanCodeDemo.Interfaces
4 | {
5 | public interface IBankService
6 | {
7 | decimal ConvertRate(CurrencyRate currencyRate);
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Interfaces/IEntity.cs:
--------------------------------------------------------------------------------
1 | namespace CleanCodeDemo.Interfaces
2 | {
3 | public interface IEntity
4 | {
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Interfaces/IPerson.cs:
--------------------------------------------------------------------------------
1 | namespace CleanCodeDemo.Interfaces
2 | {
3 | public interface IPerson
4 | {
5 | int Id { get; set; }
6 | string Name { get; set; }
7 | IPersonCampaignHandler CampaignHandler { get; set; }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Interfaces/IPersonCampaignHandler.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 |
3 | namespace CleanCodeDemo.Interfaces
4 | {
5 | public interface IPersonCampaignHandler
6 | {
7 | decimal Calculate(Product product);
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Interfaces/IProductService.cs:
--------------------------------------------------------------------------------
1 | using CleanCodeDemo.Entities;
2 |
3 | namespace CleanCodeDemo.Interfaces
4 | {
5 | public interface IProductService
6 | {
7 | void Sell(Product product,IPerson person);
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using CleanCodeDemo.BankServices;
3 | using CleanCodeDemo.Entities;
4 | using CleanCodeDemo.Interfaces;
5 | using static CleanCodeDemo.Business.ProductManager;
6 |
7 | namespace CleanCodeDemo
8 | {
9 | class Program
10 | {
11 | protected Program()
12 | {
13 | }
14 | static void Main(string[] args)
15 | {
16 | CustomerSell();
17 | StudentSell();
18 | OfficerSell();
19 | Console.ReadLine();
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/CleanCodeDemo/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("CleanCodeDemo")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("CleanCodeDemo")]
13 | [assembly: AssemblyCopyright("Copyright © 2018")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("492c0c1c-c13d-4c4e-a2d9-af4e02209a29")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/CleanCodeDemo/bin/Debug/CleanCodeDemo.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/CleanCodeDemo/bin/Debug/CleanCodeDemo.exe
--------------------------------------------------------------------------------
/CleanCodeDemo/bin/Debug/CleanCodeDemo.exe.RoslynCA.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json.schemastore.org/sarif-1.0.0",
3 | "version": "1.0.0",
4 | "runs": [
5 | {
6 | "tool": {
7 | "name": "Microsoft (R) Visual C# Compiler",
8 | "version": "2.10.0.0",
9 | "fileVersion": "2.10.0.0 (b9fb1610)",
10 | "semanticVersion": "2.10.0",
11 | "language": "tr-TR"
12 | },
13 | "results": [
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/CleanCodeDemo/bin/Debug/CleanCodeDemo.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CleanCodeDemo/bin/Debug/CleanCodeDemo.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/CleanCodeDemo/bin/Debug/CleanCodeDemo.pdb
--------------------------------------------------------------------------------
/CleanCodeDemo/obj/Debug/CleanCodeDemo.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 29daf54d2baa667b1cbafab9c2f1f20bf2ad24ce
2 |
--------------------------------------------------------------------------------
/CleanCodeDemo/obj/Debug/CleanCodeDemo.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\bin\Debug\CleanCodeDemo.exe.config
2 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\bin\Debug\CleanCodeDemo.exe
3 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\bin\Debug\CleanCodeDemo.pdb
4 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\obj\Debug\CleanCodeDemo.csprojAssemblyReference.cache
5 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\obj\Debug\CleanCodeDemo.csproj.CoreCompileInputs.cache
6 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\obj\Debug\CleanCodeDemo.exe
7 | C:\Users\kerem\source\repos\CleanCodeDemo\CleanCodeDemo\obj\Debug\CleanCodeDemo.pdb
8 |
--------------------------------------------------------------------------------
/CleanCodeDemo/obj/Debug/CleanCodeDemo.csprojAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/CleanCodeDemo/obj/Debug/CleanCodeDemo.csprojAssemblyReference.cache
--------------------------------------------------------------------------------
/CleanCodeDemo/obj/Debug/CleanCodeDemo.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/CleanCodeDemo/obj/Debug/CleanCodeDemo.exe
--------------------------------------------------------------------------------
/CleanCodeDemo/obj/Debug/CleanCodeDemo.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/CleanCodeDemo/obj/Debug/CleanCodeDemo.pdb
--------------------------------------------------------------------------------
/CleanCodeDemo/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/CleanCodeDemo/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/CleanCodeDemo/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/CleanCodeDemo/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/CleanCodeDemo/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/keremvaris/CleanCodeDemo/a36e1fe87da6e836671cbd9786cdd075322857f4/CleanCodeDemo/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------