Package com.tailf.dp

Interface DpDbCallback

All Known Implementing Classes:
DBCallbackProxy

public interface DpDbCallback
This interface is used for the user database callbacks. It only applies to ConfD, not NCS

We may also optionally have a set of callback methods which span over several transactions.

If the system is configured in such a way so that the external database owns the candidate data store we must implement callback methods to do this. If ConfD owns the candidate the candidate callbacks can be skipped. Additionally, the lock() callback should be implemented (see more below).

If ConfD owns the candidate, and ConfD has been configured to support confirmed-commit, then three checkpointing methods must be implemented. When confirmed-commit is enabled, the user can commit the candidate with a timeout. Unless a confirming commit is given by the user before the timer expires, the system must rollback to the previous running configuration. This mechanism is controlled by the checkpoint callbacks. See further below.

An external database may also (optionally) support the lock/unlock and lockPartial/unlockPartial operations. This is only interesting if there exists additional locking mechanisms towards the database - such as an external CLI which can lock the database, or if the external database owns the candidate.

Finally, the external database may optionally validate a configuration. Configuration validation is preferably done through ConfD - however if a system already has implemented extensive configuration validation - the validate() callback can be used.

See Also: