Development into Master #10

Merged
michael-bailey merged 102 commits from Development into master 2021-08-03 20:53:15 +00:00

102 Commits

Author SHA1 Message Date
michael bailey 5aa4f8caf6
Pulling basic server functionality into development (#9)
* removed redundant files

* moved files to new foundation library

* added new foundation crate

* added new client program crate

* added new server program crate

* added new serverctl program crate

* change toml to be a workspace instead of a project

* implementing more connection to network functionality

* implementing more connection to network functionality

* Implemented IMessageable for client, client manager as well as basic commands in netmgr

* fixing blocking issues with componenets

* adding network stream queuefor handling connections in a non blocking way

* ffixing blocking calls in network manager

* adding threading support to prevent blocking calls

* running rust formatter

* Created Client threads and implemented connect command

* fixed client not disconnecting issue

* adding messaging support between clients

* Implemented client messaging through the server

* removing unnecessary prints and thread delays

* adding support for updating clients
2021-04-13 18:17:58 +01:00
michael bailey 0572d0d0e9
Merge pull request #8 from Mitch161:consolidation-branch
Consolidation branch -> development branch
2021-03-30 07:29:41 +01:00
michael-bailey cf16367d51 removing dead code 2021-03-20 12:38:42 +00:00
michael-bailey 8f3d1549ca fixed issue with channel blocking 2021-03-18 23:37:48 +00:00
michael-bailey 53ff1858f6 implemented client manager tick function 2021-03-18 23:24:48 +00:00
michael-bailey d6c4baf556 Implemented client add functionality in the server. 2021-03-18 20:02:56 +00:00
michael-bailey f3ab1f37da Added client connecting condition to network manager 2021-03-18 19:55:04 +00:00
michael-bailey 30d9e5ba2d modified client to multiple params instead of map 2021-03-18 17:03:15 +00:00
michael-bailey 7d749d0de0 Moved TcpListender form Server To NetworkManage. 2021-03-18 16:52:03 +00:00
michael-bailey 436975e3c5 Moved TcpListender form Server To NetworkManage. 2021-03-18 16:42:42 +00:00
michael-bailey a5eff0bd32 merge server implementation branch 2021-03-18 16:05:27 +00:00
michael-bailey bb5fbdc43b removed redundant function 2021-03-18 15:57:34 +00:00
michael-bailey b53a63fd54 setting up json based message protocol 2021-03-18 11:50:12 +00:00
michael-bailey 19832f0aa1 added basic server messages. 2021-03-18 10:39:11 +00:00
michael-bailey 232effad14 implemented basic connection handling in the server 2021-03-18 10:39:11 +00:00
michael-bailey a8c37225ae implemented basic client manager functions for new architecture 2021-03-18 10:39:11 +00:00
michael-bailey 22a0d68255 implemented basic messageing system for clients. 2021-03-18 10:38:46 +00:00
michael-bailey cd81b1e250 redesigned client for the new exec structure 2021-03-18 10:38:46 +00:00
michael-bailey db72977d2f fixing owner structure. 2021-03-18 10:38:46 +00:00
michael-bailey 3ff3e531a1 moving server changes to client manager 2021-03-18 10:38:46 +00:00
michael-bailey 5b9d91e44e implemented basic connection handling in the server 2021-03-18 10:38:46 +00:00
michael-bailey 1966f80bc6 moving server changes to client manager 2021-03-18 10:38:09 +00:00
michael-bailey 546e566c9b Fixed immediate warnings 2021-03-18 10:37:47 +00:00
michael-bailey 965231cde9 added basic network manager implementation 2021-03-18 10:36:18 +00:00
michael-bailey 042f7e1007 added basic server messages. 2021-03-18 09:42:53 +00:00
michael-bailey b1be92ed02 implemented basic connection handling in the server 2021-03-18 09:26:49 +00:00
michael-bailey b1b8107ce7 implemented basic client manager functions for new architecture 2021-03-18 09:20:39 +00:00
michael-bailey e92096b6ad implemented basic messageing system for clients. 2021-03-18 08:55:21 +00:00
michael-bailey a493eddd50 redesigned client for the new exec structure 2021-03-17 18:37:06 +00:00
michael-bailey 194e954733 fixing owner structure. 2021-03-17 10:54:51 +00:00
michael-bailey f00d8cc7f7 moving server changes to client manager 2021-03-17 10:54:51 +00:00
michael-bailey 5f6ecdd839 added implemetation of info command on te server 2021-03-17 10:54:51 +00:00
michael-bailey 14154ebd4e implemented basic connection handling in the server 2021-03-17 10:54:51 +00:00
michael-bailey 5b7258d3ab added from vector trait to commands 2021-03-17 10:53:43 +00:00
michael-bailey 9b5cb18693 moved commands into lib module 2021-03-17 10:53:43 +00:00
michael-bailey b66fdd62b3 added implemetation of info command on te server 2021-03-17 09:56:51 +00:00
michael-bailey 71fe467ca2 implemented basic connection handling in the server 2021-03-16 10:11:31 +00:00
michael-bailey 6c89f34151 added from vector trait to commands 2021-03-16 10:11:03 +00:00
michael-bailey ca4b0259b9 moved commands into lib module 2021-03-16 09:41:35 +00:00
michael-bailey 585926ebed moving server changes to client manager 2021-03-15 17:21:23 +00:00
michael-bailey 5e49056992 Fixed immediate warnings 2021-03-15 17:18:39 +00:00
michael-bailey 962293b32f added basic implementations for server 2021-03-15 17:11:50 +00:00
michael-bailey 4c7c68c2a5 implementing common traits for server 2021-03-15 16:51:32 +00:00
michael-bailey 7731e18d8b implemeting client functionality and changed types 2021-03-12 17:17:48 +00:00
michael-bailey f4bd223d12 Created traits for struct ownership and impl them for client|manager 2021-03-12 14:31:34 +00:00
michael-bailey 9de6969eb8 Implementing core Client Manager methods 2021-03-11 20:22:20 +00:00
michael-bailey 3591318270 Fixed immediate warnings 2021-03-11 20:22:20 +00:00
michael-bailey e082971df0 Fixed immediate warnings 2021-03-11 14:06:05 +00:00
michael-bailey 1ecccf6d67 implemented eq and ord fror client 2021-03-11 13:25:37 +00:00
michael-bailey 96450d5da2 Update mod.rs
+ added self referenceing to teh client manager with a weak reference

+ added channels to the client manager
2021-02-08 21:12:10 +00:00
michael-bailey 8df5ac848b tidying up client struct 2021-02-08 21:12:10 +00:00
michael-bailey 87a2a6b6da Moving files around and implementing more of the client manager. 2021-02-08 21:12:10 +00:00
michael-bailey f8a1364645 Update server v3 tests 2021-02-08 21:12:10 +00:00
michael-bailey b0ed33b5c7 Update main_menu.rs
fixed accidental renaming
2021-02-08 21:12:10 +00:00
michael-bailey d1fce2060c adding documentation 2021-02-08 21:12:10 +00:00
michael-bailey 9a22addbb9 Update server_view_controller.rs 2021-02-08 21:12:10 +00:00
michael-bailey 3fb7c345ba Update server_v3.rs
added unit tests
2021-02-08 21:12:10 +00:00
michael-bailey 5b60f9282d Update main_menu.rs
renamed the main menu function
2021-02-08 21:12:10 +00:00
michael-bailey 13dbf4050f Update control_panel.rs 2021-02-08 21:12:10 +00:00
michael-bailey 9b5912f9eb Update control_panel.rs
fixed issue where i didnt put anything into a child function call
2021-02-08 21:12:10 +00:00
michael-bailey 28694107d4 Update client_v3.rs
removed redundant error clause in handle connection
2021-02-08 21:12:10 +00:00
michael-bailey 0dc93ba9ce Update server_v3.rs
fixed unused variable warning
2021-02-08 21:12:10 +00:00
michael-bailey ccb29581fb Update server_v3.rs
fixed reference issue with options
2021-02-08 21:12:10 +00:00
michael-bailey cae3a81cfb Update server_v3.rs
fixed the start function
2021-02-08 21:12:10 +00:00
michael-bailey b98ce05d32 Update server_v3.rs
renamed serverstate states
2021-02-08 21:12:10 +00:00
michael-bailey 72f0ca0139 added eq and PartialEq support to serverState 2021-02-08 21:12:10 +00:00
michael-bailey 1faacb9223 optimised imports 2021-02-08 21:12:10 +00:00
michael-bailey 285015f3f7 fixed warning on unused result 2021-02-08 21:12:10 +00:00
michael-bailey 0b36d04387 renamed functions 2021-02-08 21:12:10 +00:00
michael-bailey 157f76838b Update main.rs
renamed Server view controller
2021-02-08 21:12:10 +00:00
michael-bailey a7de2887d4 Update mod.rs 2021-02-08 21:12:10 +00:00
michael-bailey ef0ee61965 removed unessesery function 2021-02-08 21:12:10 +00:00
michael-bailey 864866d65b Allowing dead code 2021-02-08 21:12:10 +00:00
michael-bailey 8bd9303f5c Update main.rs
removing useless macros
2021-02-08 21:12:10 +00:00
michael-bailey abb4bfaa3e optimising imports
optimising imports
2021-02-08 21:12:10 +00:00
michael-bailey fd8346727b optimising imports 2021-02-08 21:12:10 +00:00
michael-bailey 1ac65001b4 Update main.rs
removed redundent and useless ui code
2021-02-08 21:12:10 +00:00
michael-bailey 5243a6ce8e renamed the about panel. 2021-02-08 21:12:10 +00:00
michael-bailey b3174cc488 Update server_view_controller.rs
changed the name of the ServercontrolView
2021-02-08 21:12:10 +00:00
michael-bailey 4deabcd1fc Update ServerV3.rs
removed use statement
2021-02-08 21:12:10 +00:00
michael-bailey ff97058aa9 Update mod.rs
added the new client to the module tree
2021-02-08 21:12:10 +00:00
michael-bailey b5194fce23 moving menu bar to another file 2021-02-08 21:12:10 +00:00
michael-bailey 89bf41861f added module file for ui 2021-02-08 21:12:10 +00:00
michael-bailey ab23ff5a99 updated server view controller
forgot the imports
2021-02-08 21:12:10 +00:00
michael-bailey face6f935d Create server_view_controller.rs
added a server view controller that holds the display and enables events

it uses views from other modules to create the ui tree.

the cursive user_data store is used to hiold the server
2021-02-08 21:12:10 +00:00
michael-bailey 8831413e00 Update server_profile.rs
changed the function in the update list handler
2021-02-08 21:12:10 +00:00
michael-bailey f2c87bacb3 Update server_profile.rs
removed extern crate uses
2021-02-08 21:12:10 +00:00
michael-bailey e8fc561894 Update server_profile.rs 2021-02-08 21:12:10 +00:00
michael-bailey 5473b2255d Update server_profile.rs
removed unused imports
2021-02-08 21:12:10 +00:00
michael-bailey d74ed68206 Update server_profile.rs
updated to account for the new threadpool location
2021-02-08 21:12:10 +00:00
michael-bailey 4501887b14 Update server_profile.rs
removed get client list
2021-02-08 21:12:10 +00:00
michael-bailey c233138ca6 Update server_profile.rs
added spaces and other changes
2021-02-08 21:12:10 +00:00
michael-bailey 8aa499ab03 Update server_profile.rs
removed the need for a arc for server properties
2021-02-08 21:12:10 +00:00
michael-bailey 659a26b6a8 Update mod.rs
added new modules for the new ui and server.
2021-02-08 21:12:10 +00:00
michael-bailey 143848f05c Update main.rs
extracting the ui from the main function
2021-02-08 21:12:10 +00:00
michael-bailey 800aedd9d8 Create control_panel.rs
creating a control panel for the server
2021-02-08 21:12:10 +00:00
michael-bailey e5b439bb57 Create About_Panel.rs
added an about layer function that returns a view
2021-02-08 21:12:10 +00:00
michael-bailey 49d3afd11f Update client_profile.rs
set the channels t use crossbeam_channels
2021-02-08 21:12:10 +00:00
michael-bailey 638b1ac969 created server version 3
this works on the face that a ui framework will have an event loop. so changes include:
+ start sets up the listener and allows the server to ba called
+ stop sets the server to disconnect other users and close the listener
+ tick should be called by the event loop this will allow any new connections to be handled, any pending
2021-02-08 21:12:10 +00:00
michael-bailey ad2c83c01c removed dashmap form commands 2021-02-08 21:12:10 +00:00
michael-bailey 749ddac360 Update LICENSE 2021-02-08 21:12:10 +00:00
michael-bailey b3de7670f3 got running flag to display 2021-02-08 21:12:10 +00:00