Skip to content

Commit

Permalink
quality(sonar): complete issues
Browse files Browse the repository at this point in the history
  • Loading branch information
Cyril Gandon committed Apr 19, 2016
1 parent baa0826 commit 1177e70
Show file tree
Hide file tree
Showing 57 changed files with 329 additions and 371 deletions.
15 changes: 0 additions & 15 deletions Nimrod.Console/ConsoleLogger.cs

This file was deleted.

30 changes: 30 additions & 0 deletions Nimrod.Console/DateTimeConsoleTracer.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;

namespace Nimrod.Console
{
public class DateTimeConsoleTracer : ILogger, IDisposable
{
public TraceListener Tracer { get; }
public DateTimeConsoleTracer(TraceListener tracer)
{
this.Tracer = tracer.ThrowIfNull(nameof(tracer));
}

public void WriteLine(string message)
{
this.Tracer.WriteLine($"{DateTime.Now.ToLocalTime()} - {message}");
}

public void Dispose()
{
if (this.Tracer != null)
{
this.Tracer.Dispose();
}
}
}
}
2 changes: 1 addition & 1 deletion Nimrod.Console/Nimrod.Console.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ConsoleLogger.cs" />
<Compile Include="DateTimeConsoleTracer.cs" />
<Compile Include="Options.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
Expand Down
20 changes: 11 additions & 9 deletions Nimrod.Console/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,50 +3,52 @@
using System.Linq;
using System.Text;
using System.IO.Abstractions;
using System.Diagnostics;

