public Employee(string firstName, string lastName, string department, string phone) { this.ID = IDGenerator.NewID(); this.FirstName = firstName; this.LastName = lastName; this.Department = department; this.Phone = phone; }
public Review(string body, int reviewHits, int reviewScore, Reviewer reviewer) { Id = ReviewIdGenerator.NewID(); Body = body; Score = reviewScore; Hits = reviewHits; Reviewer = reviewer; }
private void CreateStylesTreeItem(StylesTreeItem stylesTreeItem) { stylesTreeItem.ID = _idGenerator.NewID(); Debug.Assert(!(_stylesTreeItems.Select(x => x.ID).Contains(stylesTreeItem.ID))); Debug.Assert(GetStylesTreeItem(stylesTreeItem) == null); _stylesTreeItems.Add(stylesTreeItem); return; }
protected Artist GetOrBuildArtist(string artistName, IList <Country> countries, string officialUrl, DateTime lastUpdate, Reviewer reviewer, IList <string> similarArtists) { var selectedArtist = (from artist in Artists where artist.Name == artistName.ToUpperInvariant() select artist).SingleOrDefault(); if (selectedArtist == null) { selectedArtist = new Artist(_artistIdGenerator.NewID(), artistName, countries, officialUrl, lastUpdate, reviewer, similarArtists); Artists.Add(selectedArtist); return(selectedArtist); } selectedArtist.UpdateInfos(countries, officialUrl, lastUpdate, reviewer, similarArtists); return(selectedArtist); }
protected Reviewer GetOrBuildReviewer(string name, string mailAddress, DateTime lastUpdate) { var selectedReviewer = (from reviewer in Reviewers where reviewer.Name == name select reviewer).SingleOrDefault(); if (selectedReviewer == null) { selectedReviewer = new Reviewer(_userIdGenerator.NewID(), name, mailAddress, lastUpdate); Reviewers.Add(selectedReviewer); return(selectedReviewer); } if (selectedReviewer.LastUpdate < lastUpdate) { selectedReviewer.UpdateInfos(name, mailAddress, lastUpdate); } return(selectedReviewer); }
public static LabelVendor CreateOrUpdate(string label, string vendor, DateTime lastUpdate) { if (string.IsNullOrEmpty(label)) { throw new ArgumentNullException("label"); } var lb = label.Trim(); var vd = vendor.Trim(); var existingLb = LabelVendors.Where(x => x.Label.ToUpperInvariant() == lb.ToUpperInvariant()).SingleOrDefault(); if (existingLb == null) { var labelVendor = new LabelVendor(AlbumLabelsIdGenerator.NewID(), lb, vd, lastUpdate); LabelVendors.Add(labelVendor); return(labelVendor); } existingLb.UpdateVendor(vd, lastUpdate); return(existingLb); }
public override void Add(IExplodedReview <Album> explodedReview) { var review = explodedReview as AlbumExplodedReview; if (review == null) { throw new InvalidCastException("Cannot cast review as 'AlbumExplodedReview'"); } _explodedReviews.Add(review); var reviewer = GetOrBuildReviewer(review.ReviewerName, review.ReviewerMail, review.RecordLastUpdateDate); var artist = GetOrBuildArtist(review.ArtistName, review.ProcessedArtistCountries, review.ArtistOfficialUrl, review.RecordLastUpdateDate, reviewer, review.ArtistSimilarArtists); var chronique = new Review(review.ReviewBody, review.ReviewHits, review.ReviewScore, reviewer); var album = new Album(_albumIdGenerator.NewID(), review.AlbumName, review.AlbumReleaseDate, review.ReviewScore , review.ProcessedLabelVendor, review.AlbumCoverFileName, review.RecordLastUpdateDate, artist, reviewer, review.AlbumSimilarAlbums, review.ProcessedAlbumType , review.AlbumMusicGenre, review.ProcessedAlbumStyle, chronique); _albums.Add(album); }