├── .gitignore ├── .idea ├── .gitignore ├── misc.xml ├── modules.xml └── vcs.xml ├── CODEOWNERS ├── LICENSE ├── LowLevelDesign.iml ├── README.md └── src └── com └── lld ├── amazon ├── Main.java ├── README.md ├── constant │ ├── CurrencySymbol.java │ ├── CustomerPreferenceKeys.java │ ├── DeliveryType.java │ ├── OfferType.java │ ├── OrderState.java │ ├── PaymentMethodType.java │ ├── PaymentStatus.java │ ├── PricingGroupType.java │ ├── PricingGroups.java │ ├── PricingLineItemType.java │ ├── PricingLineItems.java │ └── ProductOfferType.java ├── exception │ └── PricingException.java ├── model │ ├── Address.java │ ├── Billing.java │ ├── Cart.java │ ├── CartOrOrderItem.java │ ├── CartOrOrderPricing.java │ ├── Catalogue.java │ ├── Customer.java │ ├── CustomerProfile.java │ ├── DeliveryETA.java │ ├── DeliveryOption.java │ ├── HomePage.java │ ├── KV.java │ ├── Media.java │ ├── Money.java │ ├── Offer.java │ ├── Order.java │ ├── OrderItemDelivery.java │ ├── Payment.java │ ├── PaymentMethod.java │ ├── Pricing.java │ ├── PricingGroup.java │ ├── PricingLineItem.java │ ├── Product.java │ ├── ProductInventoryInfo.java │ ├── ProductOffer.java │ ├── ProductReviewsAndRating.java │ ├── ProductVariety.java │ ├── ProductVarietyMetadata.java │ ├── ProtectionPlan.java │ ├── QuantifiedCartOrOrder.java │ └── Seller.java ├── service │ ├── CartOrOrderPricingService.java │ ├── CartService.java │ ├── ETAService.java │ ├── HomePageService.java │ ├── OrderService.java │ ├── PricingService.java │ └── impl │ │ ├── CartOrOrderPricingServiceImpl.java │ │ ├── CartServiceImpl.java │ │ ├── ETAServiceImpl.java │ │ ├── HomePageServiceImpl.java │ │ ├── OrderServiceImpl.java │ │ └── PricingServiceImpl.java └── util │ └── Util.java ├── bookmyshow ├── MainApplication.java ├── README.md ├── constant │ ├── AudioExperienceType.java │ ├── BookingStatus.java │ ├── PaymentStatus.java │ ├── SeatStatus.java │ ├── Threshold.java │ └── VideoExperienceType.java ├── exception │ ├── BookingNotFoundException.java │ ├── BookingValidationException.java │ └── InvalidSeatStatusException.java ├── model │ ├── Booking.java │ ├── Cast.java │ ├── Hall.java │ ├── Location.java │ ├── Movie.java │ ├── Payment.java │ ├── Screen.java │ ├── Seat.java │ ├── Show.java │ ├── ShowPrice.java │ ├── Theatre.java │ └── User.java ├── repository │ ├── BookingRepository.java │ └── ShowRepository.java └── service │ ├── BookingService.java │ ├── SearchService.java │ ├── ShowService.java │ └── impl │ ├── BookingServiceImpl.java │ ├── SearchServiceImpl.java │ └── ShowServiceImpl.java ├── chatapplication ├── MainApplication.java ├── README.md ├── exception │ ├── ListenerException.java │ └── ServiceException.java ├── model │ ├── Business.java │ ├── BusinessUser.java │ ├── Conversation.java │ ├── Group.java │ ├── GroupConversation.java │ ├── IndividualUser.java │ ├── Message.java │ ├── PrivateConversation.java │ ├── UniqueUserContact.java │ ├── User.java │ └── UserPair.java ├── repository │ ├── ConversationRepository.java │ ├── GroupRepository.java │ └── UserRepository.java └── service │ ├── ChatService.java │ ├── ConversationService.java │ ├── GroupService.java │ ├── UserService.java │ ├── impl │ ├── ChatServiceImpl.java │ ├── ConversationServiceImpl.java │ ├── GroupServiceImpl.java │ └── UserServiceImpl.java │ └── listener │ ├── MessageListener.java │ ├── UserListener.java │ └── impl │ └── MessageListenerImpl.java ├── connectfourgame ├── Main.java ├── README.md ├── client │ ├── GameClient.java │ └── GameClientImpl.java ├── configuration │ └── GameConfiguration.java ├── controller │ ├── DiagonalWinningStrategy.java │ ├── GameBoardServer.java │ ├── GameBoardServerImpl.java │ ├── HorizontalWinningStrategy.java │ ├── VerticalWinningStrategy.java │ └── WinningStrategy.java └── model │ ├── GameBoard.java │ ├── HumanPlayer.java │ ├── MachinePlayer.java │ └── Player.java ├── connectionpool ├── MainApplication.java ├── README.md ├── connection │ ├── Connection.java │ ├── HttpConnection.java │ ├── JDBCConnection.java │ └── factory │ │ ├── ConnectionFactory.java │ │ ├── HttpConnectionFactory.java │ │ └── JDBCConnectionFactory.java ├── constant │ └── ConnectionState.java ├── pool │ ├── ConnectionPool.java │ └── ConnectionPoolImpl.java └── worker │ ├── ConnectionMaintainer.java │ ├── GetConnection.java │ └── ReleaseConnection.java ├── delayedscheduler ├── Main.java ├── MyTask.java ├── README.md ├── queue │ ├── CustomQueue.java │ ├── PriorityQueueBasedBlockingQueue.java │ ├── PriorityQueueBasedBlockingQueue2.java │ └── PriorityQueueBasedNonBlockingQueue.java └── scheduler │ ├── DelayedScheduler.java │ ├── DelayedSchedulerImpl.java │ ├── DelayedTask.java │ ├── PriorityQueueBasedDelayedScheduler.java │ └── SharedVariable.java ├── elevator ├── Main.java ├── algorithm │ ├── ElevatorSelectionBruteForceStrategy.java │ ├── ElevatorSelectionStrategy.java │ └── WeightBasedElevatorSelectionStrategy.java ├── constant │ ├── CommandType.java │ ├── Direction.java │ ├── ElevatorCarState.java │ ├── ElevatorFacing.java │ ├── ElevatorType.java │ ├── MovementState.java │ └── StandardFloor.java ├── model │ ├── Building.java │ ├── ButtonDoorClose.java │ ├── ButtonDoorOpen.java │ ├── ButtonDown.java │ ├── ButtonUp.java │ ├── DirectionButton.java │ ├── Display.java │ ├── ElevatorCar.java │ ├── ElevatorCarDoorButtonPanel.java │ ├── ElevatorCarKeypad.java │ ├── ElevatorCarMiscButtonPanel.java │ ├── ElevatorCarPanel.java │ ├── ElevatorPointOfRequestPanel.java │ ├── Floor.java │ ├── InfoButton.java │ └── WeightSensor.java ├── repository │ ├── ElevatorCarCurrentLocationRepository.java │ └── ElevatorRepository.java └── service │ ├── BuildingService.java │ ├── ElevatorService.java │ └── impl │ ├── BuildingServiceImpl.java │ └── ElevatorServiceImpl.java ├── filesystem ├── Main.java ├── README.md ├── constant │ ├── DirectorySortingFilter.java │ └── ObjectType.java ├── model │ ├── Directory.java │ ├── File.java │ ├── FileSystemObject.java │ ├── Metadata.java │ ├── impl │ │ ├── DirectoryImpl.java │ │ ├── FileImpl.java │ │ └── MetadataImpl.java │ └── strategy │ │ ├── SortingStrategy.java │ │ └── impl │ │ ├── FileTypeBasedSortingStrategy.java │ │ ├── NameBasedSortingStrategy.java │ │ └── SizeBasedSortingStrategy.java └── service │ ├── FileSystemUserInterface.java │ └── impl │ └── FileSystemUserInterfaceImpl.java ├── googlecalendar ├── MainApplication.java ├── README.md ├── constant │ └── AcceptanceStatus.java ├── model │ ├── DLList.java │ ├── Event.java │ ├── Member.java │ ├── MemberCalendar.java │ ├── Organization.java │ └── Participant.java ├── repository │ ├── EventAcceptanceRepository.java │ └── EventRepository.java └── service │ ├── EventService.java │ ├── impl │ └── EventServiceImpl.java │ └── visitor │ ├── EventVisitor.java │ └── impl │ └── EventVisitorImpl.java ├── imdb ├── MainApplication.java ├── README.md ├── constant │ ├── Gender.java │ ├── Genre.java │ ├── Language.java │ ├── MediaType.java │ ├── PersonaType.java │ └── ShowType.java ├── exception │ └── ShowException.java ├── model │ ├── AwardFunction.java │ ├── CastAndCrew.java │ ├── EmbeddedMedia.java │ ├── FAQ.java │ ├── Media.java │ ├── Persona.java │ ├── PersonaDescription.java │ ├── Show.java │ ├── ShowDynamicDetails.java │ ├── ShowStaticDetails.java │ ├── User.java │ └── UserReview.java ├── repository │ ├── ShowRepository.java │ └── impl │ │ └── ShowRepositoryImpl.java └── service │ ├── FAQService.java │ ├── ReviewService.java │ ├── ShowService.java │ └── impl │ ├── FAQServiceImpl.java │ ├── ReviewServiceImpl.java │ └── ShowServiceImpl.java ├── invertedindex ├── Main.java ├── README.md ├── analyzer │ ├── Analyzer.java │ ├── TermAnalyzer.java │ └── Token.java ├── document │ └── Document.java ├── index │ ├── DocumentIdRangeBasedIndex.java │ ├── Index.java │ ├── IndexingMetadata.java │ ├── Match.java │ ├── MatchImpl.java │ ├── Range.java │ ├── ShardedIndex.java │ └── ShardedIndexImpl.java └── machine │ └── Machine.java ├── kafka ├── MainApplication.java ├── README.md ├── model │ ├── Consumer.java │ ├── ConsumerGroup.java │ ├── Message.java │ ├── MessageMetadata.java │ ├── Partition.java │ ├── Producer.java │ └── Topic.java ├── repository │ └── TopicRepository.java ├── service │ ├── ConsumerGroupService.java │ ├── ConsumerService.java │ ├── TopicService.java │ ├── impl │ │ ├── ConsumerGroupServiceImpl.java │ │ ├── ConsumerServiceImpl.java │ │ └── TopicServiceImpl.java │ └── routing │ │ └── strategy │ │ ├── RoutingStrategy.java │ │ └── impl │ │ └── RoundRobinRoutingStrategy.java └── worker │ ├── ConsumerWorker.java │ └── ProducerWorker.java ├── leaderboard ├── Main.java ├── README.md ├── model │ └── LeaderboardEntry.java └── service │ ├── LeaderboardService.java │ └── impl │ ├── LeaderboardServiceImpl.java │ └── MaxHeap.java ├── meetingroomscheduler ├── Main.java ├── README.md ├── constant │ └── RoomType.java ├── exception │ └── MeetingSchedulingException.java ├── model │ ├── Duration.java │ ├── Meeting.java │ ├── Room.java │ ├── RoomBooking.java │ └── User.java ├── repository │ ├── MeetingRepository.java │ └── RoomRepository.java ├── service │ ├── MeetingService.java │ ├── RoomService.java │ └── impl │ │ ├── MeetingServiceImpl.java │ │ └── RoomServiceImpl.java ├── util │ └── Util.java └── validator │ ├── DurationValidator.java │ └── RoomValidator.java ├── multithreadedlogging ├── MainApplication.java ├── README.md ├── configuration │ └── Config.java ├── constant │ ├── LogLevel.java │ └── SupportedLogMedium.java ├── logger │ ├── ApplicationAwareLogger.java │ ├── InternalLogger.java │ ├── factory │ │ └── InternalLoggerSimpleFactory.java │ └── impl │ │ ├── ApplicationAwareLoggerImpl.java │ │ ├── DBInternalLogger.java │ │ ├── FileInternalLogger.java │ │ └── NetworkInternalLogger.java ├── model │ └── message │ │ ├── ApplicationAwareMessage.java │ │ └── WritableMessage.java ├── service │ ├── QueueService.java │ └── impl │ │ └── QueueServiceImpl.java └── worker │ ├── Consumer.java │ └── Producer.java ├── multithreadedproducerconsumer ├── BoundedProducer.java ├── Consumer.java ├── ConsumerWithSharedState.java ├── Main.java ├── MyQueue.java ├── MyQueueImpl.java ├── MyQueueImpl2.java ├── Producer.java ├── ProducerWithSharedState.java ├── README.md └── SharedVariable.java ├── myblockingqueue ├── Consumer.java ├── MyBlockingQueue.java ├── Producer.java └── README.md ├── notificationsystem ├── MainApplication.java ├── README.md ├── client │ ├── EmailClient.java │ ├── FacebookClient.java │ ├── InstagramClient.java │ ├── MobilePushNotifierClient.java │ ├── SMSClient.java │ ├── SlackNotificationClient.java │ ├── WebPushClient.java │ ├── WhatsappClient.java │ └── impl │ │ ├── EmailClientImpl.java │ │ ├── FacebookClientImpl.java │ │ ├── InstagramClientImpl.java │ │ ├── MobilePushNotifierClientImpl.java │ │ ├── SMSClientImpl.java │ │ ├── SlackNotificationClientImpl.java │ │ ├── WebPushClientImpl.java │ │ └── WhatsappClientImpl.java ├── constant │ ├── MessageType.java │ └── NotificationChannel.java ├── factory │ ├── NotifierSimpleFactory.java │ └── PriorityHandlerSimpleFactory.java ├── model │ ├── EndUser.java │ ├── Message.java │ └── Template.java ├── repository │ ├── EndUserSubscriptionRepository.java │ └── TemplateRepository.java └── service │ ├── MessageTemplateService.java │ ├── NotificationService.java │ ├── impl │ ├── MessageTemplateServiceImpl.java │ └── NotificationServiceImpl.java │ ├── notifier │ └── impl │ │ ├── BaseNotifier.java │ │ ├── EmailNotifier.java │ │ ├── FacebookNotifier.java │ │ ├── InstagramNotifier.java │ │ ├── MobilePushNotifier.java │ │ ├── SMSNotifier.java │ │ ├── SlackNotifier.java │ │ ├── WebPushNotifier.java │ │ └── WhatsappNotifier.java │ └── priority │ ├── PriorityHandler.java │ └── impl │ └── HighPriorityHandlerImpl.java ├── onlinejudge ├── MainApplication.java ├── README.md ├── constant │ ├── DifficultyLevel.java │ ├── SolutionStatus.java │ ├── SupportedLanguage.java │ └── TestCaseRunStatus.java ├── exception │ ├── CompilationException.java │ ├── NoCompilerFoundException.java │ └── ServiceException.java ├── factory │ └── CompilerServiceSimpleFactory.java ├── model │ ├── CommonMetadata.java │ ├── Company.java │ ├── Question.java │ ├── QuestionComment.java │ ├── QuestionDiscussion.java │ ├── QuestionMetadata.java │ ├── QuestionTag.java │ ├── Solution.java │ ├── SolutionComment.java │ ├── SolutionRunResult.java │ ├── SolutionSubmittedResult.java │ ├── SubmissionTimeTestCase.java │ ├── TestCase.java │ ├── TestCaseResult.java │ ├── Topic.java │ ├── User.java │ └── UserRole.java ├── repository │ ├── QuestionMetadataRepository.java │ ├── QuestionRepository.java │ ├── QuestionTagRepository.java │ ├── SolutionRepository.java │ └── TestCaseRepository.java └── service │ ├── BlobService.java │ ├── QuestionMetadataService.java │ ├── QuestionService.java │ ├── QuestionTagService.java │ ├── SolutionService.java │ ├── TestCaseService.java │ ├── compiler │ └── CompilerService.java │ └── impl │ ├── BlobServiceImpl.java │ ├── QuestionMetadataServiceImpl.java │ ├── QuestionServiceImpl.java │ ├── QuestionTagServiceImpl.java │ ├── SolutionServiceImpl.java │ ├── TestCaseServiceImpl.java │ └── compiler │ ├── CppCompilerServiceImpl.java │ ├── GoCompilerServiceImpl.java │ └── JavaCompilerServiceImpl.java ├── parkinglot ├── MainApplication.java ├── README.md └── src │ ├── config │ ├── Config.java │ ├── DefaultSlotMapping.java │ └── DefaultVehicleToSlotMapping.java │ ├── constant │ ├── SlotStatus.java │ ├── SlotType.java │ ├── TicketStatus.java │ └── VehicleType.java │ ├── exception │ └── ServiceException.java │ ├── model │ ├── Building.java │ ├── Entry.java │ ├── Exit.java │ ├── Fee.java │ ├── Level.java │ ├── ParkingLot.java │ ├── Payment.java │ ├── Ticket.java │ ├── User.java │ ├── slot │ │ ├── LargeSlot.java │ │ ├── MediumSlot.java │ │ ├── Slot.java │ │ ├── SmallSlot.java │ │ ├── XLargeSlot.java │ │ └── XSmallSlot.java │ └── vehicle │ │ ├── Bus.java │ │ ├── LargeFamilyCar.java │ │ ├── MiniVan.java │ │ ├── SUV.java │ │ ├── SmallFamilyCar.java │ │ ├── Truck.java │ │ ├── TwoWheeler.java │ │ ├── Van.java │ │ └── Vehicle.java │ ├── service │ ├── BuildingService.java │ ├── ParkingFeeCalculatorService.java │ ├── ParkingLotService.java │ └── impl │ │ ├── BuildingServiceImpl.java │ │ ├── ParkingFeeCalculatorServiceImpl.java │ │ └── ParkingLotServiceImpl.java │ └── strategy │ └── SlotSelectionStrategy.java ├── pizzapricing ├── Main.java ├── README.md ├── constant │ ├── BaseType.java │ ├── PizzaSize.java │ └── PizzaTopping.java └── model │ ├── BaseAddOn.java │ ├── BasePizza.java │ ├── Money.java │ ├── MoneyImpl.java │ ├── Pizza.java │ ├── PizzaDecorator.java │ ├── PricingFactory.java │ ├── PricingFactoryImpl.java │ ├── SizeAddOn.java │ └── ToppingAddOn.java ├── scheduledthreadpoolexecutor ├── MainApplication.java ├── README.md ├── executor │ ├── ScheduledExecutor.java │ ├── ScheduledThreadPoolExecutor.java │ ├── SharedState.java │ └── Task.java └── worker │ ├── PoolExecutorThread.java │ └── ProducerThread.java ├── snakeandladder ├── Main.java ├── README.md ├── constant │ └── GameStatus.java ├── exception │ └── GameException.java ├── handler │ ├── GameHandler.java │ └── impl │ │ └── GameHandlerImpl.java └── model │ ├── Board.java │ ├── Coordinate.java │ ├── Dice.java │ ├── GeneralPosition.java │ ├── Ladder.java │ ├── Player.java │ ├── PositionChanger.java │ └── Snake.java ├── snakegame ├── Main.java ├── README.md ├── client │ ├── GameClient.java │ └── GameClientImpl.java ├── constant │ ├── Direction.java │ └── GameState.java ├── controller │ ├── GameController.java │ └── GameControllerImpl.java └── model │ ├── Board.java │ ├── BoardImpl.java │ ├── Cell.java │ ├── GameResponse.java │ ├── MoveResult.java │ ├── Snake.java │ └── SnakeImpl.java ├── stockbroker ├── Main.java ├── README.md ├── constant │ ├── AssetType.java │ ├── CompanyType.java │ ├── Currency.java │ ├── OrderStatus.java │ ├── OrderType.java │ ├── SectorType.java │ └── TimeUnit.java ├── exception │ ├── ExchangeException.java │ ├── NotImplementedException.java │ └── PortfolioException.java ├── model │ ├── AmountChange.java │ ├── AnyHolding.java │ ├── BondPortfolioEntry.java │ ├── Company.java │ ├── CompanyFundamental.java │ ├── CompanyGrowth.java │ ├── CompanyTicker.java │ ├── Entry.java │ ├── EquityHoldingEntry.java │ ├── EquityMutualFundPortfolioEntry.java │ ├── EquityPositionEntry.java │ ├── EquityWatchListEntry.java │ ├── Exchange.java │ ├── GoldPortfolioEntry.java │ ├── Holding.java │ ├── LimitOrderStrategy.java │ ├── MarketOrderStrategy.java │ ├── Money.java │ ├── Order.java │ ├── OrderData.java │ ├── OrderStrategy.java │ ├── Portfolio.java │ ├── Position.java │ ├── Sector.java │ ├── SubPortfolio.java │ ├── Ticker.java │ ├── User.java │ └── WatchList.java ├── repository │ ├── ExchangeRepository.java │ ├── OrderRepository.java │ └── PortfolioRepository.java └── service │ ├── ExchangeService.java │ ├── OrderService.java │ ├── PortfolioService.java │ └── impl │ ├── ExchangeServiceImpl.java │ ├── OrderServiceImpl.java │ └── PortfolioServiceImpl.java ├── threadpool ├── FixedThreadPool.java ├── Main.java ├── README.md ├── RequestRejectionException.java ├── State.java ├── ThreadPool.java ├── ThreadPoolFactory.java ├── ThreadState.java └── WorkerThread.java ├── tictactoe ├── Main.java ├── README.md ├── client │ ├── GameClient.java │ └── GameClientImpl.java ├── configuration │ ├── ConfigurationReader.java │ ├── ConfigurationReaderImpl.java │ └── GameConfiguration.java ├── controller │ ├── BoardController.java │ ├── BoardControllerImpl.java │ ├── DiagonalWinningStrategy.java │ ├── HorizontalWinningStrategy.java │ ├── VerticalWinningStrategy.java │ └── WinningStrategy.java ├── factory │ ├── PlayerFactory.java │ └── PlayerFactoryImpl.java └── model │ ├── Board.java │ ├── HumanPlayer.java │ ├── MachinePlayer.java │ └── Player.java └── uberdriverdispatch ├── DispatchApplication.java ├── README.md ├── constant └── DriverStatus.java ├── exception └── ServiceException.java ├── model ├── Driver.java ├── Location.java ├── Product.java ├── RideRequest.java └── User.java ├── service ├── DispatchService.java ├── DriverService.java └── impl │ ├── DispatchServiceImpl.java │ └── DriverServiceImpl.java └── worker ├── DispatchThread.java ├── DriverAcceptanceResult.java ├── DriverThread.java └── DriverThreadSharedState.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/CODEOWNERS -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/LICENSE -------------------------------------------------------------------------------- /LowLevelDesign.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/LowLevelDesign.iml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/README.md -------------------------------------------------------------------------------- /src/com/lld/amazon/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/Main.java -------------------------------------------------------------------------------- /src/com/lld/amazon/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/README.md -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/CurrencySymbol.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/CurrencySymbol.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/CustomerPreferenceKeys.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/CustomerPreferenceKeys.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/DeliveryType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/DeliveryType.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/OfferType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/OfferType.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/OrderState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/OrderState.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/PaymentMethodType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/PaymentMethodType.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/PaymentStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/PaymentStatus.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/PricingGroupType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/PricingGroupType.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/PricingGroups.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/PricingGroups.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/PricingLineItemType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/PricingLineItemType.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/PricingLineItems.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/PricingLineItems.java -------------------------------------------------------------------------------- /src/com/lld/amazon/constant/ProductOfferType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/constant/ProductOfferType.java -------------------------------------------------------------------------------- /src/com/lld/amazon/exception/PricingException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/exception/PricingException.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Address.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Address.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Billing.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Billing.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Cart.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Cart.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/CartOrOrderItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/CartOrOrderItem.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/CartOrOrderPricing.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/CartOrOrderPricing.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Catalogue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Catalogue.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Customer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Customer.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/CustomerProfile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/CustomerProfile.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/DeliveryETA.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/DeliveryETA.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/DeliveryOption.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/DeliveryOption.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/HomePage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/HomePage.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/KV.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/KV.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Media.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Media.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Money.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Money.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Offer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Offer.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Order.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Order.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/OrderItemDelivery.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/OrderItemDelivery.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Payment.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Payment.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/PaymentMethod.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/PaymentMethod.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Pricing.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Pricing.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/PricingGroup.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/PricingGroup.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/PricingLineItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/PricingLineItem.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Product.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Product.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/ProductInventoryInfo.java: -------------------------------------------------------------------------------- 1 | package com.lld.amazon.model; 2 | 3 | public class ProductInventoryInfo { 4 | } 5 | -------------------------------------------------------------------------------- /src/com/lld/amazon/model/ProductOffer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/ProductOffer.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/ProductReviewsAndRating.java: -------------------------------------------------------------------------------- 1 | package com.lld.amazon.model; 2 | 3 | public class ProductReviewsAndRating { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /src/com/lld/amazon/model/ProductVariety.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/ProductVariety.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/ProductVarietyMetadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/ProductVarietyMetadata.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/ProtectionPlan.java: -------------------------------------------------------------------------------- 1 | package com.lld.amazon.model; 2 | 3 | public class ProtectionPlan { 4 | } 5 | -------------------------------------------------------------------------------- /src/com/lld/amazon/model/QuantifiedCartOrOrder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/QuantifiedCartOrOrder.java -------------------------------------------------------------------------------- /src/com/lld/amazon/model/Seller.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/model/Seller.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/CartOrOrderPricingService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/CartOrOrderPricingService.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/CartService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/CartService.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/ETAService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/ETAService.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/HomePageService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/HomePageService.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/OrderService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/OrderService.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/PricingService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/PricingService.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/impl/CartOrOrderPricingServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/impl/CartOrOrderPricingServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/impl/CartServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/impl/CartServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/impl/ETAServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/impl/ETAServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/impl/HomePageServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/impl/HomePageServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/impl/OrderServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/impl/OrderServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/amazon/service/impl/PricingServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/service/impl/PricingServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/amazon/util/Util.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/amazon/util/Util.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/README.md -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/constant/AudioExperienceType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/constant/AudioExperienceType.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/constant/BookingStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/constant/BookingStatus.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/constant/PaymentStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/constant/PaymentStatus.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/constant/SeatStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/constant/SeatStatus.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/constant/Threshold.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/constant/Threshold.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/constant/VideoExperienceType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/constant/VideoExperienceType.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/exception/BookingNotFoundException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/exception/BookingNotFoundException.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/exception/BookingValidationException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/exception/BookingValidationException.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/exception/InvalidSeatStatusException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/exception/InvalidSeatStatusException.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Booking.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Booking.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Cast.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Cast.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Hall.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Hall.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Location.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Location.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Movie.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Movie.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Payment.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Payment.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Screen.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Screen.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Seat.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Seat.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Show.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Show.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/ShowPrice.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/ShowPrice.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/Theatre.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/Theatre.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/model/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/model/User.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/repository/BookingRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/repository/BookingRepository.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/repository/ShowRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/repository/ShowRepository.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/service/BookingService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/service/BookingService.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/service/SearchService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/service/SearchService.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/service/ShowService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/service/ShowService.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/service/impl/BookingServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/service/impl/BookingServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/service/impl/SearchServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/service/impl/SearchServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/bookmyshow/service/impl/ShowServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/bookmyshow/service/impl/ShowServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/README.md -------------------------------------------------------------------------------- /src/com/lld/chatapplication/exception/ListenerException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/exception/ListenerException.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/exception/ServiceException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/exception/ServiceException.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/Business.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/Business.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/BusinessUser.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/BusinessUser.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/Conversation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/Conversation.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/Group.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/Group.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/GroupConversation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/GroupConversation.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/IndividualUser.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/IndividualUser.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/Message.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/Message.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/PrivateConversation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/PrivateConversation.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/UniqueUserContact.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/UniqueUserContact.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/User.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/model/UserPair.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/model/UserPair.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/repository/ConversationRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/repository/ConversationRepository.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/repository/GroupRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/repository/GroupRepository.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/repository/UserRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/repository/UserRepository.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/ChatService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/ChatService.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/ConversationService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/ConversationService.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/GroupService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/GroupService.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/UserService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/UserService.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/impl/ChatServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/impl/ChatServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/impl/ConversationServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/impl/ConversationServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/impl/GroupServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/impl/GroupServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/impl/UserServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/impl/UserServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/listener/MessageListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/listener/MessageListener.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/listener/UserListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/listener/UserListener.java -------------------------------------------------------------------------------- /src/com/lld/chatapplication/service/listener/impl/MessageListenerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/chatapplication/service/listener/impl/MessageListenerImpl.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/Main.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/README.md -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/client/GameClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/client/GameClient.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/client/GameClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/client/GameClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/configuration/GameConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/configuration/GameConfiguration.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/controller/DiagonalWinningStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/controller/DiagonalWinningStrategy.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/controller/GameBoardServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/controller/GameBoardServer.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/controller/GameBoardServerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/controller/GameBoardServerImpl.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/controller/HorizontalWinningStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/controller/HorizontalWinningStrategy.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/controller/VerticalWinningStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/controller/VerticalWinningStrategy.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/controller/WinningStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/controller/WinningStrategy.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/model/GameBoard.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/model/GameBoard.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/model/HumanPlayer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/model/HumanPlayer.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/model/MachinePlayer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/model/MachinePlayer.java -------------------------------------------------------------------------------- /src/com/lld/connectfourgame/model/Player.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectfourgame/model/Player.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/README.md -------------------------------------------------------------------------------- /src/com/lld/connectionpool/connection/Connection.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/connection/Connection.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/connection/HttpConnection.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/connection/HttpConnection.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/connection/JDBCConnection.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/connection/JDBCConnection.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/connection/factory/ConnectionFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/connection/factory/ConnectionFactory.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/connection/factory/HttpConnectionFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/connection/factory/HttpConnectionFactory.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/connection/factory/JDBCConnectionFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/connection/factory/JDBCConnectionFactory.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/constant/ConnectionState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/constant/ConnectionState.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/pool/ConnectionPool.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/pool/ConnectionPool.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/pool/ConnectionPoolImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/pool/ConnectionPoolImpl.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/worker/ConnectionMaintainer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/worker/ConnectionMaintainer.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/worker/GetConnection.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/worker/GetConnection.java -------------------------------------------------------------------------------- /src/com/lld/connectionpool/worker/ReleaseConnection.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/connectionpool/worker/ReleaseConnection.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/Main.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/MyTask.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/MyTask.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/README.md -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/queue/CustomQueue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/queue/CustomQueue.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/queue/PriorityQueueBasedBlockingQueue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/queue/PriorityQueueBasedBlockingQueue.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/queue/PriorityQueueBasedBlockingQueue2.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/queue/PriorityQueueBasedBlockingQueue2.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/queue/PriorityQueueBasedNonBlockingQueue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/queue/PriorityQueueBasedNonBlockingQueue.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/scheduler/DelayedScheduler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/scheduler/DelayedScheduler.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/scheduler/DelayedSchedulerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/scheduler/DelayedSchedulerImpl.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/scheduler/DelayedTask.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/scheduler/DelayedTask.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/scheduler/PriorityQueueBasedDelayedScheduler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/scheduler/PriorityQueueBasedDelayedScheduler.java -------------------------------------------------------------------------------- /src/com/lld/delayedscheduler/scheduler/SharedVariable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/delayedscheduler/scheduler/SharedVariable.java -------------------------------------------------------------------------------- /src/com/lld/elevator/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/Main.java -------------------------------------------------------------------------------- /src/com/lld/elevator/algorithm/ElevatorSelectionBruteForceStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/algorithm/ElevatorSelectionBruteForceStrategy.java -------------------------------------------------------------------------------- /src/com/lld/elevator/algorithm/ElevatorSelectionStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/algorithm/ElevatorSelectionStrategy.java -------------------------------------------------------------------------------- /src/com/lld/elevator/algorithm/WeightBasedElevatorSelectionStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/algorithm/WeightBasedElevatorSelectionStrategy.java -------------------------------------------------------------------------------- /src/com/lld/elevator/constant/CommandType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/constant/CommandType.java -------------------------------------------------------------------------------- /src/com/lld/elevator/constant/Direction.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/constant/Direction.java -------------------------------------------------------------------------------- /src/com/lld/elevator/constant/ElevatorCarState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/constant/ElevatorCarState.java -------------------------------------------------------------------------------- /src/com/lld/elevator/constant/ElevatorFacing.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/constant/ElevatorFacing.java -------------------------------------------------------------------------------- /src/com/lld/elevator/constant/ElevatorType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/constant/ElevatorType.java -------------------------------------------------------------------------------- /src/com/lld/elevator/constant/MovementState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/constant/MovementState.java -------------------------------------------------------------------------------- /src/com/lld/elevator/constant/StandardFloor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/constant/StandardFloor.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/Building.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/Building.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ButtonDoorClose.java: -------------------------------------------------------------------------------- 1 | package com.lld.elevator.model; 2 | 3 | public class ButtonDoorClose { 4 | } 5 | -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ButtonDoorOpen.java: -------------------------------------------------------------------------------- 1 | package com.lld.elevator.model; 2 | 3 | public class ButtonDoorOpen { 4 | } 5 | -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ButtonDown.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/ButtonDown.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ButtonUp.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/ButtonUp.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/DirectionButton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/DirectionButton.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/Display.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/Display.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ElevatorCar.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/ElevatorCar.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ElevatorCarDoorButtonPanel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/ElevatorCarDoorButtonPanel.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ElevatorCarKeypad.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/ElevatorCarKeypad.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ElevatorCarMiscButtonPanel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/ElevatorCarMiscButtonPanel.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ElevatorCarPanel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/ElevatorCarPanel.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/ElevatorPointOfRequestPanel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/ElevatorPointOfRequestPanel.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/Floor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/Floor.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/InfoButton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/model/InfoButton.java -------------------------------------------------------------------------------- /src/com/lld/elevator/model/WeightSensor.java: -------------------------------------------------------------------------------- 1 | package com.lld.elevator.model; 2 | 3 | public class WeightSensor { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /src/com/lld/elevator/repository/ElevatorCarCurrentLocationRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/repository/ElevatorCarCurrentLocationRepository.java -------------------------------------------------------------------------------- /src/com/lld/elevator/repository/ElevatorRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/repository/ElevatorRepository.java -------------------------------------------------------------------------------- /src/com/lld/elevator/service/BuildingService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/service/BuildingService.java -------------------------------------------------------------------------------- /src/com/lld/elevator/service/ElevatorService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/service/ElevatorService.java -------------------------------------------------------------------------------- /src/com/lld/elevator/service/impl/BuildingServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/service/impl/BuildingServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/elevator/service/impl/ElevatorServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/elevator/service/impl/ElevatorServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/Main.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/README.md -------------------------------------------------------------------------------- /src/com/lld/filesystem/constant/DirectorySortingFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/constant/DirectorySortingFilter.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/constant/ObjectType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/constant/ObjectType.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/Directory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/Directory.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/File.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/File.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/FileSystemObject.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/FileSystemObject.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/Metadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/Metadata.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/impl/DirectoryImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/impl/DirectoryImpl.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/impl/FileImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/impl/FileImpl.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/impl/MetadataImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/impl/MetadataImpl.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/strategy/SortingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/strategy/SortingStrategy.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/strategy/impl/FileTypeBasedSortingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/strategy/impl/FileTypeBasedSortingStrategy.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/strategy/impl/NameBasedSortingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/strategy/impl/NameBasedSortingStrategy.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/model/strategy/impl/SizeBasedSortingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/model/strategy/impl/SizeBasedSortingStrategy.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/service/FileSystemUserInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/service/FileSystemUserInterface.java -------------------------------------------------------------------------------- /src/com/lld/filesystem/service/impl/FileSystemUserInterfaceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/filesystem/service/impl/FileSystemUserInterfaceImpl.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/README.md -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/constant/AcceptanceStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/constant/AcceptanceStatus.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/model/DLList.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/model/DLList.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/model/Event.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/model/Event.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/model/Member.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/model/Member.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/model/MemberCalendar.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/model/MemberCalendar.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/model/Organization.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/model/Organization.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/model/Participant.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/model/Participant.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/repository/EventAcceptanceRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/repository/EventAcceptanceRepository.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/repository/EventRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/repository/EventRepository.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/service/EventService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/service/EventService.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/service/impl/EventServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/service/impl/EventServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/service/visitor/EventVisitor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/service/visitor/EventVisitor.java -------------------------------------------------------------------------------- /src/com/lld/googlecalendar/service/visitor/impl/EventVisitorImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/googlecalendar/service/visitor/impl/EventVisitorImpl.java -------------------------------------------------------------------------------- /src/com/lld/imdb/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/imdb/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/README.md -------------------------------------------------------------------------------- /src/com/lld/imdb/constant/Gender.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/constant/Gender.java -------------------------------------------------------------------------------- /src/com/lld/imdb/constant/Genre.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/constant/Genre.java -------------------------------------------------------------------------------- /src/com/lld/imdb/constant/Language.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/constant/Language.java -------------------------------------------------------------------------------- /src/com/lld/imdb/constant/MediaType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/constant/MediaType.java -------------------------------------------------------------------------------- /src/com/lld/imdb/constant/PersonaType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/constant/PersonaType.java -------------------------------------------------------------------------------- /src/com/lld/imdb/constant/ShowType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/constant/ShowType.java -------------------------------------------------------------------------------- /src/com/lld/imdb/exception/ShowException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/exception/ShowException.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/AwardFunction.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/AwardFunction.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/CastAndCrew.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/CastAndCrew.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/EmbeddedMedia.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/EmbeddedMedia.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/FAQ.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/FAQ.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/Media.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/Media.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/Persona.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/Persona.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/PersonaDescription.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/PersonaDescription.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/Show.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/Show.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/ShowDynamicDetails.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/ShowDynamicDetails.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/ShowStaticDetails.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/ShowStaticDetails.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/User.java -------------------------------------------------------------------------------- /src/com/lld/imdb/model/UserReview.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/model/UserReview.java -------------------------------------------------------------------------------- /src/com/lld/imdb/repository/ShowRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/repository/ShowRepository.java -------------------------------------------------------------------------------- /src/com/lld/imdb/repository/impl/ShowRepositoryImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/repository/impl/ShowRepositoryImpl.java -------------------------------------------------------------------------------- /src/com/lld/imdb/service/FAQService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/service/FAQService.java -------------------------------------------------------------------------------- /src/com/lld/imdb/service/ReviewService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/service/ReviewService.java -------------------------------------------------------------------------------- /src/com/lld/imdb/service/ShowService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/service/ShowService.java -------------------------------------------------------------------------------- /src/com/lld/imdb/service/impl/FAQServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/service/impl/FAQServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/imdb/service/impl/ReviewServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/service/impl/ReviewServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/imdb/service/impl/ShowServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/imdb/service/impl/ShowServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/Main.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/README.md -------------------------------------------------------------------------------- /src/com/lld/invertedindex/analyzer/Analyzer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/analyzer/Analyzer.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/analyzer/TermAnalyzer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/analyzer/TermAnalyzer.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/analyzer/Token.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/analyzer/Token.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/document/Document.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/document/Document.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/index/DocumentIdRangeBasedIndex.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/index/DocumentIdRangeBasedIndex.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/index/Index.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/index/Index.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/index/IndexingMetadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/index/IndexingMetadata.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/index/Match.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/index/Match.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/index/MatchImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/index/MatchImpl.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/index/Range.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/index/Range.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/index/ShardedIndex.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/index/ShardedIndex.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/index/ShardedIndexImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/index/ShardedIndexImpl.java -------------------------------------------------------------------------------- /src/com/lld/invertedindex/machine/Machine.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/invertedindex/machine/Machine.java -------------------------------------------------------------------------------- /src/com/lld/kafka/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/kafka/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/README.md -------------------------------------------------------------------------------- /src/com/lld/kafka/model/Consumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/model/Consumer.java -------------------------------------------------------------------------------- /src/com/lld/kafka/model/ConsumerGroup.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/model/ConsumerGroup.java -------------------------------------------------------------------------------- /src/com/lld/kafka/model/Message.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/model/Message.java -------------------------------------------------------------------------------- /src/com/lld/kafka/model/MessageMetadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/model/MessageMetadata.java -------------------------------------------------------------------------------- /src/com/lld/kafka/model/Partition.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/model/Partition.java -------------------------------------------------------------------------------- /src/com/lld/kafka/model/Producer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/model/Producer.java -------------------------------------------------------------------------------- /src/com/lld/kafka/model/Topic.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/model/Topic.java -------------------------------------------------------------------------------- /src/com/lld/kafka/repository/TopicRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/repository/TopicRepository.java -------------------------------------------------------------------------------- /src/com/lld/kafka/service/ConsumerGroupService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/service/ConsumerGroupService.java -------------------------------------------------------------------------------- /src/com/lld/kafka/service/ConsumerService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/service/ConsumerService.java -------------------------------------------------------------------------------- /src/com/lld/kafka/service/TopicService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/service/TopicService.java -------------------------------------------------------------------------------- /src/com/lld/kafka/service/impl/ConsumerGroupServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/service/impl/ConsumerGroupServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/kafka/service/impl/ConsumerServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/service/impl/ConsumerServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/kafka/service/impl/TopicServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/service/impl/TopicServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/kafka/service/routing/strategy/RoutingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/service/routing/strategy/RoutingStrategy.java -------------------------------------------------------------------------------- /src/com/lld/kafka/service/routing/strategy/impl/RoundRobinRoutingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/service/routing/strategy/impl/RoundRobinRoutingStrategy.java -------------------------------------------------------------------------------- /src/com/lld/kafka/worker/ConsumerWorker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/worker/ConsumerWorker.java -------------------------------------------------------------------------------- /src/com/lld/kafka/worker/ProducerWorker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/kafka/worker/ProducerWorker.java -------------------------------------------------------------------------------- /src/com/lld/leaderboard/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/leaderboard/Main.java -------------------------------------------------------------------------------- /src/com/lld/leaderboard/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/leaderboard/README.md -------------------------------------------------------------------------------- /src/com/lld/leaderboard/model/LeaderboardEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/leaderboard/model/LeaderboardEntry.java -------------------------------------------------------------------------------- /src/com/lld/leaderboard/service/LeaderboardService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/leaderboard/service/LeaderboardService.java -------------------------------------------------------------------------------- /src/com/lld/leaderboard/service/impl/LeaderboardServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/leaderboard/service/impl/LeaderboardServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/leaderboard/service/impl/MaxHeap.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/leaderboard/service/impl/MaxHeap.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/Main.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/README.md -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/constant/RoomType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/constant/RoomType.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/exception/MeetingSchedulingException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/exception/MeetingSchedulingException.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/model/Duration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/model/Duration.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/model/Meeting.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/model/Meeting.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/model/Room.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/model/Room.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/model/RoomBooking.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/model/RoomBooking.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/model/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/model/User.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/repository/MeetingRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/repository/MeetingRepository.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/repository/RoomRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/repository/RoomRepository.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/service/MeetingService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/service/MeetingService.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/service/RoomService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/service/RoomService.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/service/impl/MeetingServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/service/impl/MeetingServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/service/impl/RoomServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/service/impl/RoomServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/util/Util.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/util/Util.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/validator/DurationValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/validator/DurationValidator.java -------------------------------------------------------------------------------- /src/com/lld/meetingroomscheduler/validator/RoomValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/meetingroomscheduler/validator/RoomValidator.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/README.md -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/configuration/Config.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/configuration/Config.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/constant/LogLevel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/constant/LogLevel.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/constant/SupportedLogMedium.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/constant/SupportedLogMedium.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/logger/ApplicationAwareLogger.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/logger/ApplicationAwareLogger.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/logger/InternalLogger.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/logger/InternalLogger.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/logger/factory/InternalLoggerSimpleFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/logger/factory/InternalLoggerSimpleFactory.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/logger/impl/ApplicationAwareLoggerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/logger/impl/ApplicationAwareLoggerImpl.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/logger/impl/DBInternalLogger.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/logger/impl/DBInternalLogger.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/logger/impl/FileInternalLogger.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/logger/impl/FileInternalLogger.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/logger/impl/NetworkInternalLogger.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/logger/impl/NetworkInternalLogger.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/model/message/ApplicationAwareMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/model/message/ApplicationAwareMessage.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/model/message/WritableMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/model/message/WritableMessage.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/service/QueueService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/service/QueueService.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/service/impl/QueueServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/service/impl/QueueServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/worker/Consumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/worker/Consumer.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedlogging/worker/Producer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedlogging/worker/Producer.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/BoundedProducer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/BoundedProducer.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/Consumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/Consumer.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/ConsumerWithSharedState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/ConsumerWithSharedState.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/Main.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/MyQueue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/MyQueue.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/MyQueueImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/MyQueueImpl.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/MyQueueImpl2.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/MyQueueImpl2.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/Producer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/Producer.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/ProducerWithSharedState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/ProducerWithSharedState.java -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/README.md -------------------------------------------------------------------------------- /src/com/lld/multithreadedproducerconsumer/SharedVariable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/multithreadedproducerconsumer/SharedVariable.java -------------------------------------------------------------------------------- /src/com/lld/myblockingqueue/Consumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/myblockingqueue/Consumer.java -------------------------------------------------------------------------------- /src/com/lld/myblockingqueue/MyBlockingQueue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/myblockingqueue/MyBlockingQueue.java -------------------------------------------------------------------------------- /src/com/lld/myblockingqueue/Producer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/myblockingqueue/Producer.java -------------------------------------------------------------------------------- /src/com/lld/myblockingqueue/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/myblockingqueue/README.md -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/README.md -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/EmailClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/EmailClient.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/FacebookClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/FacebookClient.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/InstagramClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/InstagramClient.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/MobilePushNotifierClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/MobilePushNotifierClient.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/SMSClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/SMSClient.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/SlackNotificationClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/SlackNotificationClient.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/WebPushClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/WebPushClient.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/WhatsappClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/WhatsappClient.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/impl/EmailClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/impl/EmailClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/impl/FacebookClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/impl/FacebookClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/impl/InstagramClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/impl/InstagramClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/impl/MobilePushNotifierClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/impl/MobilePushNotifierClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/impl/SMSClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/impl/SMSClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/impl/SlackNotificationClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/impl/SlackNotificationClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/impl/WebPushClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/impl/WebPushClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/client/impl/WhatsappClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/client/impl/WhatsappClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/constant/MessageType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/constant/MessageType.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/constant/NotificationChannel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/constant/NotificationChannel.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/factory/NotifierSimpleFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/factory/NotifierSimpleFactory.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/factory/PriorityHandlerSimpleFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/factory/PriorityHandlerSimpleFactory.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/model/EndUser.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/model/EndUser.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/model/Message.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/model/Message.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/model/Template.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/model/Template.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/repository/EndUserSubscriptionRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/repository/EndUserSubscriptionRepository.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/repository/TemplateRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/repository/TemplateRepository.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/MessageTemplateService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/MessageTemplateService.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/NotificationService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/NotificationService.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/impl/MessageTemplateServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/impl/MessageTemplateServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/impl/NotificationServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/impl/NotificationServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/BaseNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/BaseNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/EmailNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/EmailNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/FacebookNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/FacebookNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/InstagramNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/InstagramNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/MobilePushNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/MobilePushNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/SMSNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/SMSNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/SlackNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/SlackNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/WebPushNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/WebPushNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/notifier/impl/WhatsappNotifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/notifier/impl/WhatsappNotifier.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/priority/PriorityHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/priority/PriorityHandler.java -------------------------------------------------------------------------------- /src/com/lld/notificationsystem/service/priority/impl/HighPriorityHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/notificationsystem/service/priority/impl/HighPriorityHandlerImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/README.md -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/constant/DifficultyLevel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/constant/DifficultyLevel.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/constant/SolutionStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/constant/SolutionStatus.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/constant/SupportedLanguage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/constant/SupportedLanguage.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/constant/TestCaseRunStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/constant/TestCaseRunStatus.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/exception/CompilationException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/exception/CompilationException.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/exception/NoCompilerFoundException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/exception/NoCompilerFoundException.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/exception/ServiceException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/exception/ServiceException.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/factory/CompilerServiceSimpleFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/factory/CompilerServiceSimpleFactory.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/CommonMetadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/CommonMetadata.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/Company.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/Company.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/Question.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/Question.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/QuestionComment.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/QuestionComment.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/QuestionDiscussion.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/QuestionDiscussion.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/QuestionMetadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/QuestionMetadata.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/QuestionTag.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/QuestionTag.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/Solution.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/Solution.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/SolutionComment.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/SolutionComment.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/SolutionRunResult.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/SolutionRunResult.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/SolutionSubmittedResult.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/SolutionSubmittedResult.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/SubmissionTimeTestCase.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/SubmissionTimeTestCase.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/TestCase.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/TestCase.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/TestCaseResult.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/TestCaseResult.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/Topic.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/Topic.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/model/User.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/model/UserRole.java: -------------------------------------------------------------------------------- 1 | package com.lld.onlinejudge.model; 2 | 3 | public class UserRole { 4 | } 5 | -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/repository/QuestionMetadataRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/repository/QuestionMetadataRepository.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/repository/QuestionRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/repository/QuestionRepository.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/repository/QuestionTagRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/repository/QuestionTagRepository.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/repository/SolutionRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/repository/SolutionRepository.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/repository/TestCaseRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/repository/TestCaseRepository.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/BlobService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/BlobService.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/QuestionMetadataService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/QuestionMetadataService.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/QuestionService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/QuestionService.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/QuestionTagService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/QuestionTagService.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/SolutionService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/SolutionService.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/TestCaseService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/TestCaseService.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/compiler/CompilerService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/compiler/CompilerService.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/BlobServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/BlobServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/QuestionMetadataServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/QuestionMetadataServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/QuestionServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/QuestionServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/QuestionTagServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/QuestionTagServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/SolutionServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/SolutionServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/TestCaseServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/TestCaseServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/compiler/CppCompilerServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/compiler/CppCompilerServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/compiler/GoCompilerServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/compiler/GoCompilerServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/onlinejudge/service/impl/compiler/JavaCompilerServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/onlinejudge/service/impl/compiler/JavaCompilerServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/README.md -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/config/Config.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/config/Config.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/config/DefaultSlotMapping.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/config/DefaultSlotMapping.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/config/DefaultVehicleToSlotMapping.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/config/DefaultVehicleToSlotMapping.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/constant/SlotStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/constant/SlotStatus.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/constant/SlotType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/constant/SlotType.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/constant/TicketStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/constant/TicketStatus.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/constant/VehicleType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/constant/VehicleType.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/exception/ServiceException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/exception/ServiceException.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/Building.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/Building.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/Entry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/Entry.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/Exit.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/Exit.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/Fee.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/Fee.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/Level.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/Level.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/ParkingLot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/ParkingLot.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/Payment.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/Payment.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/Ticket.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/Ticket.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/User.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/slot/LargeSlot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/slot/LargeSlot.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/slot/MediumSlot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/slot/MediumSlot.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/slot/Slot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/slot/Slot.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/slot/SmallSlot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/slot/SmallSlot.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/slot/XLargeSlot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/slot/XLargeSlot.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/slot/XSmallSlot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/slot/XSmallSlot.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/Bus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/Bus.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/LargeFamilyCar.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/LargeFamilyCar.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/MiniVan.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/MiniVan.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/SUV.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/SUV.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/SmallFamilyCar.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/SmallFamilyCar.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/Truck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/Truck.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/TwoWheeler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/TwoWheeler.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/Van.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/Van.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/model/vehicle/Vehicle.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/model/vehicle/Vehicle.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/service/BuildingService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/service/BuildingService.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/service/ParkingFeeCalculatorService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/service/ParkingFeeCalculatorService.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/service/ParkingLotService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/service/ParkingLotService.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/service/impl/BuildingServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/service/impl/BuildingServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/service/impl/ParkingFeeCalculatorServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/service/impl/ParkingFeeCalculatorServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/service/impl/ParkingLotServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/service/impl/ParkingLotServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/parkinglot/src/strategy/SlotSelectionStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/parkinglot/src/strategy/SlotSelectionStrategy.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/Main.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/README.md -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/constant/BaseType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/constant/BaseType.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/constant/PizzaSize.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/constant/PizzaSize.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/constant/PizzaTopping.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/constant/PizzaTopping.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/BaseAddOn.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/BaseAddOn.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/BasePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/BasePizza.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/Money.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/Money.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/MoneyImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/MoneyImpl.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/Pizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/Pizza.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/PizzaDecorator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/PizzaDecorator.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/PricingFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/PricingFactory.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/PricingFactoryImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/PricingFactoryImpl.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/SizeAddOn.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/SizeAddOn.java -------------------------------------------------------------------------------- /src/com/lld/pizzapricing/model/ToppingAddOn.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/pizzapricing/model/ToppingAddOn.java -------------------------------------------------------------------------------- /src/com/lld/scheduledthreadpoolexecutor/MainApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/scheduledthreadpoolexecutor/MainApplication.java -------------------------------------------------------------------------------- /src/com/lld/scheduledthreadpoolexecutor/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/scheduledthreadpoolexecutor/README.md -------------------------------------------------------------------------------- /src/com/lld/scheduledthreadpoolexecutor/executor/ScheduledExecutor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/scheduledthreadpoolexecutor/executor/ScheduledExecutor.java -------------------------------------------------------------------------------- /src/com/lld/scheduledthreadpoolexecutor/executor/ScheduledThreadPoolExecutor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/scheduledthreadpoolexecutor/executor/ScheduledThreadPoolExecutor.java -------------------------------------------------------------------------------- /src/com/lld/scheduledthreadpoolexecutor/executor/SharedState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/scheduledthreadpoolexecutor/executor/SharedState.java -------------------------------------------------------------------------------- /src/com/lld/scheduledthreadpoolexecutor/executor/Task.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/scheduledthreadpoolexecutor/executor/Task.java -------------------------------------------------------------------------------- /src/com/lld/scheduledthreadpoolexecutor/worker/PoolExecutorThread.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/scheduledthreadpoolexecutor/worker/PoolExecutorThread.java -------------------------------------------------------------------------------- /src/com/lld/scheduledthreadpoolexecutor/worker/ProducerThread.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/scheduledthreadpoolexecutor/worker/ProducerThread.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/Main.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/README.md -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/constant/GameStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/constant/GameStatus.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/exception/GameException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/exception/GameException.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/handler/GameHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/handler/GameHandler.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/handler/impl/GameHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/handler/impl/GameHandlerImpl.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/model/Board.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/model/Board.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/model/Coordinate.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/model/Coordinate.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/model/Dice.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/model/Dice.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/model/GeneralPosition.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/model/GeneralPosition.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/model/Ladder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/model/Ladder.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/model/Player.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/model/Player.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/model/PositionChanger.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/model/PositionChanger.java -------------------------------------------------------------------------------- /src/com/lld/snakeandladder/model/Snake.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakeandladder/model/Snake.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/Main.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/README.md -------------------------------------------------------------------------------- /src/com/lld/snakegame/client/GameClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/client/GameClient.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/client/GameClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/client/GameClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/constant/Direction.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/constant/Direction.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/constant/GameState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/constant/GameState.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/controller/GameController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/controller/GameController.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/controller/GameControllerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/controller/GameControllerImpl.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/model/Board.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/model/Board.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/model/BoardImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/model/BoardImpl.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/model/Cell.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/model/Cell.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/model/GameResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/model/GameResponse.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/model/MoveResult.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/model/MoveResult.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/model/Snake.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/model/Snake.java -------------------------------------------------------------------------------- /src/com/lld/snakegame/model/SnakeImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/snakegame/model/SnakeImpl.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/Main.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/README.md -------------------------------------------------------------------------------- /src/com/lld/stockbroker/constant/AssetType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/constant/AssetType.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/constant/CompanyType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/constant/CompanyType.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/constant/Currency.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/constant/Currency.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/constant/OrderStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/constant/OrderStatus.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/constant/OrderType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/constant/OrderType.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/constant/SectorType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/constant/SectorType.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/constant/TimeUnit.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/constant/TimeUnit.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/exception/ExchangeException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/exception/ExchangeException.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/exception/NotImplementedException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/exception/NotImplementedException.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/exception/PortfolioException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/exception/PortfolioException.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/AmountChange.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/AmountChange.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/AnyHolding.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/AnyHolding.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/BondPortfolioEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/BondPortfolioEntry.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Company.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Company.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/CompanyFundamental.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/CompanyFundamental.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/CompanyGrowth.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/CompanyGrowth.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/CompanyTicker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/CompanyTicker.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Entry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Entry.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/EquityHoldingEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/EquityHoldingEntry.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/EquityMutualFundPortfolioEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/EquityMutualFundPortfolioEntry.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/EquityPositionEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/EquityPositionEntry.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/EquityWatchListEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/EquityWatchListEntry.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Exchange.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Exchange.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/GoldPortfolioEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/GoldPortfolioEntry.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Holding.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Holding.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/LimitOrderStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/LimitOrderStrategy.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/MarketOrderStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/MarketOrderStrategy.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Money.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Money.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Order.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Order.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/OrderData.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/OrderData.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/OrderStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/OrderStrategy.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Portfolio.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Portfolio.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Position.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Position.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Sector.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Sector.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/SubPortfolio.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/SubPortfolio.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/Ticker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/Ticker.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/User.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/model/WatchList.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/model/WatchList.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/repository/ExchangeRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/repository/ExchangeRepository.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/repository/OrderRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/repository/OrderRepository.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/repository/PortfolioRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/repository/PortfolioRepository.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/service/ExchangeService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/service/ExchangeService.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/service/OrderService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/service/OrderService.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/service/PortfolioService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/service/PortfolioService.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/service/impl/ExchangeServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/service/impl/ExchangeServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/service/impl/OrderServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/service/impl/OrderServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/stockbroker/service/impl/PortfolioServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/stockbroker/service/impl/PortfolioServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/threadpool/FixedThreadPool.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/FixedThreadPool.java -------------------------------------------------------------------------------- /src/com/lld/threadpool/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/Main.java -------------------------------------------------------------------------------- /src/com/lld/threadpool/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/README.md -------------------------------------------------------------------------------- /src/com/lld/threadpool/RequestRejectionException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/RequestRejectionException.java -------------------------------------------------------------------------------- /src/com/lld/threadpool/State.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/State.java -------------------------------------------------------------------------------- /src/com/lld/threadpool/ThreadPool.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/ThreadPool.java -------------------------------------------------------------------------------- /src/com/lld/threadpool/ThreadPoolFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/ThreadPoolFactory.java -------------------------------------------------------------------------------- /src/com/lld/threadpool/ThreadState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/ThreadState.java -------------------------------------------------------------------------------- /src/com/lld/threadpool/WorkerThread.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/threadpool/WorkerThread.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/Main.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/README.md -------------------------------------------------------------------------------- /src/com/lld/tictactoe/client/GameClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/client/GameClient.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/client/GameClientImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/client/GameClientImpl.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/configuration/ConfigurationReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/configuration/ConfigurationReader.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/configuration/ConfigurationReaderImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/configuration/ConfigurationReaderImpl.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/configuration/GameConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/configuration/GameConfiguration.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/controller/BoardController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/controller/BoardController.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/controller/BoardControllerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/controller/BoardControllerImpl.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/controller/DiagonalWinningStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/controller/DiagonalWinningStrategy.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/controller/HorizontalWinningStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/controller/HorizontalWinningStrategy.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/controller/VerticalWinningStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/controller/VerticalWinningStrategy.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/controller/WinningStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/controller/WinningStrategy.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/factory/PlayerFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/factory/PlayerFactory.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/factory/PlayerFactoryImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/factory/PlayerFactoryImpl.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/model/Board.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/model/Board.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/model/HumanPlayer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/model/HumanPlayer.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/model/MachinePlayer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/model/MachinePlayer.java -------------------------------------------------------------------------------- /src/com/lld/tictactoe/model/Player.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/tictactoe/model/Player.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/DispatchApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/DispatchApplication.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/README.md -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/constant/DriverStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/constant/DriverStatus.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/exception/ServiceException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/exception/ServiceException.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/model/Driver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/model/Driver.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/model/Location.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/model/Location.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/model/Product.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/model/Product.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/model/RideRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/model/RideRequest.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/model/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/model/User.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/service/DispatchService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/service/DispatchService.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/service/DriverService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/service/DriverService.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/service/impl/DispatchServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/service/impl/DispatchServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/service/impl/DriverServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/service/impl/DriverServiceImpl.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/worker/DispatchThread.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/worker/DispatchThread.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/worker/DriverAcceptanceResult.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/worker/DriverAcceptanceResult.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/worker/DriverThread.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/worker/DriverThread.java -------------------------------------------------------------------------------- /src/com/lld/uberdriverdispatch/worker/DriverThreadSharedState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kousiknath/LowLevelDesign/HEAD/src/com/lld/uberdriverdispatch/worker/DriverThreadSharedState.java --------------------------------------------------------------------------------