Example #1
0
 /// <summary>
 ///  Delete the media from the system Library.
 /// </summary>
 public ServiceResult Delete(User    user,
     Media   mediaCopy)
 {
     Media loadedMedia = DomainRegistry.Repository.Load<Media>(mediaCopy.Id);
     loadedMedia.Library.Delete(loadedMedia);
     return ServiceResult.Void;
 }
Example #2
0
 protected Loan(Member loaningMember, Media loanedMedia, DateTime startDate, DateTime endDate)
 {
     LoaningMember = loaningMember;
     LoanedMedia = loanedMedia;
     StartDate = startDate;
     EndDate = endDate;
 }
Example #3
0
 /// <summary>
 ///  Create a Media in the system Library
 /// </summary>
 public ServiceResult<Media> Create( User    user,
     Media   orphanedMedia)
 {
     return ServiceResult<Media>
         .Return(DomainRegistry.Library.Create(orphanedMedia)
             .Graph().Copy());
 }
Example #4
0
        /// <summary>
        ///  Add new Media to the library.  The combination of Media.Name and Media.Type
        ///   need to be unique within the Library.  Throws DuplicationException if they are not.
        ///   Returns the newly create media object.
        /// </summary>
        public virtual Media Create(Media media)
        {
            ValidateNoMediaWithNameAndType(media);

            Media newMedia = Media.InstantiateMedia(this, media.Type, media.Name, media.Description);
            _ownedMedia.Add(newMedia);

            return newMedia;
        }
Example #5
0
        /// <summary>
        ///  Modify an existing Media.
        /// </summary>
        public ServiceResult<Media> Modify( User    user,
            Media   modifiedMediaCopy)
        {
            Media loadedMedia = DomainRegistry.Repository.Load<Media>(modifiedMediaCopy.Id);

            return ServiceResult<Media>
                .Return(loadedMedia.Library.Modify(loadedMedia, modifiedMediaCopy)
                    .Graph().Copy());
        }
Example #6
0
 public static Media InstantiateOrphanedMedia(   MediaType   type,
     string      name,
     string      description)
 {
     Media media = new Media();
     media.Type = type;
     media.Name = name;
     media.Description = description;
     return media;
 }
Example #7
0
 private void MediaService_CreateCompleted(ServiceCallStatus status)
 {
     try
     {
         _lastCreatedMedia = _mediaService.Create(status);
         Write("Media created: " + _lastCreatedMedia.Name + " (" + _lastCreatedMedia.Id + ")");
         _test4.IsEnabled = true;
     }
     catch (DuplicationException de)
     {
         Write("Attempt to create duplicate Media: " + de.DuplicateValue + " (" + de.DuplicateId + ")");
     }
 }
Example #8
0
        private void ValidateNoMediaWithNameAndType(Media media)
        {
            IList<Media> mediaWithNameAndType =
                DomainRegistry.Repository
                    .CreateQuery<Media>()
                    .Add<Media>(m => m.Library == this)
                    .Add<Media>(m => m.Type == media.Type)
                    .Add<Media>(m => m.Name == media.Name)
                    .List<Media>();

            if (mediaWithNameAndType.Count != 0)
            {
                Media duplicateMedia = mediaWithNameAndType[0];
                string duplicateValue = duplicateMedia.Type + ", " + duplicateMedia.Name;
                throw new DuplicationException(mediaWithNameAndType[0], duplicateValue);
            }
        }
Example #9
0
        /// <summary>
        ///  Modify existing media in the Library.  The combination of Media.Name and Media.Type
        ///   need to be unique within the Library.  Throws DuplicationException if they are not.
        ///   Returns the modified media object.
        /// </summary>
        public virtual Media Modify(Media existingMedia,
            Media modifiedMedia)
        {
            if ((modifiedMedia.Name != existingMedia.Name) || (modifiedMedia.Type != existingMedia.Type))
            {
                ValidateNoMediaWithNameAndType(modifiedMedia);
            }

            existingMedia.ModifyDetails(modifiedMedia.Type, modifiedMedia.Name, modifiedMedia.Description);
            return existingMedia;
        }
Example #10
0
 /// <summary>
 ///  Delete the media from the library.
 /// </summary>
 public virtual void Delete(Media media)
 {
     _ownedMedia.Remove(media);
 }
Example #11
0
 public static Loan InstantiateLoan(Member member, Media media, DateTime startDate, DateTime endDate)
 {
     return new Loan(member, media, startDate, endDate);
 }
Example #12
0
 private void Test3_Click(object sender, RoutedEventArgs e)
 {
     User user = new User() { Id=1, Login="******" };
     Media media = new Media() { Name="media " + DateTime.Now.ToString(), Description="media", Type=MediaType.Book };
     _mediaService.Create(user, media);
 }
Example #13
0
 public static Loan InstantiateLoan(Member member, Media media, DateTime startDate, DateTime endDate)
 {
     return(new Loan(member, media, startDate, endDate));
 }