<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sunfish.git/opendc-common/src/main/kotlin/org/opendc/common/util/TimerScheduler.kt, branch master</title>
<subtitle>The OpenDC BSc thesis repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/'/>
<entry>
<title>refactor: Replace use of CoroutineContext by Dispatcher</title>
<updated>2022-11-13T17:42:01+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-11-09T21:59:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=fb2672afb2d8236d5291cd028196c99d8e4d47f1'/>
<id>fb2672afb2d8236d5291cd028196c99d8e4d47f1</id>
<content type='text'>
This change replaces the use of `CoroutineContext` for passing the
`SimulationDispatcher` across the different modules of OpenDC by the
lightweight `Dispatcher` interface of the OpenDC common module.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change replaces the use of `CoroutineContext` for passing the
`SimulationDispatcher` across the different modules of OpenDC by the
lightweight `Dispatcher` interface of the OpenDC common module.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor: Use InstantSource as time source</title>
<updated>2022-11-13T15:24:47+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-11-09T17:25:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=7a4b2c45a9926de59754b1d7219159656eea6e6d'/>
<id>7a4b2c45a9926de59754b1d7219159656eea6e6d</id>
<content type='text'>
This change updates the modules of OpenDC to always accept
the `InstantSource` interface as source of time. Previously we used
`java.time.Clock`, but this class is bound to a time zone which does not
make sense for our use-cases.

Since `java.time.Clock` implements `java.time.InstantSource`, it can be
used in places that require an `InstantSource` as parameter. Conversion
from `InstantSource` to `Clock` is also possible by invoking
`InstantSource#withZone`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the modules of OpenDC to always accept
the `InstantSource` interface as source of time. Previously we used
`java.time.Clock`, but this class is bound to a time zone which does not
make sense for our use-cases.

Since `java.time.Clock` implements `java.time.InstantSource`, it can be
used in places that require an `InstantSource` as parameter. Conversion
from `InstantSource` to `Clock` is also possible by invoking
`InstantSource#withZone`.
</pre>
</div>
</content>
</entry>
<entry>
<title>style: Eliminate use of wildcard imports</title>
<updated>2022-10-06T10:51:27+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-10-06T10:51:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=402a8f55342c4565431c2a2e7287a70592f3fe33'/>
<id>402a8f55342c4565431c2a2e7287a70592f3fe33</id>
<content type='text'>
This change updates the repository to remove the use of wildcard imports
everywhere. Wildcard imports are not allowed by default by Ktlint as
well as Google's Java style guide.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the repository to remove the use of wildcard imports
everywhere. Wildcard imports are not allowed by default by Ktlint as
well as Google's Java style guide.
</pre>
</div>
</content>
</entry>
<entry>
<title>perf(common): Optimize TimerScheduler</title>
<updated>2022-02-18T13:46:30+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-02-18T13:45:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=0711d4c1d6afb41ca31afbf8bd6253921d57eeb4'/>
<id>0711d4c1d6afb41ca31afbf8bd6253921d57eeb4</id>
<content type='text'>
This change updates the TimerScheduler implementation to directly use
the Delay object instead of running the timers inside a coroutine.
Constructing the coroutine is more expensive, so we prefer running in a
Runnable.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change updates the TimerScheduler implementation to directly use
the Delay object instead of running the timers inside a coroutine.
Constructing the coroutine is more expensive, so we prefer running in a
Runnable.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(utils): Rename utils module to common module</title>
<updated>2022-02-18T13:46:29+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2022-02-18T13:08:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=52d35cd82905612f0ef9f7b7d88611300fb48ebe'/>
<id>52d35cd82905612f0ef9f7b7d88611300fb48ebe</id>
<content type='text'>
This change adds a new module, opendc-common, that contains
functionality that is shared across OpenDC's modules.
We move the existing utils module into this new module.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change adds a new module, opendc-common, that contains
functionality that is shared across OpenDC's modules.
We move the existing utils module into this new module.
</pre>
</div>
</content>
</entry>
</feed>
