See: Description
Class | Description |
---|---|
ChangelogStat |
Tool that may be used to debug a replication changelog.
|
ChangeNumberIndexer |
Thread responsible for inserting replicated updates into the ChangeNumber Index DB (CNIndexDB for short).
|
DomainDBCursor |
Cursor iterating over a replication domain's replica DBs.
|
ECLMultiDomainDBCursor |
Multi domain DB cursor that only returns updates for the domains which have been enabled for the external changelog.
|
EmptyCursor<T> |
No operation (empty) cursor.
|
FileChangelogDB |
Log file implementation of the ChangelogDB interface.
|
MultiDomainDBCursor |
Cursor iterating over all the replication domains known to the changelog DB.
|
ReplicationEnvironment |
Represents the replication environment, which allows to manage the lifecycle of the replication changelog.
|
Here is a class diagram of the whole hierarchy of cursors from the changelog DB (using plantuml notation):
@startuml
package "High-level cursors:\nreturn LDAPUpdateMsg\n and ReplicataOfflineMsg" {
interface DBCursor
DBCursor <|-- CompositeDBCursor
CompositeDBCursor <|-- DomainDBCursor
CompositeDBCursor <|-- MultiDomainDBCursor
DBCursor <|-- ECLMultiDomainDBCursor
DBCursor <|-- FileReplicaDBCursor
class ECLMultiDomainDBCursor
note left : only returns update messages for domains\nwhich have been enabled for the external changelog
ECLMultiDomainDBCursor -> MultiDomainDBCursor
class MultiDomainDBCursor
note bottom : cross-domains cursor]\n(multiple domains)
MultiDomainDBCursor -> "+" DomainDBCursor
class DomainDBCursor
note bottom : cursor on a single domain\n(multiple replicas)
DomainDBCursor -> "+" FileReplicaDBCursor
class FileReplicaDBCursor
note bottom : cursor on a single replica DB\n(excluding replica offline messages\n- only update messages)
}
package "Low-level cursors:\nreturn LDAPUpdateMsg" {
interface RepositionableCursor
DBCursor <|-- RepositionableCursor
RepositionableCursor <|-- LogFileCursor
RepositionableCursor <|-- LogCursor
RepositionableCursor <|-- EmptyCursor
LogCursor <|-- InternalLogCursor
LogCursor <|-- AbortableLogCursor
LogCursor <|-- AbortedLogCursor
FileReplicaDBCursor -> AbortableLogCursor
class AbortableLogCursor
note bottom : delegates to an InternalLogCursor,\nthen to an AbortedLogCursor when aborted
AbortableLogCursor -> InternalLogCursor
AbortableLogCursor -> AbortedLogCursor
class InternalLogCursor
note bottom : cursors through log files\nthat comprise a Log
InternalLogCursor -> LogFileCursor
InternalLogCursor -> LogFile
class LogFileCursor
note bottom : cursors through a single log file
LogFileCursor -> LogFile
LogFileCursor -> BlockLogReader
}
@enduml
Copyright 2010-2022 ForgeRock AS.