Class AclTracker

    • Field Detail

      • log

        protected static final org.slf4j.Logger log
    • Constructor Detail

      • AclTracker

        public AclTracker​(java.util.Properties p,
                          org.alfresco.solr.client.SOLRAPIClient client,
                          java.lang.String coreName,
                          InformationServer informationServer)
    • Method Detail

      • doTrack

        protected void doTrack​(java.lang.String iterationId)
                        throws java.lang.Throwable
        Description copied from class: AbstractTracker
        Subclasses must implement behaviour that completes the following steps, in order:
        1. Purge
        2. Reindex
        3. Index
        4. Track repository
        Specified by:
        doTrack in class AbstractTracker
        Parameters:
        iterationId - an identifier which is uniquely associated with a given iteration.
        Throws:
        java.lang.Throwable
      • maintenance

        public void maintenance()
                         throws java.lang.Exception
        Throws:
        java.lang.Exception
      • hasMaintenance

        public boolean hasMaintenance()
      • indexAclChangeSets

        protected void indexAclChangeSets()
                                   throws org.alfresco.httpclient.AuthenticationException,
                                          java.io.IOException,
                                          org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException
      • indexAcls

        protected void indexAcls()
                          throws org.alfresco.httpclient.AuthenticationException,
                                 java.io.IOException,
                                 org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException
      • reindexAclChangeSets

        protected void reindexAclChangeSets()
                                     throws org.alfresco.httpclient.AuthenticationException,
                                            java.io.IOException,
                                            org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException
      • reindexAcls

        protected void reindexAcls()
                            throws org.alfresco.httpclient.AuthenticationException,
                                   java.io.IOException,
                                   org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException
      • purgeAclChangeSets

        protected void purgeAclChangeSets()
                                   throws org.alfresco.httpclient.AuthenticationException,
                                          java.io.IOException,
                                          org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException
      • purgeAcls

        protected void purgeAcls()
                          throws org.alfresco.httpclient.AuthenticationException,
                                 java.io.IOException,
                                 org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException
      • addAclChangeSetToReindex

        public void addAclChangeSetToReindex​(java.lang.Long aclChangeSetToReindex)
      • addAclChangeSetToIndex

        public void addAclChangeSetToIndex​(java.lang.Long aclChangeSetToIndex)
      • addAclChangeSetToPurge

        public void addAclChangeSetToPurge​(java.lang.Long aclChangeSetToPurge)
      • addAclToReindex

        public void addAclToReindex​(java.lang.Long aclToReindex)
      • addAclToIndex

        public void addAclToIndex​(java.lang.Long aclToIndex)
      • addAclToPurge

        public void addAclToPurge​(java.lang.Long aclToPurge)
      • trackRepository

        protected void trackRepository()
                                throws java.io.IOException,
                                       org.alfresco.httpclient.AuthenticationException,
                                       org.json.JSONException
        Throws:
        java.io.IOException
        org.alfresco.httpclient.AuthenticationException
        org.json.JSONException
      • getChangeSetFromCommitTime

        protected java.lang.Long getChangeSetFromCommitTime​(org.alfresco.solr.BoundedDeque<org.alfresco.solr.client.AclChangeSet> changeSetsFound,
                                                            long lastGoodChangeSetCommitTimeInIndex)
        Parameters:
        changeSetsFound - BoundedDeque
        lastGoodChangeSetCommitTimeInIndex - long
        Returns:
        Long
      • getSomeAclChangeSets

        protected org.alfresco.solr.client.AclChangeSets getSomeAclChangeSets​(org.alfresco.solr.BoundedDeque<org.alfresco.solr.client.AclChangeSet> changeSetsFound,
                                                                              java.lang.Long fromCommitTime,
                                                                              long timeStep,
                                                                              int maxResults,
                                                                              long endTime)
                                                                       throws org.alfresco.httpclient.AuthenticationException,
                                                                              java.io.IOException,
                                                                              org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException
      • indexAcl

        protected void indexAcl​(java.util.List<org.alfresco.solr.client.AclReaders> aclReaderList,
                                boolean overwrite)
                         throws java.io.IOException
        Parameters:
        aclReaderList - List
        overwrite - boolean
        Throws:
        java.io.IOException
      • checkIndex

        public org.alfresco.solr.tracker.IndexHealthReport checkIndex​(java.lang.Long toTx,
                                                                      java.lang.Long toAclTx,
                                                                      java.lang.Long fromTime,
                                                                      java.lang.Long toTime)
                                                               throws org.alfresco.httpclient.AuthenticationException,
                                                                      java.io.IOException,
                                                                      org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException
      • getFullNodesForDbTransaction

        public java.util.List<org.alfresco.solr.client.Node> getFullNodesForDbTransaction​(java.lang.Long txid)
      • getAclsForDbAclTransaction

        public java.util.List<java.lang.Long> getAclsForDbAclTransaction​(java.lang.Long acltxid)
        Parameters:
        acltxid - Long
        Returns:
        List
      • checkAcl

        public org.alfresco.solr.AclReport checkAcl​(java.lang.Long aclid)
      • trackAclChangeSets

        protected void trackAclChangeSets()
                                   throws org.alfresco.httpclient.AuthenticationException,
                                          java.io.IOException,
                                          org.json.JSONException
        Throws:
        org.alfresco.httpclient.AuthenticationException
        java.io.IOException
        org.json.JSONException