Skip to content

Commit

Permalink
Describe EJB timer usage for developers.
Browse files Browse the repository at this point in the history
  • Loading branch information
poikilotherm committed Dec 5, 2018
1 parent 4607549 commit 3e4a849
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 0 deletions.
4 changes: 4 additions & 0 deletions doc/sphinx-guides/source/developers/big-data-support.rst
Original file line number Diff line number Diff line change
Expand Up @@ -282,3 +282,7 @@ Available variables are:
* ``minorVersion``
* ``majorVersion``
* ``releaseStatus``

----

Previous: :doc:`selinux` | Next: :doc:`timers`
1 change: 1 addition & 0 deletions doc/sphinx-guides/source/developers/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,4 @@ Developer Guide
geospatial
selinux
big-data-support
timers
19 changes: 19 additions & 0 deletions doc/sphinx-guides/source/developers/timers.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
==========
EJB Timers
==========

As described in :doc:`../admin/timers`, Dataverse uses EJB timers for scheduled jobs. This section is about the
techniques used for scheduling.

* :doc:`../admin/metadataexport` is done via ``@Schedule`` annotation on ``OAISetServiceBean.exportAllSets()`` and
``DatasetServiceBean.exportAll()``. Fixed to 2AM local time every day, non persistent.
* Harvesting is a bit more complicated. The timer is attached to ``HarvesterServiceBean.harvestEnabled()`` via
``@Schedule`` annotation every hour at minute 50, non-persistent.
That method collects all enabled ``HarvestingClient`` and runs them.

.. contents:: |toctitle|
:local:

----

Previous: :doc:`big-data-support`

0 comments on commit 3e4a849

Please sign in to comment.