knguyen     2005/05/23 11:11:36 CEST

  Modified files:        (Branch: JAHIA-4-1-BRANCH)
    src/java/org/jahia/services/search IndexationJobDetail.java 
                                       JahiaSearchBaseService.java 
                                       ScheduledIndexationJob.java 
  Log:
  - optimization : use sleep in place of repeatable trigger for file ind. job
  
  Revision       Changes    Path
  1.1.2.3        +11 -1     
jahia/src/java/org/jahia/services/search/IndexationJobDetail.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/src/java/org/jahia/services/search/IndexationJobDetail.java.diff?r1=1.1.2.2&r2=1.1.2.3&f=h
  1.42.2.15.2.8  +2 -3      
jahia/src/java/org/jahia/services/search/JahiaSearchBaseService.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/src/java/org/jahia/services/search/JahiaSearchBaseService.java.diff?r1=1.42.2.15.2.7&r2=1.42.2.15.2.8&f=h
  1.1.2.3        +16 -8     
jahia/src/java/org/jahia/services/search/ScheduledIndexationJob.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/src/java/org/jahia/services/search/ScheduledIndexationJob.java.diff?r1=1.1.2.2&r2=1.1.2.3&f=h
  
  
  
  Index: IndexationJobDetail.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/src/java/org/jahia/services/search/Attic/IndexationJobDetail.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- IndexationJobDetail.java  27 Apr 2005 13:41:11 -0000      1.1.2.2
  +++ IndexationJobDetail.java  23 May 2005 09:11:35 -0000      1.1.2.3
  @@ -15,6 +15,8 @@
   
       private Vector documents = new Vector();
   
  +    private long sleepInterval = 5000;
  +
       public IndexationJobDetail() {
           super();
       }
  @@ -47,5 +49,13 @@
           }
           return v;
       }
  -    
  +
  +    public long getSleepInterval() {
  +        return sleepInterval;
  +    }
  +
  +    public void setSleepInterval(long sleepInterval) {
  +        this.sleepInterval = sleepInterval;
  +    }
  +
   }
  
  
  
  Index: JahiaSearchBaseService.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/src/java/org/jahia/services/search/Attic/JahiaSearchBaseService.java,v
  retrieving revision 1.42.2.15.2.7
  retrieving revision 1.42.2.15.2.8
  diff -u -r1.42.2.15.2.7 -r1.42.2.15.2.8
  --- JahiaSearchBaseService.java       20 May 2005 13:31:29 -0000      
1.42.2.15.2.7
  +++ JahiaSearchBaseService.java       23 May 2005 09:11:35 -0000      
1.42.2.15.2.8
  @@ -245,11 +245,10 @@
                                     ScheduledIndexationJob.class);
           JobDataMap jobDataMap = new JobDataMap();
           this.scheduledIndexationJob.setJobDataMap(jobDataMap);
  +        
this.scheduledIndexationJob.setSleepInterval(this.scheduledIndexationInterval);
   
           SimpleTrigger trigger = new SimpleTrigger("scheduledIndexation" + 
"_Trigger",
  -                                    Scheduler.DEFAULT_GROUP,
  -                                    SimpleTrigger.REPEAT_INDEFINITELY,
  -                                    this.scheduledIndexationInterval);
  +                                    Scheduler.DEFAULT_GROUP);
   
           try {
               
ServicesRegistry.getInstance().getSchedulerService().unscheduleJob(trigger.getName(),
  
  
  
  Index: ScheduledIndexationJob.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/src/java/org/jahia/services/search/Attic/ScheduledIndexationJob.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- ScheduledIndexationJob.java       27 Apr 2005 13:41:11 -0000      1.1.2.2
  +++ ScheduledIndexationJob.java       23 May 2005 09:11:35 -0000      1.1.2.3
  @@ -27,14 +27,22 @@
       public void execute (JobExecutionContext context)
           throws JobExecutionException {
   
  -        Vector v = 
((IndexationJobDetail)context.getJobDetail()).getAllDocuments();
  -        JahiaIndexableDocument doc = null;
  -        for ( int i=0; i<v.size(); i++ ){
  -            doc = (JahiaIndexableDocument)v.get(i);
  -            doc.doScheduledLoad();
  -            // put it back in the search indexation queue
  -            ServicesRegistry.getInstance().getJahiaSearchService()
  -                    .addScheduledDocumentToSearchEngine(doc);
  +        IndexationJobDetail job = 
(IndexationJobDetail)context.getJobDetail();
  +        while ( true ) {
  +            Vector v = job.getAllDocuments();
  +            JahiaIndexableDocument doc = null;
  +            for ( int i=0; i<v.size(); i++ ){
  +                doc = (JahiaIndexableDocument)v.get(i);
  +                doc.doScheduledLoad();
  +                // put it back in the search indexation queue
  +                ServicesRegistry.getInstance().getJahiaSearchService()
  +                        .addScheduledDocumentToSearchEngine(doc);
  +            }
  +            try {
  +                Thread.sleep(job.getSleepInterval());
  +            } catch ( InterruptedException ie ){
  +                logger.debug("Exception occurred in job pause ", ie);
  +            }
           }
       }
   
  

Reply via email to