Commit Graph

23 Commits

Author SHA1 Message Date
Tristan B. Velloza Kildaire 3107f0a400 Connection
- The `Connection` type is now a kind-of `Thread`
- Added field `associatedServer` of type `Server` such that a connection can be associated with a given server
- Added field `clientSocket` such that a connection can associate the socket with itself
- Constructor sets the two above fields and calls the `Thread` super constructor passing in a function pointer to the worker function (currently a while loop)
- Implemented `Connection newConnection(Server, Socket)` which produces a new `Connection`, then calls `Server.addConnection()` and finally starts the `Connection`'s thread via `start()`, then returns the Connection
2023-03-26 12:04:32 +02:00
Tristan B. Velloza Kildaire 22ff8b636a Listener
- Documented module
- Documented type `Listener`
- Added a TODO
2023-03-26 11:58:05 +02:00
Tristan B. Velloza Kildaire a3a37a124b - Explicitly state the `mainSourceFile` as `source/renaissance/daemon.d.` 2023-03-26 11:53:05 +02:00
Tristan B. Velloza Kildaire 3baa19f449 Server
- Removed any reference to the old `ConsumerInterface` interface
2023-03-26 11:47:33 +02:00
Tristan B. Velloza Kildaire 5cdc56a1ca Merge branch 'master' of github.com:renaissanceorg/renaissance 2023-03-26 11:47:00 +02:00
Tristan B. Velloza Kildaire 234e4e0c14 Listener/ConsumerInterface- Upgraded `davinci` from `0.0.1` to `0.0.2` 2023-03-26 11:45:50 +02:00
Tristan B. Velloza Kildaire ec3ebc8ecb - Upgraded `davinci` from `0.0.1` to `0.0.2` 2023-03-26 11:43:59 +02:00
Tristan B. Velloza Kildaire ab8980af77
Update README.md 2023-03-26 11:42:40 +02:00
Tristan B. Velloza Kildaire 8f4f572cbc
Create d.yml 2023-03-26 11:41:59 +02:00
Tristan B. Velloza Kildaire 2d32c1c285 - Added `davinci` as a dependency 2023-03-25 18:37:43 +02:00
Tristan B. Velloza Kildaire 818b3a6e23 Server
- Added a queue of `Listener`(s) and a corresponding lock
- Added a queue of `Connection`(s) and a corresponding lock
- Initialize all queue locks in the constructor
- Added `addListener(Listener)` for adding a new listener; will throw an exception if already added
- `Server` now implements `ConnectionConsumer` and implements an `addConnection(Connection)` method which consumes the provided `Connection` and adds it to the connection queue
2023-03-25 16:48:08 +02:00
Tristan B. Velloza Kildaire 6961e0960f Errors
- Added new module `errors`
- Added new type `ErrorType` with enum member `LISTENER_ALREADY_ADDED`

Exceptions (package)

- Publically import `errors` (only `ErrorType`) and `RenaissanceException` from `types`

Types

- Added `RenaissanceException` type as the base exception class for the server code
2023-03-25 16:29:22 +02:00
Tristan B. Velloza Kildaire 00b683a558 ConnectionConsumer
- Added new type which represents any class that can "consume" (or add) a new `Connection` object

Listener

- Updated to now use the `ConnectionConsumer` interface type rather than `Server` directly

Listener (package)

- The package now imports (publically) `consumer` and `listener` modules
2023-03-25 16:27:52 +02:00
Tristan B. Velloza Kildaire 513bf38a82 Connection
- Added type `Connection`

Connection (package)

- Added package `renaissance.connection` which publically imports `renaissance.connection.connection`'s `Connection` type
2023-03-25 16:26:30 +02:00
Tristan B. Velloza Kildaire 1a3d6265d3 Dub
- Explicitly make the `targetType` an `executable`
2023-03-25 15:40:45 +02:00
Tristan B. Velloza Kildaire 0ac4392a25 Package (server)
- Added package `renaissance.server`
2023-03-25 15:37:25 +02:00
Tristan B. Velloza Kildaire 6151e5b477 Listener
- Added type `Listener` which takes in an instance of `Server` to associate with
2023-03-25 15:37:05 +02:00
Tristan B. Velloza Kildaire 21f170a999 Server
- Added type `Server` which represents an instance of the daemon
2023-03-25 15:37:01 +02:00
Tristan B. Velloza Kildaire e708c20e81 - Renamed module `app` to `daemon` 2023-03-25 15:36:10 +02:00
Tristan B. Velloza Kildaire fba3486763 Branding
- Addex exported single logo as `branding/logo_single.png`

Documentation

- Added a README with the logo, title and tagline

App

- Restructured into a module name `renaissance`
2023-03-01 00:02:13 +02:00
Tristan B. Velloza Kildaire f065ab9006 - Added branding 2023-02-28 23:56:40 +02:00
Tristan B. Velloza Kildaire 91a5b93771 - Updated .gitignore 2023-02-28 23:56:33 +02:00
Tristan B. Velloza Kildaire 7e892b1c83 - Initial commit 2023-02-28 23:56:21 +02:00