/// <summary>
        /// Handles the specified request.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns>A <see cref="Agatha.Common.Response"/></returns>
        public override Response Handle(GetProgramOfferingsByLocationRequest request)
        {
            var locationKey = request.LocationKey;

            var programOfferings    = _programOfferingRepository.GetProgramOfferingsByLocationKey(locationKey);
            var programOfferingDtos = Mapper.Map <IList <ProgramOffering>, IList <ProgramOfferingDto> > (programOfferings);

            var response = CreateTypedResponse();

            response.ProgramOfferingDtos = programOfferingDtos;

            return(response);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Handles the request.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <param name="response">The response.</param>
        protected override void HandleRequest(DeleteProgramOfferingRequest request, DeleteProgramOfferingResponse response)
        {
            var programOffering = _programOfferingRepository.GetByKey(request.ProgramOfferingKey);

            if (programOffering != null)
            {
                _programOfferingFactory.DestroyProgramOffering(programOffering);

                if (Success)
                {
                    FlushSession();

                    var programOfferings = _programOfferingRepository.GetProgramOfferingsByLocationKey(request.LocationKey);
                    var dtos             = Mapper.Map <IList <ProgramOffering>, IList <ProgramOfferingDto> > (programOfferings);
                    response.ProgramOfferingDtos = dtos;
                }
            }
        }