Commit Graph

149 Commits (e2f34150ef4eb2119716ac09a7790e09e85e054a)

Author SHA1 Message Date
noah metz 34082630b2 Added default schema back without crashing 2023-07-26 20:26:41 -06:00
noah metz d2f3daf5a6 Changed NewNode to return a pointer and add the node to the context 2023-07-26 15:08:14 -06:00
noah metz fa6142d880 Started adding back gql tests 2023-07-26 11:56:10 -06:00
noah metz f1c0f1e7de Added gql to the rework 2023-07-26 00:18:11 -06:00
noah metz a72124e659 Added NodeWithUsers interface to encompass any nodes that have a Users map 2023-07-25 00:27:39 -06:00
noah metz a2395189a8 Added LoadJSONNode to abstract out repeated json unmarshaling 2023-07-25 00:19:39 -06:00
noah metz 59df9f04d5 Added more policy types, removed tags 2023-07-24 22:52:15 -06:00
noah metz 264f31ad9a fix 2023-07-24 20:34:29 -06:00
noah metz 7d04923b3b Fixed interface conversion panics 2023-07-24 17:07:27 -06:00
noah metz fc2e36043f Tests compile and run 2023-07-24 16:04:56 -06:00
noah metz fa10ccd743 Attempt to fix DependencyPolicy 2023-07-24 01:41:47 -06:00
noah metz fc6c198ae3 Moved gql thread actions/handlers to module functions 2023-07-23 23:01:45 -06:00
noah metz dfa420757b Moved status signals to StatusSignal type with status string as type, so they can be ACLd 2023-07-23 21:14:15 -06:00
noah metz 63fb5e3187 Fixed AuthHandler to not require write permission on user 2023-07-23 19:46:18 -06:00
noah metz 054fe3c0ec Fixed starting of gql server to correctly start children that should start 2023-07-23 19:04:04 -06:00
noah metz 8fb0cbc982 Reworked use/update to require a read/write context be initialized before starting, still need to figure out if brittle locking is the solution to potential deadlock, and implement if so 2023-07-23 17:57:47 -06:00
noah metz 575912d56f Fixed compile errors 2023-07-22 21:24:54 -06:00
noah metz e347a3f232 start maniacal rewrite, main goal is to combine node and lockable to remove any sync mutex deadlocks. Another goal is to make read contexts get copies of the state to ensure they don't modify and no lock is required to ensure no value changes, and write contexts use the lockable locks instead of mutex 2023-07-22 20:21:17 -06:00
noah metz 97815c86ff Added GetResolveContext 2023-07-21 18:51:42 -06:00
noah metz 0428645be3 Added ExtractParam and ExtractID 2023-07-21 14:28:53 -06:00
noah metz 6cf2d2d957 Added SimplePolicy 2023-07-21 13:33:04 -06:00
noah metz 230ff2b883 First implementation of policies 2023-07-21 12:09:29 -06:00
noah metz 81e49b505b Moved self-signed certificate creation to NewGQLThread 2023-07-21 01:21:53 -06:00
noah metz 2c1c75572e Added save/load to tls state 2023-07-21 01:11:59 -06:00
noah metz cf248ee5b0 Add write to user when updating server 2023-07-21 01:06:38 -06:00
noah metz d4fb5a0922 Added TLS to GQLThread 2023-07-21 01:05:24 -06:00
noah metz 99d4f18daf Moved user to user.go 2023-07-20 22:08:28 -06:00
noah metz e50b550cd7 Renamed GQLUser to User 2023-07-20 22:03:25 -06:00
noah metz 4dc42a813e GQLUser improvement 2023-07-20 00:24:22 -06:00
noah metz 2fde6ae282 Added KDF for shared secret to shared ecdsa key, and added signature to AuthRespJSON 2023-07-19 21:28:48 -06:00
noah metz 374fd6e487 Changed NodeID from string to UUID, filled in more auth 2023-07-19 20:03:13 -06:00
noah metz 6d0925f20f Added signature to auth response 2023-07-19 14:50:42 -06:00
noah metz 84af718071 Started to add authentication for GQL endpoint 2023-07-19 14:45:05 -06:00
noah metz d227331fe8 Return error for no auth 2023-07-13 18:28:02 -06:00
noah metz 372c465472 gql.go 2023-07-13 18:23:57 -06:00
noah metz 893fb8c4c4 require auth for gql 2023-07-13 18:21:33 -06:00
noah metz f64455f8ed Moved GQL restore to ThreadRestore to be reused by other classes. And GQLThreadInfo to ParentThreadInfo 2023-07-11 16:54:09 -06:00
noah metz 6a0a0762ad Finished rework of context 2023-07-09 20:30:19 -06:00
noah metz 7aedf553ee Updated gql.go 2023-07-09 19:33:18 -06:00
noah metz a9d1fe5793 moved to ThreadLoop from separate StartThread and RestoreThread functions 2023-07-06 16:57:51 -06:00
noah metz ff46af585d Added fixes to pass go vet 2023-07-05 14:50:21 -06:00
noah metz f44752d988 GQLWS Logging 2023-07-03 19:13:29 -06:00
noah metz 5bdc06bf0f Added UnlinkLockables and UnlinkThreads 2023-07-03 16:37:54 -06:00
noah metz 34f8a9f009 Fixed typo in thread loading that resulted in the parent being loaded as an owner instead 2023-07-03 13:14:48 -06:00
noah metz a05d847863 test 2023-07-02 12:54:29 -06:00
noah metz 8a5de1b0de fix 2023-07-02 12:51:22 -06:00
noah metz 300e735065 Added restore actions, and gql should run them 2023-07-02 12:47:45 -06:00
noah metz c9d9b9ac03 Update a bunch of stuff 2023-07-02 12:14:04 -06:00
noah metz 06a6b0f09a Name json fields for gql thread info 2023-07-02 10:49:42 -06:00
noah metz 1585034777 Fixed gql threadstate 2023-07-02 10:46:53 -06:00
noah metz 9cb1d26405 Added test to display GQLThread serialized data 2023-07-01 13:06:39 -06:00
noah metz d2b32bac5e Moved GQL context information out of node runtime state and into context 2023-07-01 13:03:28 -06:00
noah metz e862f9e49c Add UseMoreStates and UpdateMoreStates that should only be called from eachother 2023-06-28 21:49:23 -06:00
noah metz 2c0fced413 Fix BaseLockable gql type 2023-06-28 01:53:39 -06:00
noah metz a696213e38 Rework locking to hold all locks before changing any state 2023-06-28 00:48:49 -06:00
noah metz ff68f131e5 Try to get interface type differently 2023-06-27 13:00:53 -06:00
noah metz b174727bda Try to pass reflect.Type as pointer 2023-06-27 12:57:00 -06:00
noah metz 5a694dc067 Updated gql to use base types as fallback 2023-06-27 10:30:11 -06:00
noah metz 62d56f208a Add ChildGo to conveniently start children 2023-06-26 21:20:04 -06:00
noah metz bb3c80dbc7 Fixed internal signalling for threads, and update signal type in gql 2023-06-25 21:00:00 -06:00
noah metz a185cc3dfc Added base GQLThread 2023-06-25 20:20:59 -06:00
noah metz 2de5276ecc Rework of graph.go and resource.go for state 2023-06-23 10:10:25 -06:00
noah metz 5cd741b42e intermediary 2023-06-22 15:50:42 -06:00
noah metz d8446a2159 Fix typo 2023-06-21 11:55:11 -06:00
noah metz e87f53c22d Added children to resource interface 2023-06-21 11:52:30 -06:00
noah metz 3405521e9f Added children to resource interface 2023-06-21 11:50:57 -06:00
noah metz 687355f355 Added GQLServer to gql schema 2023-06-20 21:21:09 -06:00
noah metz fe307ff27f Added Resources field to gql for Event 2023-06-20 21:13:35 -06:00
noah metz 41f28a2017 Made logging configurable 2023-06-20 16:35:16 -06:00
noah metz 2122362891 Resources initialize on creation instead of explicitly 2023-06-20 16:09:17 -06:00
noah metz 9980be7c86 Removed EventMangar 2023-06-20 15:48:17 -06:00
noah metz 2c8f741f9f Fix 2023-06-19 15:53:32 -06:00
noah metz fcd27be3de Fixed valid_events and valid_resources 2023-06-19 15:43:04 -06:00
noah metz de8b9aa452 Added base node type to gql 2023-06-19 15:36:01 -06:00
noah metz 5b0639eb37 fix 2023-06-19 15:33:42 -06:00
noah metz 416c47f147 Fixed valid_events and valid_resources 2023-06-19 14:56:24 -06:00
noah metz b67fef84ee Added FileServer 2023-06-19 13:37:59 -06:00
noah metz 04e4574cd3 test 2023-06-18 22:05:47 -06:00
noah metz 83a8c742e9 Updated gql host string 2023-06-18 22:03:36 -06:00
noah metz fe9bc8ade0 Fix 2023-06-18 21:40:02 -06:00
noah metz 97e2e50fd5 Updated gql.go to use requesturi 2023-06-18 21:34:02 -06:00
noah metz 30b539ad74 Renamed update to PropagateUpdate 2023-06-18 19:14:07 -06:00
noah metz d2e3163806 Fixed package name 2023-06-18 18:33:17 -06:00
noah metz 8b7eb57673 Removed vex files and changed package name 2023-06-18 18:26:13 -06:00
noah metz 66e6c4263c Refactored GraphSignal to remove pointers and updated update path 2023-06-18 18:11:59 -06:00
noah metz 23fbdc74a0 fix 2023-06-16 19:19:05 -06:00
noah metz bd9edb19ee Added subscription to arena 2023-06-16 18:27:03 -06:00
noah metz 353b54757d Button finally transisitons game over GQL 2023-06-16 17:42:49 -06:00
noah metz 76cea43d9b Made subscription a bit more robust 2023-06-16 17:20:16 -06:00
noah metz bfcf06b190 Added basic ws subscription 2023-06-16 16:53:29 -06:00
noah metz ed5403b8ec Added empty else to GQLHandler websocket loop 2023-06-16 02:20:07 -06:00
noah metz 7a1e11c1f2 Better logging for gqlws, and added test-site 2023-06-16 01:59:01 -06:00
noah metz 9eb4d7f699 Added basic subscription(never updates data, only pings. Having issue with test-site since it continuously opens websockets without reporting an issue. 2023-06-16 01:46:15 -06:00
noah metz 4d26ed73dd Updated GQL to have node interface and type, and resource to have owner property that returns this 2023-06-13 15:29:23 -06:00
noah metz d5954d2860 Updated GQL, fixed manager, and added queries/mutations 2023-06-13 14:10:59 -06:00
noah metz be2e227a1d Added updateEvent to event tree and tested cancelling the event over graphql 2023-06-08 16:41:51 -06:00
noah metz 9e2ca6907a Added team and alliances to gql_vex.go 2023-06-08 00:19:55 -06:00
noah metz 77eb76bc9c Added vex match as module for gql node 2023-06-07 23:01:06 -06:00
noah metz a403ea82cb Moved gql node to own file 2023-06-07 22:46:42 -06:00