Nettoyages et refactorisations.

* ITitle.cs:
* RssFeeds.cs:
* Blog.cs:
* BasePost.cs:
* YaEvent.cs:
* Estimate.cs:
* BaseEvent.cs:
* Activity.cs:
* UTBlogEntryCollection.cs:
* UUTBlogEntryCollection.cs: refactorisation: Les titres obtiennent
  une interface logicielle dédiée.

* ErrorHtmlFormatter.cs: Pour note: conception à revoir

* PerformerProfile.cs: refactorisation: Les identifiant deviennent
  génériques

* IRating.cs:
* IComment.cs:
* IIdentified.cs: refactorisation: Les identifiant et commentaires
  deviennent génériques

* ITagBackup.cs: refactorisation: un meilleur nom pour cette interface
  qui n'a pas encore d'implementeur.

* UserNameBase.cs: xml doc

* UserSkill.cs:
* UserSkillComment.cs: Les commentaire deviennent génériques

* OtherWebException.cs: classe obsolete

* ViewRenderer.cs: classe obsolète

* YavscModel.csproj: nettoyages de classes obsoletes, ajout des
  nouvelles interfaces et de la classe de base implementant l'
  "activité".
main
Paul Schneider 10 years ago
parent 66993346cb
commit d430d73915
24 changed files with 195 additions and 233 deletions

@ -1,3 +1,7 @@
2015-11-23 Paul Schneider <paul@pschneider.fr>
* ErrorHtmlFormatter.cs: Pour note: conception à revoir
2015-11-23 Paul Schneider <paul@pschneider.fr> 2015-11-23 Paul Schneider <paul@pschneider.fr>
* FrontOfficeController.cs: Démarre l'implementation des * FrontOfficeController.cs: Démarre l'implementation des

