Class AbstractTracker

    • Field Detail

      • logger

        protected final org.slf4j.Logger logger
      • client

        protected org.alfresco.solr.client.SOLRAPIClient client
      • coreName

        protected String coreName
      • state

        protected volatile org.alfresco.solr.TrackerState state
      • shardCount

        protected int shardCount
      • shardInstance

        protected int shardInstance
      • transformContent

        protected boolean transformContent
      • rollback

        protected volatile boolean rollback
      • trackerId

        protected final String trackerId
      • shardProperty

        protected Optional<org.alfresco.service.namespace.QName> shardProperty
        The property to use for determining the shard. Note that this property is not used by all trackers, it is actually managed by the ShardStatePublisher and MetadataTracker. We put this property here because otherwise we should introduce another supertype layer for those two trackers.
      • shardKey

        protected Optional<String> shardKey
        The string representation of the shard key. Note that this property is not used by all trackers, it is actually managed by the ShardStatePublisher and MetadataTracker. We put this property here because otherwise we should introduce another supertype layer for those two trackers.
    • Constructor Detail

      • AbstractTracker

        protected AbstractTracker​(Tracker.Type type)
        Default constructor, strictly for testing.
    • Method Detail

      • doTrack

        protected abstract void doTrack​(String iterationId)
                                 throws Throwable
        Subclasses must implement behaviour that completes the following steps, in order:
        1. Purge
        2. Reindex
        3. Index
        4. Track repository
        Parameters:
        iterationId - an identifier which is uniquely associated with a given iteration.
        Throws:
        Throwable
      • track

        public void track()
        Template method - subclasses must implement the Tracker-specific indexing by implementing the abstract method doTrack(String).
        Specified by:
        track in interface Tracker
      • getRollback

        public boolean getRollback()
        Specified by:
        getRollback in interface Tracker
      • setRollback

        public void setRollback​(boolean rollback)
        Specified by:
        setRollback in interface Tracker
      • getTrackerState

        public org.alfresco.solr.TrackerState getTrackerState()
        Specified by:
        getTrackerState in interface Tracker
      • setShutdown

        public void setShutdown​(boolean shutdown)
        Specified by:
        setShutdown in interface Tracker
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in interface Tracker
      • checkNode

        public org.alfresco.solr.NodeReport checkNode​(Long dbid)
        Returns information about the Node associated with the given dbid.
        Parameters:
        dbid - the node identifier.
        Returns:
        the Node associated with the given dbid.
      • getDocRouter

        public DocRouter getDocRouter()
        Returns the DocRouter instance in use on this node.
        Returns:
        the DocRouter instance in use on this node.