{"id":18523135,"url":"https://github.com/nemanja1105/candy-factory","last_synced_at":"2026-04-18T17:31:33.609Z","repository":{"id":178606342,"uuid":"662117346","full_name":"Nemanja1105/Candy-Factory","owner":"Nemanja1105","description":"Simulation of a candy factory using network technologies","archived":false,"fork":false,"pushed_at":"2023-07-04T12:18:20.000Z","size":12074,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-14T18:54:11.991Z","etag":null,"topics":["java","javafx","mail-client","rabbitmq","redis","restful-api","rmi","secure-communication","socket-programming","xml-validation"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Nemanja1105.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-04T11:48:31.000Z","updated_at":"2023-07-04T12:08:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"84f718c2-7cd3-43c7-bccd-dd70c6ce5b13","html_url":"https://github.com/Nemanja1105/Candy-Factory","commit_stats":null,"previous_names":["nemanja1105/candy-factory"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Nemanja1105/Candy-Factory","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nemanja1105%2FCandy-Factory","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nemanja1105%2FCandy-Factory/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nemanja1105%2FCandy-Factory/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nemanja1105%2FCandy-Factory/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nemanja1105","download_url":"https://codeload.github.com/Nemanja1105/Candy-Factory/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nemanja1105%2FCandy-Factory/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31977964,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T17:30:12.329Z","status":"ssl_error","status_checked_at":"2026-04-18T17:29:59.069Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","javafx","mail-client","rabbitmq","redis","restful-api","rmi","secure-communication","socket-programming","xml-validation"],"created_at":"2024-11-06T17:34:22.871Z","updated_at":"2026-04-18T17:31:33.592Z","avatar_url":"https://github.com/Nemanja1105.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Candy-Factory\nJava project that simulates the simplified operation of a candy factory. The project includes various GUI applications (java fx) that allow interaction with users, order management, product management, and communication with customers and raw material distributors.\n\nCustomer Application:\n\nUpon launching the application, users log in to the system by entering their username and password. There is also an option to register new users.\nRegistration and login to the system are performed through the factory's RESTful endpoints.\nAfter registration approval by the operator, users can view all available products and create orders.\nProducts are obtained from a REST service.\nWhen creating an order, users select desired products, and the order is sent to the factory's message queue (MQ) in XML format.\nThe order must be valid to be processed at the factory.\nFactory User Management Application:\n\nAllows the display of all client accounts in a tabular form, with options for approving, rejecting, deleting, and blocking accounts.\nUser accounts are stored in the \"users.json\" file on the server.\nFactory Operations Application:\n\nEnables CRUD operations on products, which are stored in a Redis database.\nProvides the ability to automatically add test data when the application is launched.\nUsers can write promotional text that is multicast to all clients.\nOrder Viewing Application:\n\nOperators log in by entering their name.\nLogin is performed using Secure Socket.\nAfter logging in, operators can retrieve and process orders, which are retrieved based on the client's submission time from the MQ.\nAfter reviewing, operators can approve or reject an order.\nClients automatically receive an email with information about the order status.\nThe order status information is stored in a text format on the factory server.\nRaw Material Ordering Application:\n\nDistributors are connected to the factory via RMI.\nDistributors have their own applications where they enter company information and generate products.\nFactory workers can view a list of all clients and the products of a selected client, and they can select desired products and enter the quantity for ordering.\nCommunication with distributors is performed via RMI.\n![image](https://github.com/Nemanja1105/Candy-Factory/assets/93669392/389a1de9-b0f2-4123-93d6-ad49dc8fe6e2)\n![image](https://github.com/Nemanja1105/Candy-Factory/assets/93669392/c3840623-4c1c-49f2-bf65-9365b49740ed)\n![image](https://github.com/Nemanja1105/Candy-Factory/assets/93669392/b1151ac7-9fd7-42f3-9cd4-1cf32b85fdeb)\n![image](https://github.com/Nemanja1105/Candy-Factory/assets/93669392/3dd9b885-d7a4-45ea-b57b-94b500bbd599)\n![image](https://github.com/Nemanja1105/Candy-Factory/assets/93669392/2e6f0e47-30aa-4a69-bb5c-e46f1905abbb)\n![image](https://github.com/Nemanja1105/Candy-Factory/assets/93669392/b1cc4a34-4d38-4d29-b0b3-6ab3dcaae6b6)\n![image](https://github.com/Nemanja1105/Candy-Factory/assets/93669392/192598da-5d7c-4eed-aea9-8dd6ac2df7d8)\n\n\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnemanja1105%2Fcandy-factory","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnemanja1105%2Fcandy-factory","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnemanja1105%2Fcandy-factory/lists"}