├── .gitignore ├── BookingService ├── Adapters │ └── Data │ │ ├── Booking │ │ └── BookingRepository.cs │ │ ├── Data.csproj │ │ ├── Guest │ │ ├── GuestConfiguration.cs │ │ └── GuestRepository.cs │ │ ├── HotelDbContext.cs │ │ ├── Migrations │ │ ├── 20220320174334_InitialCreate.Designer.cs │ │ ├── 20220320174334_InitialCreate.cs │ │ ├── 20220320181710_RoomsAndBooking.Designer.cs │ │ ├── 20220320181710_RoomsAndBooking.cs │ │ ├── 20220320181842_AddingForeignKeyToBooking.Designer.cs │ │ ├── 20220320181842_AddingForeignKeyToBooking.cs │ │ ├── 20220320183650_AddingValueObjectToGuest.Designer.cs │ │ ├── 20220320183650_AddingValueObjectToGuest.cs │ │ ├── 20220320184229_AddingValueObjectToRoom.Designer.cs │ │ ├── 20220320184229_AddingValueObjectToRoom.cs │ │ ├── 20220402211259_FixingStatus.Designer.cs │ │ ├── 20220402211259_FixingStatus.cs │ │ └── HotelDbContextModelSnapshot.cs │ │ └── Room │ │ ├── RoomConfiguration.cs │ │ └── RoomRepository.cs ├── Consumers │ └── API │ │ ├── API.csproj │ │ ├── Controllers │ │ ├── BookingController.cs │ │ ├── GuestController.cs │ │ └── RoomController.cs │ │ ├── Program.cs │ │ ├── Properties │ │ └── launchSettings.json │ │ ├── appsettings.Development.json │ │ └── appsettings.json ├── Core │ ├── Application │ │ ├── Application.csproj │ │ ├── Booking │ │ │ ├── BookingManager.cs │ │ │ ├── BookingResponse.cs │ │ │ ├── Commands │ │ │ │ ├── CreateBookingCommand.cs │ │ │ │ └── CreateBookingCommandHandler.cs │ │ │ ├── Dtos │ │ │ │ ├── BookingDto.cs │ │ │ │ └── PaymentRequestDto.cs │ │ │ ├── Ports │ │ │ │ └── IBookingManager.cs │ │ │ └── Queries │ │ │ │ ├── GetBookingQuery.cs │ │ │ │ └── GetBookingQueryHandler.cs │ │ ├── Guest │ │ │ ├── Dtos │ │ │ │ └── GuestDto.cs │ │ │ ├── GuestManager.cs │ │ │ ├── Ports │ │ │ │ └── IGuestManager.cs │ │ │ ├── Requests │ │ │ │ └── CreateGuestRequest.cs │ │ │ └── Responses │ │ │ │ └── GuestResponse.cs │ │ ├── Payment │ │ │ ├── Dtos │ │ │ │ └── PaymentStateDto.cs │ │ │ ├── Ports │ │ │ │ ├── IPaymentProcessor.cs │ │ │ │ └── IPaymentProcessorFactory.cs │ │ │ └── Responses │ │ │ │ └── PaymentResponse.cs │ │ ├── Response.cs │ │ └── Room │ │ │ ├── Commands │ │ │ ├── CreateRoomCommand.cs │ │ │ └── CreateRoomCommandHandler.cs │ │ │ ├── Dtos │ │ │ └── RoomDto.cs │ │ │ ├── Ports │ │ │ └── IRoomManager.cs │ │ │ ├── Queries │ │ │ ├── GetRoomQuery.cs │ │ │ └── GetRoomQueryHandler.cs │ │ │ ├── Request │ │ │ └── CreateRoomRequest.cs │ │ │ ├── Responses │ │ │ └── RoomResponse.cs │ │ │ └── RoomManager.cs │ ├── Domain │ │ ├── Booking │ │ │ ├── Exceptions │ │ │ │ ├── EndDateTimeIsRequiredException.cs │ │ │ │ ├── GuestIsRequiredException.cs │ │ │ │ ├── PlacedAtIsARequiredInformationException.cs │ │ │ │ ├── RoomCannotBeBookedException.cs │ │ │ │ ├── RoomIsRequiredException.cs │ │ │ │ └── StartDateTimeIsRequiredException.cs │ │ │ └── Ports │ │ │ │ └── IBookingRepository.cs │ │ ├── Domain.csproj │ │ ├── Guest │ │ │ ├── Entities │ │ │ │ ├── Booking.cs │ │ │ │ └── Guest.cs │ │ │ ├── Enums │ │ │ │ ├── AcceptedCurrencies.cs │ │ │ │ ├── Action.cs │ │ │ │ ├── DocumentType.cs │ │ │ │ └── Status.cs │ │ │ ├── Exceptions │ │ │ │ ├── GuestHasInvalidInformation.cs │ │ │ │ ├── InvalidEmailException.cs │ │ │ │ ├── InvalidPersonDocumentIdException.cs │ │ │ │ └── MissingRequiredInformation.cs │ │ │ ├── Ports │ │ │ │ └── IGuestRepository.cs │ │ │ └── ValueObjects │ │ │ │ ├── PersonId.cs │ │ │ │ └── Price.cs │ │ ├── Room │ │ │ ├── Entities │ │ │ │ └── Room.cs │ │ │ ├── Exceptions │ │ │ │ ├── InvalidRoomDataException.cs │ │ │ │ └── InvalidRoomPriceException.cs │ │ │ └── Ports │ │ │ │ └── IRoomRepository.cs │ │ └── Utils.cs │ └── Shared │ │ └── Shared │ │ ├── Shared.csproj │ │ └── Utils.cs └── Tests │ ├── Adapters │ └── AdaptersTests │ │ ├── AdaptersTests.csproj │ │ └── UnitTest1.cs │ ├── Application │ └── ApplicationTests │ │ ├── ApplicationTests.csproj │ │ ├── BookingManagerTests.cs │ │ ├── CreateBookingCommandHandlerTests.cs │ │ ├── CreateRoomCommandHandlerTests.cs │ │ ├── GetRoomQueryHandlerTests.cs │ │ └── GuestManagerTests.cs │ └── Domain │ └── DomainTests │ ├── Booking │ └── StateMachineTests.cs │ └── DomainTests.csproj ├── HotelBooking.sln ├── PaymentService ├── Payments.UnitTests │ ├── MercadoPagoTests.cs │ ├── PaymentProcessorFactoryTests.cs │ └── Payments.UnitTests.csproj └── core │ ├── Application │ └── Application │ │ ├── MecadoPago │ │ ├── Exceptions │ │ │ └── InvalidPaymentIntentionException.cs │ │ └── MercadoPagoAdapter.cs │ │ ├── NotImplementedPaymentProvider.cs │ │ ├── PaymentProcessorFactory.cs │ │ └── Payments.Application.csproj │ ├── Class1.cs │ └── Core.csproj └── READ.me /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/.gitignore -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Booking/BookingRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Booking/BookingRepository.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Data.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Data.csproj -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Guest/GuestConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Guest/GuestConfiguration.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Guest/GuestRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Guest/GuestRepository.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/HotelDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/HotelDbContext.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320174334_InitialCreate.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320174334_InitialCreate.Designer.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320174334_InitialCreate.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320174334_InitialCreate.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320181710_RoomsAndBooking.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320181710_RoomsAndBooking.Designer.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320181710_RoomsAndBooking.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320181710_RoomsAndBooking.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320181842_AddingForeignKeyToBooking.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320181842_AddingForeignKeyToBooking.Designer.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320181842_AddingForeignKeyToBooking.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320181842_AddingForeignKeyToBooking.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320183650_AddingValueObjectToGuest.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320183650_AddingValueObjectToGuest.Designer.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320183650_AddingValueObjectToGuest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320183650_AddingValueObjectToGuest.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320184229_AddingValueObjectToRoom.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320184229_AddingValueObjectToRoom.Designer.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220320184229_AddingValueObjectToRoom.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220320184229_AddingValueObjectToRoom.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220402211259_FixingStatus.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220402211259_FixingStatus.Designer.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/20220402211259_FixingStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/20220402211259_FixingStatus.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Migrations/HotelDbContextModelSnapshot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Migrations/HotelDbContextModelSnapshot.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Room/RoomConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Room/RoomConfiguration.cs -------------------------------------------------------------------------------- /BookingService/Adapters/Data/Room/RoomRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Adapters/Data/Room/RoomRepository.cs -------------------------------------------------------------------------------- /BookingService/Consumers/API/API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Consumers/API/API.csproj -------------------------------------------------------------------------------- /BookingService/Consumers/API/Controllers/BookingController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Consumers/API/Controllers/BookingController.cs -------------------------------------------------------------------------------- /BookingService/Consumers/API/Controllers/GuestController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Consumers/API/Controllers/GuestController.cs -------------------------------------------------------------------------------- /BookingService/Consumers/API/Controllers/RoomController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Consumers/API/Controllers/RoomController.cs -------------------------------------------------------------------------------- /BookingService/Consumers/API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Consumers/API/Program.cs -------------------------------------------------------------------------------- /BookingService/Consumers/API/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Consumers/API/Properties/launchSettings.json -------------------------------------------------------------------------------- /BookingService/Consumers/API/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Consumers/API/appsettings.Development.json -------------------------------------------------------------------------------- /BookingService/Consumers/API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Consumers/API/appsettings.json -------------------------------------------------------------------------------- /BookingService/Core/Application/Application.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Application.csproj -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/BookingManager.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/BookingManager.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/BookingResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/BookingResponse.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/Commands/CreateBookingCommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/Commands/CreateBookingCommand.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/Commands/CreateBookingCommandHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/Commands/CreateBookingCommandHandler.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/Dtos/BookingDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/Dtos/BookingDto.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/Dtos/PaymentRequestDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/Dtos/PaymentRequestDto.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/Ports/IBookingManager.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/Ports/IBookingManager.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/Queries/GetBookingQuery.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/Queries/GetBookingQuery.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Booking/Queries/GetBookingQueryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Booking/Queries/GetBookingQueryHandler.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Guest/Dtos/GuestDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Guest/Dtos/GuestDto.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Guest/GuestManager.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Guest/GuestManager.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Guest/Ports/IGuestManager.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Guest/Ports/IGuestManager.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Guest/Requests/CreateGuestRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Guest/Requests/CreateGuestRequest.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Guest/Responses/GuestResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Guest/Responses/GuestResponse.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Payment/Dtos/PaymentStateDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Payment/Dtos/PaymentStateDto.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Payment/Ports/IPaymentProcessor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Payment/Ports/IPaymentProcessor.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Payment/Ports/IPaymentProcessorFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Payment/Ports/IPaymentProcessorFactory.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Payment/Responses/PaymentResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Payment/Responses/PaymentResponse.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Response.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Response.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/Commands/CreateRoomCommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/Commands/CreateRoomCommand.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/Commands/CreateRoomCommandHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/Commands/CreateRoomCommandHandler.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/Dtos/RoomDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/Dtos/RoomDto.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/Ports/IRoomManager.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/Ports/IRoomManager.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/Queries/GetRoomQuery.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/Queries/GetRoomQuery.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/Queries/GetRoomQueryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/Queries/GetRoomQueryHandler.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/Request/CreateRoomRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/Request/CreateRoomRequest.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/Responses/RoomResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/Responses/RoomResponse.cs -------------------------------------------------------------------------------- /BookingService/Core/Application/Room/RoomManager.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Application/Room/RoomManager.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Booking/Exceptions/EndDateTimeIsRequiredException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Booking/Exceptions/EndDateTimeIsRequiredException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Booking/Exceptions/GuestIsRequiredException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Booking/Exceptions/GuestIsRequiredException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Booking/Exceptions/PlacedAtIsARequiredInformationException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Booking/Exceptions/PlacedAtIsARequiredInformationException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Booking/Exceptions/RoomCannotBeBookedException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Booking/Exceptions/RoomCannotBeBookedException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Booking/Exceptions/RoomIsRequiredException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Booking/Exceptions/RoomIsRequiredException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Booking/Exceptions/StartDateTimeIsRequiredException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Booking/Exceptions/StartDateTimeIsRequiredException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Booking/Ports/IBookingRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Booking/Ports/IBookingRepository.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Domain.csproj -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Entities/Booking.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Entities/Booking.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Entities/Guest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Entities/Guest.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Enums/AcceptedCurrencies.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Enums/AcceptedCurrencies.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Enums/Action.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Enums/Action.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Enums/DocumentType.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Enums/DocumentType.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Enums/Status.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Enums/Status.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Exceptions/GuestHasInvalidInformation.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Exceptions/GuestHasInvalidInformation.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Exceptions/InvalidEmailException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Exceptions/InvalidEmailException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Exceptions/InvalidPersonDocumentIdException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Exceptions/InvalidPersonDocumentIdException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Exceptions/MissingRequiredInformation.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Exceptions/MissingRequiredInformation.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/Ports/IGuestRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/Ports/IGuestRepository.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/ValueObjects/PersonId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/ValueObjects/PersonId.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Guest/ValueObjects/Price.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Guest/ValueObjects/Price.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Room/Entities/Room.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Room/Entities/Room.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Room/Exceptions/InvalidRoomDataException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Room/Exceptions/InvalidRoomDataException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Room/Exceptions/InvalidRoomPriceException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Room/Exceptions/InvalidRoomPriceException.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Room/Ports/IRoomRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Room/Ports/IRoomRepository.cs -------------------------------------------------------------------------------- /BookingService/Core/Domain/Utils.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Domain/Utils.cs -------------------------------------------------------------------------------- /BookingService/Core/Shared/Shared/Shared.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Shared/Shared/Shared.csproj -------------------------------------------------------------------------------- /BookingService/Core/Shared/Shared/Utils.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Core/Shared/Shared/Utils.cs -------------------------------------------------------------------------------- /BookingService/Tests/Adapters/AdaptersTests/AdaptersTests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Adapters/AdaptersTests/AdaptersTests.csproj -------------------------------------------------------------------------------- /BookingService/Tests/Adapters/AdaptersTests/UnitTest1.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Adapters/AdaptersTests/UnitTest1.cs -------------------------------------------------------------------------------- /BookingService/Tests/Application/ApplicationTests/ApplicationTests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Application/ApplicationTests/ApplicationTests.csproj -------------------------------------------------------------------------------- /BookingService/Tests/Application/ApplicationTests/BookingManagerTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Application/ApplicationTests/BookingManagerTests.cs -------------------------------------------------------------------------------- /BookingService/Tests/Application/ApplicationTests/CreateBookingCommandHandlerTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Application/ApplicationTests/CreateBookingCommandHandlerTests.cs -------------------------------------------------------------------------------- /BookingService/Tests/Application/ApplicationTests/CreateRoomCommandHandlerTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Application/ApplicationTests/CreateRoomCommandHandlerTests.cs -------------------------------------------------------------------------------- /BookingService/Tests/Application/ApplicationTests/GetRoomQueryHandlerTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Application/ApplicationTests/GetRoomQueryHandlerTests.cs -------------------------------------------------------------------------------- /BookingService/Tests/Application/ApplicationTests/GuestManagerTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Application/ApplicationTests/GuestManagerTests.cs -------------------------------------------------------------------------------- /BookingService/Tests/Domain/DomainTests/Booking/StateMachineTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Domain/DomainTests/Booking/StateMachineTests.cs -------------------------------------------------------------------------------- /BookingService/Tests/Domain/DomainTests/DomainTests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/BookingService/Tests/Domain/DomainTests/DomainTests.csproj -------------------------------------------------------------------------------- /HotelBooking.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/HotelBooking.sln -------------------------------------------------------------------------------- /PaymentService/Payments.UnitTests/MercadoPagoTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/Payments.UnitTests/MercadoPagoTests.cs -------------------------------------------------------------------------------- /PaymentService/Payments.UnitTests/PaymentProcessorFactoryTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/Payments.UnitTests/PaymentProcessorFactoryTests.cs -------------------------------------------------------------------------------- /PaymentService/Payments.UnitTests/Payments.UnitTests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/Payments.UnitTests/Payments.UnitTests.csproj -------------------------------------------------------------------------------- /PaymentService/core/Application/Application/MecadoPago/Exceptions/InvalidPaymentIntentionException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/core/Application/Application/MecadoPago/Exceptions/InvalidPaymentIntentionException.cs -------------------------------------------------------------------------------- /PaymentService/core/Application/Application/MecadoPago/MercadoPagoAdapter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/core/Application/Application/MecadoPago/MercadoPagoAdapter.cs -------------------------------------------------------------------------------- /PaymentService/core/Application/Application/NotImplementedPaymentProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/core/Application/Application/NotImplementedPaymentProvider.cs -------------------------------------------------------------------------------- /PaymentService/core/Application/Application/PaymentProcessorFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/core/Application/Application/PaymentProcessorFactory.cs -------------------------------------------------------------------------------- /PaymentService/core/Application/Application/Payments.Application.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/core/Application/Application/Payments.Application.csproj -------------------------------------------------------------------------------- /PaymentService/core/Class1.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/core/Class1.cs -------------------------------------------------------------------------------- /PaymentService/core/Core.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/PaymentService/core/Core.csproj -------------------------------------------------------------------------------- /READ.me: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Gpzim98/HexagonalArchitectureCourse-PT/HEAD/READ.me --------------------------------------------------------------------------------