@ -59,6 +59,7 @@ namespace Yavsc.Formatters
public ErrorHtmlFormatter public ErrorHtmlFormatter
(HttpStatusCode errorCode, string title):base("text/html") (HttpStatusCode errorCode, string title):base("text/html")
{ {
// FIXME this is not a place for this property
ErrorCode = errorCode; ErrorCode = errorCode;
Title = title; Title = title;

@ -33,7 +33,7 @@ namespace Yavsc.Model.Blogs
/// <summary> /// <summary>
/// Base post. /// Base post.
/// </summary> /// </summary>
public class BasePost: IRating { public class BasePost: IRating, ITitle {
/// <summary> /// <summary>
/// The identifier. /// The identifier.
/// </summary> /// </summary>

@ -8,7 +8,7 @@ namespace Yavsc.Model.Blogs
/// <summary> /// <summary>
/// Blog. /// Blog.
/// </summary> /// </summary>
public class Blog public class Blog: ITitle
{ {
string title; string title;

@ -26,7 +26,7 @@ namespace Yavsc.Model.Blogs
/// <summary> /// <summary>
/// Unique User and Title blog entry collection. /// Unique User and Title blog entry collection.
/// </summary> /// </summary>
public class UTBlogEntryCollection : BlogEntryCollection { public class UTBlogEntryCollection : BlogEntryCollection, ITitle {
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="Yavsc.Model.Blogs.UTBlogEntryCollection"/> class. /// Initializes a new instance of the <see cref="Yavsc.Model.Blogs.UTBlogEntryCollection"/> class.
@ -41,7 +41,8 @@ namespace Yavsc.Model.Blogs
/// Gets the title. /// Gets the title.
/// </summary> /// </summary>
/// <value>The title.</value> /// <value>The title.</value>
public string Title { get { return _title; } } public string Title { get { return _title; }
set { _title = value; } }
/// <summary> /// <summary>
/// Returns a <see cref="System.String"/> that represents the current <see cref="Yavsc.Model.Blogs.UUTBlogEntryCollection"/>. /// Returns a <see cref="System.String"/> that represents the current <see cref="Yavsc.Model.Blogs.UUTBlogEntryCollection"/>.

@ -26,7 +26,7 @@ namespace Yavsc.Model.Blogs
/// <summary> /// <summary>
/// Unique User and Title blog entry collection. /// Unique User and Title blog entry collection.
/// </summary> /// </summary>
public class UUTBlogEntryCollection : UUBlogEntryCollection { public class UUTBlogEntryCollection : UUBlogEntryCollection, ITitle {
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="Yavsc.Model.Blogs.UUTBlogEntryCollection"/> class. /// Initializes a new instance of the <see cref="Yavsc.Model.Blogs.UUTBlogEntryCollection"/> class.
/// </summary> /// </summary>
@ -41,7 +41,8 @@ namespace Yavsc.Model.Blogs
/// Gets the title. /// Gets the title.
/// </summary> /// </summary>
/// <value>The title.</value> /// <value>The title.</value>
public string Title { get { return _title; } } public string Title { get { return _title; }
set { _title = value; } }
/// <summary> /// <summary>
/// Returns a <see cref="System.String"/> that represents the current <see cref="Yavsc.Model.Blogs.UUTBlogEntryCollection"/>. /// Returns a <see cref="System.String"/> that represents the current <see cref="Yavsc.Model.Blogs.UUTBlogEntryCollection"/>.

@ -0,0 +1,70 @@
//
// BaseEvent.cs
//
// Author:
// Paul Schneider <paul@pschneider.fr>
//
// Copyright (c) 2015 GNU GPL
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
using System;
using System.Web.Http;
using System.ComponentModel.DataAnnotations;
using Yavsc.Model;
namespace Yavsc.Model.Calendar
{
/// <summary>
/// Base event.
/// </summary>
public class BaseEvent: ITitle
{
/// <summary>
/// The title.
/// </summary>
[Required(ErrorMessage="Please, choose a .")]
[Display(ResourceType=typeof(LocalizedText),Name="Title")]
public string Title { get; set; }
/// <summary>
/// The description.
/// </summary>
[Required(ErrorMessage="Please, choose a Description.")]
[Display(ResourceType=typeof(LocalizedText),Name="Description")]
public string Description { get; set; }
/// <summary>
/// The location.
/// </summary>
[Required(ErrorMessage="Please, choose a Location.")]
[Display(ResourceType=typeof(LocalizedText),Name="Location")]
public Position Location { get; set; }
/// <summary>
/// The start date.
/// </summary>
[Required(ErrorMessage="Please, choose a Start Date.")]
[Display(ResourceType=typeof(LocalizedText),Name="StartDate")]
public DateTime StartDate { get; set; }
/// <summary>
/// Gets or sets the end date.
/// </summary>
/// <value>The end date.</value>
[Required(ErrorMessage="Please, choose an End Date.")]
[Display(ResourceType=typeof(LocalizedText),Name="EndDate")]
public DateTime EndDate { get; set; }
}
}

@ -26,46 +26,6 @@ using Yavsc.Model;
namespace Yavsc.Model.Calendar namespace Yavsc.Model.Calendar
{ {
/// <summary>
/// Base event.
/// </summary>
public class BaseEvent
{
/// <summary>
/// The title.
/// </summary>
[Required(ErrorMessage="Please, choose a .")]
[Display(ResourceType=typeof(LocalizedText),Name="Title")]
public string Title { get; set; }
/// <summary>
/// The description.
/// </summary>
[Required(ErrorMessage="Please, choose a Description.")]
[Display(ResourceType=typeof(LocalizedText),Name="Description")]
public string Description { get; set; }
/// <summary>
/// The location.
/// </summary>
[Required(ErrorMessage="Please, choose a Location.")]
[Display(ResourceType=typeof(LocalizedText),Name="Location")]
public Position Location { get; set; }
/// <summary>
/// The start date.
/// </summary>
[Required(ErrorMessage="Please, choose a Start Date.")]
[Display(ResourceType=typeof(LocalizedText),Name="StartDate")]
public DateTime StartDate { get; set; }
/// <summary>
/// Gets or sets the end date.
/// </summary>
/// <value>The end date.</value>
[Required(ErrorMessage="Please, choose an End Date.")]
[Display(ResourceType=typeof(LocalizedText),Name="EndDate")]
public DateTime EndDate { get; set; }
}
/// <summary> /// <summary>
/// NF event. /// NF event.
/// </summary> /// </summary>

@ -1,3 +1,41 @@
2015-11-23 Paul Schneider <paul@pschneider.fr>
* ITitle.cs:
* RssFeeds.cs:
* Blog.cs:
* BasePost.cs:
* YaEvent.cs:
* Estimate.cs:
* BaseEvent.cs:
* Activity.cs:
* UTBlogEntryCollection.cs:
* UUTBlogEntryCollection.cs: refactorisation: Les titres
obtiennent une interface logicielle dédiée.
* PerformerProfile.cs: refactorisation: Les identifiant
deviennent génériques
* IRating.cs:
* IComment.cs:
* IIdentified.cs: refactorisation: Les identifiant et
commentaires deviennent génériques
* ITagBackup.cs: refactorisation: un meilleur nom pour cette
interface qui n'a pas encore d'implementeur.
* UserNameBase.cs: xml doc
* UserSkill.cs:
* UserSkillComment.cs: Les commentaire deviennent génériques
* OtherWebException.cs: classe obsolete
* ViewRenderer.cs: classe obsolète
* YavscModel.csproj: nettoyages de classes obsoletes, ajout
des nouvelles interfaces et de la classe de base implementant
l' "activité".
2015-11-23 Paul Schneider <paul@pschneider.fr> 2015-11-23 Paul Schneider <paul@pschneider.fr>
* SimpleBookingQuery.cs: Implémente une simple commande de * SimpleBookingQuery.cs: Implémente une simple commande de

@ -0,0 +1,49 @@
//
// Activity.cs
//
// Author:
// Paul Schneider <paul@pschneider.fr>
//
// Copyright (c) 2015 GNU GPL
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
using System;
namespace Yavsc.Model.FrontOffice
{
public class Activity: IComment<string>, ITitle
{
#region ITitle implementation
public string Title {
get;
set;
}
#endregion
#region IComment implementation
public string Comment {
get;
set;
}
#endregion
#region IIdentified implementation
public string Id {
get;
set;
}
#endregion
}
}

@ -34,7 +34,7 @@ namespace Yavsc.Model.FrontOffice
/// <summary> /// <summary>
/// Performer profile. /// Performer profile.
/// </summary> /// </summary>
public class PerformerProfile: UserNameBase, IRating, IIdentified public class PerformerProfile: UserNameBase, IRating, IIdentified<long>
{ {
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="Yavsc.Model.Skill.PerformerProfile"/> class. /// Initializes a new instance of the <see cref="Yavsc.Model.Skill.PerformerProfile"/> class.

@ -24,7 +24,7 @@ using System;
namespace Yavsc.Model namespace Yavsc.Model
{ {
public interface IComment: IIdentified { public interface IComment<T>: IIdentified<T> {
string Comment { get; set; } string Comment { get; set; }
} }
} }

@ -22,9 +22,9 @@ using System;
namespace Yavsc.Model namespace Yavsc.Model
{ {
public interface IIdentified public interface IIdentified<T>
{ {
long Id { get; set; } T Id { get; set; }
} }
} }

@ -26,7 +26,7 @@ namespace Yavsc.Model
/// <summary> /// <summary>
/// I rating. /// I rating.
/// </summary> /// </summary>
public interface IRating: IIdentified public interface IRating: IIdentified<long>
{ {
/// <summary> /// <summary>
/// Gets or sets the rate. /// Gets or sets the rate.

@ -30,7 +30,7 @@ namespace Yavsc.Model
/// <summary> /// <summary>
/// I tag handler. /// I tag handler.
/// </summary> /// </summary>
public interface ITagHandler { public interface ITagBackup {
/// <summary> /// <summary>
/// Backup this instance. /// Backup this instance.
/// Should set ViewData["Tags"] with /// Should set ViewData["Tags"] with
@ -43,11 +43,6 @@ namespace Yavsc.Model
/// </summary> /// </summary>
void Restore(); void Restore();
/// <summary>
/// Invoke this instance.
/// </summary>
void Invoke();
/// <summary> /// <summary>
/// Gets or sets the name. /// Gets or sets the name.
/// </summary> /// </summary>

@ -1,10 +1,10 @@
// //
// IViewRenderer.cs // ITitle.cs
// //
// Author: // Author:
// Paul Schneider <paulschneider@free.fr> // Paul Schneider <paul@pschneider.fr>
// //
// Copyright (c) 2015 Paul Schneider // Copyright (c) 2015 GNU GPL
// //
// This program is free software: you can redistribute it and/or modify // This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by // it under the terms of the GNU Lesser General Public License as published by
@ -18,24 +18,13 @@
// //
// You should have received a copy of the GNU Lesser General Public License // You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>. // along with this program. If not, see <http://www.gnu.org/licenses/>.
using System; using System;
using System.Configuration;
using System.Collections.Specialized;
using System.Data;
using System.Web.Mvc;
namespace Yavsc.Model namespace Yavsc.Model
{ {
/// <summary> public interface ITitle
/// I view renderer. {
/// </summary> string Title { get; set; }
public interface IViewRenderer : IRenderer {
/// <summary>
/// Gets the template route part.
/// </summary>
/// <value>The template.</value>
string Template { get; }
} }
} }

@ -1,79 +0,0 @@
//
// JsonReaderError.cs
//
// Author:
// Paul Schneider <paulschneider@free.fr>
//
// Copyright (c) 2015 Paul Schneider
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
using System;
using System.Net;
using System.IO;
using Newtonsoft.Json;
namespace Yavsc.Model
{
/// <summary>
/// Google error exception.
/// </summary>
public class OtherWebException : WebException
{
/// <summary>
/// Gets or sets the title.
/// </summary>
/// <value>The title.</value>
public string Title { get; set; }
/// <summary>
/// Gets or sets the content.
/// </summary>
/// <value>The content.</value>
public string Content { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="Yavsc.Model.Google.GoogleErrorException"/> class.
/// </summary>
/// <param name="ex">Ex.</param>
public OtherWebException (WebException ex) {
// ASSERT ex != null;
Title = ex.Message;
using (var stream = ex.Response.GetResponseStream())
using (var reader = new StreamReader(stream))
{
Content = reader.ReadToEnd();
}
}
/// <summary>
/// Initializes a new instance of the <see cref="Yavsc.Model.Google.GoogleErrorException"/> class.
/// </summary>
/// <param name="ex">Ex.</param>
/// <param name="message">Message.</param>
[Obsolete]
public OtherWebException(Exception ex, string message) {
Content = message;
Title = ex.Message;
}
/// <summary>
/// Initializes a new instance of the <see cref="Yavsc.Model.Google.GoogleErrorException"/> class.
/// </summary>
/// <param name="ex">Ex.</param>
[Obsolete]
public OtherWebException(Exception ex) {
Content = ex.Message;
Title = ex.GetType().FullName;
}
}
}

@ -25,6 +25,9 @@ using System.ComponentModel.DataAnnotations;
namespace Yavsc.Model.RolesAndMembers namespace Yavsc.Model.RolesAndMembers
{ {
/// <summary>
/// User name base.
/// </summary>
public class UserNameBase { public class UserNameBase {
/// <summary> /// <summary>
/// Gets or sets the name of the user. /// Gets or sets the name of the user.

@ -25,7 +25,7 @@ namespace Yavsc.Model
/// <summary> /// <summary>
/// Rss feeds entry. /// Rss feeds entry.
/// </summary> /// </summary>
public class RssFeedsEntry { public class RssFeedsEntry: ITitle {
/// <summary> /// <summary>
/// Gets or sets the title. /// Gets or sets the title.
/// </summary> /// </summary>

@ -26,7 +26,7 @@ namespace Yavsc.Model.Skill
/// <summary> /// <summary>
/// User skill. /// User skill.
/// </summary> /// </summary>
public class UserSkill : IComment, IRating public class UserSkill : IComment<long>, IRating
{ {
/// <summary> /// <summary>
/// Gets or sets the identifier for this /// Gets or sets the identifier for this

@ -27,7 +27,7 @@ namespace Yavsc.Model.Skill
/// <summary> /// <summary>
/// User skill comment. /// User skill comment.
/// </summary> /// </summary>
public class UserSkillComment: UserSkillReference, IComment public class UserSkillComment: UserSkillReference, IComment<long>
{ {
/// <summary> /// <summary>

@ -1,70 +0,0 @@
//
// ViewRenderer.cs
//
// Author:
// Paul Schneider <paulschneider@free.fr>
//
// Copyright (c) 2015 Paul Schneider
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
using System;
using System.Configuration;
using System.Collections.Specialized;
using System.Data;
using System.Web.Mvc;
namespace Yavsc.Model
{
/// <summary>
/// View renderer.
/// </summary>
public abstract class ViewRenderer<T> : IViewRenderer {
#region IRenderer implementation
/// <summary>
/// Get the specified c.
/// </summary>
/// <param name="c">C.</param>
public object Get (Controller c)
{
return Name;
}
/// <summary>
/// Gets the template route part.
/// </summary>
/// <value>The template.</value>
public string Template {
get {
return "Tag.aspx";
}
}
/// <summary>
/// Gets or sets the name.
/// </summary>
/// <value>The name.</value>
public string Name {
get {
throw new NotImplementedException ();
}
set {
throw new NotImplementedException ();
}
}
#endregion
}
}

@ -8,7 +8,7 @@ namespace Yavsc.Model.WorkFlow
/// Estimate. /// Estimate.
/// </summary> /// </summary>
[Serializable] [Serializable]
public class Estimate public class Estimate : ITitle
{ {
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="Yavsc.Model.WorkFlow.Estimate"/> class. /// Initializes a new instance of the <see cref="Yavsc.Model.WorkFlow.Estimate"/> class.

@ -80,9 +80,6 @@
<Compile Include="Google\CalendarList.cs" /> <Compile Include="Google\CalendarList.cs" />
<Compile Include="Google\CalendarListEntry.cs" /> <Compile Include="Google\CalendarListEntry.cs" />
<Compile Include="IRenderer.cs" /> <Compile Include="IRenderer.cs" />
<Compile Include="ITagHandler.cs" />
<Compile Include="IViewRenderer.cs" />
<Compile Include="ViewRenderer.cs" />
<Compile Include="RssFeeds.cs" /> <Compile Include="RssFeeds.cs" />
<Compile Include="FrontOffice\Commande.cs" /> <Compile Include="FrontOffice\Commande.cs" />
<Compile Include="FrontOffice\Catalog\Brand.cs" /> <Compile Include="FrontOffice\Catalog\Brand.cs" />
@ -123,7 +120,6 @@
<Compile Include="FrontOffice\CommandStatus.cs" /> <Compile Include="FrontOffice\CommandStatus.cs" />
<Compile Include="FrontOffice\CommandSet.cs" /> <Compile Include="FrontOffice\CommandSet.cs" />
<Compile Include="FrontOffice\Catalog\Billing\Price.cs" /> <Compile Include="FrontOffice\Catalog\Billing\Price.cs" />
<Compile Include="OtherWebException.cs" />
<Compile Include="WorkFlow\Automate.cs" /> <Compile Include="WorkFlow\Automate.cs" />
<Compile Include="Google\CalendarEventList.cs" /> <Compile Include="Google\CalendarEventList.cs" />
<Compile Include="Google\GDate.cs" /> <Compile Include="Google\GDate.cs" />
@ -201,6 +197,10 @@
<Compile Include="FrontOffice\PerformerProfile.cs" /> <Compile Include="FrontOffice\PerformerProfile.cs" />
<Compile Include="FrontOffice\SimpleBookingQuery.cs" /> <Compile Include="FrontOffice\SimpleBookingQuery.cs" />
<Compile Include="Skill\SkillEntity.cs" /> <Compile Include="Skill\SkillEntity.cs" />
<Compile Include="FrontOffice\Activity.cs" />
<Compile Include="ITagBackup.cs" />
<Compile Include="ITitle.cs" />
<Compile Include="Calendar\BaseEvent.cs" />
</ItemGroup> </ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup> <ItemGroup>

Loading…