namespace Nimrod.Console
{
static class Program
{
static int Main(string[] args)
{
var tracer = new ConsoleTraceListener();
try
{
var options = new Options();
if (CommandLine.Parser.Default.ParseArguments(args, options))
{
OnOptionsSuccessful(options);
OnOptionsSuccessful(options, tracer);
}
else
{
OnOptionsFailed(args);
OnOptionsFailed(args, tracer);
}
return 0;
}
catch (Exception exception)
{
System.Console.WriteLine(exception.ToString());
tracer.WriteLine(exception.ToString());
return -1;
}
}

private static void OnOptionsFailed(string[] args)
private static void OnOptionsFailed(string[] args, TraceListener tracer)
{
System.Console.WriteLine($"Error in the command line arguments {string.Join(" ", args)}");
tracer.WriteLine($"Error in the command line arguments {string.Join(" ", args)}");
string helpText = CommandLine.Text.HelpText.AutoBuild(new Options()).ToString();
System.Console.WriteLine(helpText);
tracer.WriteLine(helpText);
}

static void OnOptionsSuccessful(Options options)
static void OnOptionsSuccessful(Options options, TraceListener tracer)
{
if (options.Help)
{
string helpText = CommandLine.Text.HelpText.AutoBuild(options);
System.Console.WriteLine(helpText);
tracer.WriteLine(helpText);
}
else
{
var logger = options.Verbose ? new ConsoleLogger() : null;
var logger = options.Verbose ? new DateTimeConsoleTracer(tracer) : null;
var ioOperations = new IoOperations(new FileSystem(), options.OutputPath, logger);
var generator = new Generator(ioOperations);
generator.Generate(options.Files, options.ModuleType);
Expand Down
2 changes: 1 addition & 1 deletion Nimrod.Demo/WebClient/Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ var customScripts = [
'src/**/*.directive.ts',
'src/**/*.component.ts',
'src/**/*.filter.ts',
'src/**/*.controller.ts',
'src/**/*.controller.ts'
];

module.exports = function (grunt) {
Expand Down
2 changes: 1 addition & 1 deletion Nimrod.Demo/WebClient/src/ServerApi.Generated/IRestApi.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

module Nimrod {
namespace Nimrod {
export interface IRestApi {
Delete<T>(url: string, config?: IRequestShortcutConfig): IPromise<T>;
Get<T>(url: string, config?: IRequestShortcutConfig): IPromise<T>;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
namespace Nimrod.Demo.Controllers {
export interface IMovieService {
Movie(restApi: Nimrod.IRestApi, id: number, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<Nimrod.Demo.Models.IMovie>;
Movie(restApi: Nimrod.IRestApi, guid: string, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<Nimrod.Demo.Models.IMovie>;
Movies(restApi: Nimrod.IRestApi, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<Nimrod.Demo.Models.IMovie[]>;
Add(restApi: Nimrod.IRestApi, movie: Nimrod.Demo.Models.IMovie, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<Nimrod.Demo.Models.IMovie>;
Delete(restApi: Nimrod.IRestApi, id: number, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<boolean>;
Delete(restApi: Nimrod.IRestApi, guid: string, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<boolean>;
}
export class MovieService implements IMovieService {
public Movie(restApi: Nimrod.IRestApi, id: number, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<Nimrod.Demo.Models.IMovie> {
public Movie(restApi: Nimrod.IRestApi, guid: string, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<Nimrod.Demo.Models.IMovie> {
(config || (config = {})).params = {
id: id
guid: guid
};
return restApi.Get<Nimrod.Demo.Models.IMovie>('/Movie/Movie', config);
}
Expand All @@ -23,9 +23,9 @@ namespace Nimrod.Demo.Controllers {
};
return restApi.Post<Nimrod.Demo.Models.IMovie>('/Movie/Add', data, config);
}
public Delete(restApi: Nimrod.IRestApi, id: number, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<boolean> {
public Delete(restApi: Nimrod.IRestApi, guid: string, config?: Nimrod.IRequestShortcutConfig): Nimrod.IPromise<boolean> {
let data = {
id: id
guid: guid
};
return restApi.Post<boolean>('/Movie/Delete', data, config);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
namespace Nimrod.Demo.Models {
export interface IMovie {
Id: number;
Guid: string;
Name: string;
Rating: number;
Actors: string[];
Expand Down
5 changes: 2 additions & 3 deletions Nimrod.Demo/WebClient/src/ServerApi/restApi.service.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
module Nimrod.Demo.RestApi {
"use strict";
namespace Nimrod.Demo.RestApi {

class RestApi implements Nimrod.IRestApi {
static $inject = [
Expand Down Expand Up @@ -27,5 +26,5 @@
}
}

service("restApi", RestApi);
service('restApi', RestApi);
}
36 changes: 18 additions & 18 deletions Nimrod.Demo/WebClient/src/components/movies.component.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module Nimrod.Demo {
namespace Nimrod.Demo {

class MoviesController {

Expand All @@ -7,7 +7,7 @@
static $inject = [
'restApi',
'serverApi.MovieService'
]
];
constructor(
private restApi: IRestApi,
private moviesApi: Controllers.IMovieService
Expand All @@ -22,18 +22,18 @@
}

addMovie() {
var newMovie: Models.IMovie = {
Name: "The God Father",
Id: null,
let newMovie: Models.IMovie = {
Name: 'The God Father',
Guid: null,
Actors: [],
Rating: 8
};
this.moviesApi.Add(this.restApi, newMovie).then(response => {
this.loadMovies();
});
}
deleteMovie(id: number) {
this.moviesApi.Delete(this.restApi, id).then(response => {
deleteMovie(movie: Models.IMovie) {
this.moviesApi.Delete(this.restApi, movie.Guid).then(response => {
this.loadMovies();
});
}
Expand All @@ -44,29 +44,29 @@

}

component("ndMovies", {
component('ndMovies', {
controller: MoviesController,
bindings: {
},
template: `
<div ng-repeat="movie in $ctrl.movies">
<div ng-repeat='movie in $ctrl.movies'>
<h1>{{movie.Name}}
<ul class="star-rating">
<li ng-repeat="star in $ctrl.range(movie.Rating) track by $index"
class="star">
<i class="glyphicon glyphicon-star"></i>
<ul class='star-rating'>
<li ng-repeat='star in $ctrl.range(movie.Rating) track by $index'
class='star'>
<i class='glyphicon glyphicon-star'></i>
</li>
</ul>
</h1>
<div ng-if="movie.Actors.length > 0">
<div ng-if='movie.Actors.length > 0'>
<h2>Actors</h2>
<ul>
<li ng-repeat="actor in movie.Actors">{{actor}}</li>
<li ng-repeat='actor in movie.Actors'>{{actor}}</li>
</ul>
</div>
<button ng-click="$ctrl.deleteMovie(movie.Id)">Delete</button>
<button ng-click='$ctrl.deleteMovie(movie)'>Delete</button>
</div>
<button ng-click="$ctrl.addMovie()">Add One</button>
<button ng-click='$ctrl.addMovie()'>Add One</button>
`
});
}
}
7 changes: 3 additions & 4 deletions Nimrod.Demo/WebClient/src/nimrod.demo.module.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
module Nimrod.Demo {
"use strict";
namespace Nimrod.Demo {

// Create the module and define its dependencies.
angular.module("nimrod.demo", []);
angular.module('nimrod.demo', []);


function ngModule(): ng.IModule {
return angular.module("nimrod.demo");
return angular.module('nimrod.demo');
}

export function controller(camelCaseName: string, controllerConstructor: Function) {
Expand Down
22 changes: 13 additions & 9 deletions Nimrod.Demo/WebServer/Controllers/MovieController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,20 @@ namespace Nimrod.Demo.Controllers

public class MovieController : Controller
{
private static int IdIncrement = 2;
public readonly static List<Movie> MoviesPersistence = new List<Movie>() {
new Movie { Id = 1, Name = "Pulp Fiction", Rating= 9, Actors = new List<string>() { "John Travolta", "Samuel L. Jackson"} }
// fake database
public readonly static List<Movie> MoviesPersistence = new List<Movie> {
new Movie {
Guid = new Guid().ToString(),
Name = "Pulp Fiction",
Rating = 9,
Actors = new List<string> { "John Travolta", "Samuel L. Jackson"}
}
};


[HttpGet]
public JsonNetResult<Movie> Movie(int id)
public JsonNetResult<Movie> Movie(string guid)
{
var movie = MoviesPersistence.Where(m => m.Id == id).FirstOrDefault();
var movie = MoviesPersistence.FirstOrDefault(m => m.Guid == guid);
return JsonNetResult.Create(movie);
}

Expand All @@ -33,16 +37,16 @@ public JsonNetResult<List<Movie>> Movies()
[HttpPost]
public JsonNetResult<Movie> Add(Movie movie)
{
movie.Id = IdIncrement++;
movie.Guid = new Guid().ToString();

MoviesPersistence.Add(movie);
return JsonNetResult.Create(movie);
}

[HttpPost]
public JsonNetResult<bool> Delete(int id)
public JsonNetResult<bool> Delete(string guid)
{
MoviesPersistence.RemoveAll(m => m.Id == id);
MoviesPersistence.RemoveAll(m => m.Guid == guid);
return JsonNetResult.Create(true);
}
}
Expand Down
4 changes: 2 additions & 2 deletions Nimrod.Demo/WebServer/Extensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@ public static string ToJson(this object obj)
{
using (var stringWriter = new StringWriter())
{
var settings = new JsonSerializerSettings()
var settings = new JsonSerializerSettings
{
ReferenceLoopHandling = ReferenceLoopHandling.Ignore,
DateTimeZoneHandling = DateTimeZoneHandling.Utc
};
settings.Converters.Add(new IsoDateTimeConverter() { DateTimeStyles = DateTimeStyles.AdjustToUniversal });
settings.Converters.Add(new IsoDateTimeConverter { DateTimeStyles = DateTimeStyles.AdjustToUniversal });
var serializer = JsonSerializer.Create(settings);
serializer.Serialize(stringWriter, obj);
return stringWriter.ToString();
Expand Down
Loading

0 comments on commit 1177e70

Please sign in to comment.