Package uk.ac.manchester.spinnaker.alloc
Class SpallocProperties
java.lang.Object
uk.ac.manchester.spinnaker.alloc.SpallocProperties
@ConfigurationProperties("spalloc") @ConstructorBinding @Validated public class SpallocProperties extends Object
Spalloc service management properties. These are all intended to be set via
the configuration file.
- Author:
- Donal Fellows
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SpallocProperties.AllocatorProperties
Configuration of the main resource allocation engine.static class
SpallocProperties.AuthProperties
Authentication and authorization configuration.static class
SpallocProperties.CompatibilityProperties
Settings relating to the v1 spalloc configuration interface.static class
SpallocProperties.DataSourceProperties
The properties of aDataSource
, describing how to make a database connection.static class
SpallocProperties.DBProperties
Additional database configuration.static class
SpallocProperties.HistoricalDataProperties
How to handle job data that is now only of historic interest.static class
SpallocProperties.KeepaliveProperties
How to handle keepalive messages.static class
SpallocProperties.OpenIDProperties
OpenID-related security properties.static class
SpallocProperties.PriorityScale
Priority is the rate at which importance is accrued.static class
SpallocProperties.ProxyProperties
Settings for the proxies.static class
SpallocProperties.QuotaProperties
Quota management.static class
SpallocProperties.ReportProperties
Notify an administrator about problems reported with boards.static class
SpallocProperties.StateControlProperties
Settings for control of the administrative state of a machine.static class
SpallocProperties.TxrxProperties
Controls how Spalloc talks to BMPs on machines. -
Constructor Summary
Constructors Constructor Description SpallocProperties(File databasePath, Duration wait, boolean pause, File workingDirectory, SpallocProperties.AllocatorProperties allocator, SpallocProperties.AuthProperties auth, SpallocProperties.CompatibilityProperties compat, SpallocProperties.HistoricalDataProperties historicalData, SpallocProperties.KeepaliveProperties keepalive, SpallocProperties.ProxyProperties proxy, SpallocProperties.QuotaProperties quota, SpallocProperties.DBProperties sqlite, SpallocProperties.ReportProperties reportEmail, SpallocProperties.TxrxProperties transceiver, SpallocProperties.StateControlProperties stateControl, SpallocProperties.DataSourceProperties datasource)
-
Method Summary
-
Constructor Details
-
SpallocProperties
public SpallocProperties(@DefaultValue("spalloc.sqlite3") File databasePath, @DefaultValue("30s") Duration wait, @DefaultValue("false") boolean pause, @DefaultValue(".") File workingDirectory, @DefaultValue SpallocProperties.AllocatorProperties allocator, @DefaultValue SpallocProperties.AuthProperties auth, @DefaultValue SpallocProperties.CompatibilityProperties compat, @DefaultValue SpallocProperties.HistoricalDataProperties historicalData, @DefaultValue SpallocProperties.KeepaliveProperties keepalive, @DefaultValue SpallocProperties.ProxyProperties proxy, @DefaultValue SpallocProperties.QuotaProperties quota, @DefaultValue SpallocProperties.DBProperties sqlite, @DefaultValue SpallocProperties.ReportProperties reportEmail, @DefaultValue SpallocProperties.TxrxProperties transceiver, @DefaultValue SpallocProperties.StateControlProperties stateControl, @DefaultValue SpallocProperties.DataSourceProperties datasource)- Parameters:
databasePath
- Path to the main database file.wait
- How long should long calls take before returning anyway?pause
- Whether to pause all periodic callbacks. Probably only useful for debugging and testing.workingDirectory
- The main working directory. Referred to by other properties.allocator
- Properties relating to the allocation engine.auth
- Properties relating to authentication and authorization.compat
- Properties relating to the Spalloc v1 compatibility layer.historicalData
- Properties relating to historical data management.keepalive
- Properties relating to job keep-alive messages.proxy
- Properties relating to the SDP proxying.quota
- Properties relating to quota management.sqlite
- Properties relating to the details of working with SQLite.reportEmail
- Properties relating to board issue reporting.transceiver
- Properties relating to low-level transceiver control and the BMPs.stateControl
- Properties relating to control of the overall machine state.datasource
- The database connection configuration.
-
-
Method Details
-
getDatabasePath
Path to the main database file.- Returns:
- Path.
-
getWait
How long should long calls take before returning anyway?- Returns:
- Wait time.
-
isPause
public boolean isPause()Whether to pause all periodic callbacks. Probably only useful for debugging.- Returns:
- Whether to pause periodic callbacks. Note that this property is runtime-settable via the global administration interface, which should be the only place that reads from here directly.
-
getWorkingDirectory
The main working directory. Referred to by other properties.- Returns:
- Main working directory.
-
getHistoricalData
@NotNull @Valid public @NotNull @Valid SpallocProperties.HistoricalDataProperties getHistoricalData()- Returns:
- Properties relating to historical data management.
-
getKeepalive
- Returns:
- Properties relating to job keep-alive messages.
-
getAllocator
- Returns:
- Properties relating to the allocation engine.
-
getAuth
- Returns:
- Properties relating to authentication and authorization.
-
getProxy
- Returns:
- Properties relating to the SDP proxying.
-
getQuota
- Returns:
- Properties relating to quota management.
-
getTransceiver
- Returns:
- Properties relating to low-level transceiver control and the BMPs.
-
getSqlite
- Returns:
- Properties relating to the details of working with SQLite.
-
getReportEmail
- Returns:
- Properties relating to board issue reporting.
-
getCompat
- Returns:
- Properties relating to the Spalloc v1 compatibility layer.
-
getStateControl
- Returns:
- Properties relating to control of the overall machine state.
-
getDatasource
- Returns:
- The database connection configuration.
-