This project has retired. For details please refer to its Attic page.
TriggerBeginScanClosure xref
View Javadoc
1   package org.apache.archiva.repository.scanner.functors;
2   
3   /*
4    * Licensed to the Apache Software Foundation (ASF) under one
5    * or more contributor license agreements.  See the NOTICE file
6    * distributed with this work for additional information
7    * regarding copyright ownership.  The ASF licenses this file
8    * to you under the Apache License, Version 2.0 (the
9    * "License"); you may not use this file except in compliance
10   * with the License.  You may obtain a copy of the License at
11   *
12   *  http://www.apache.org/licenses/LICENSE-2.0
13   *
14   * Unless required by applicable law or agreed to in writing,
15   * software distributed under the License is distributed on an
16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17   * KIND, either express or implied.  See the License for the
18   * specific language governing permissions and limitations
19   * under the License.
20   */
21  
22  import org.apache.archiva.consumers.ConsumerException;
23  import org.apache.archiva.consumers.RepositoryContentConsumer;
24  import org.apache.archiva.repository.ManagedRepository;
25  import org.apache.commons.collections4.Closure;
26  import org.slf4j.Logger;
27  import org.slf4j.LoggerFactory;
28  
29  import java.util.Date;
30  
31  /**
32   * TriggerBeginScanClosure
33   */
34  public class TriggerBeginScanClosure
35      implements Closure<RepositoryContentConsumer>
36  {
37      private Logger log = LoggerFactory.getLogger( TriggerBeginScanClosure.class );
38  
39      private ManagedRepository repository;
40  
41      private Date whenGathered;
42  
43      private boolean executeOnEntireRepo = true;
44  
45      public TriggerBeginScanClosure( ManagedRepository repository )
46      {
47          this.repository = repository;
48      }
49  
50      public TriggerBeginScanClosure( ManagedRepository repository, Date whenGathered )
51      {
52          this( repository );
53          this.whenGathered = whenGathered;
54      }
55  
56      public TriggerBeginScanClosure( ManagedRepository repository, Date whenGathered, boolean executeOnEntireRepo )
57      {
58          this( repository, whenGathered );
59          this.executeOnEntireRepo = executeOnEntireRepo;
60      }
61  
62      @Override
63      public void execute( RepositoryContentConsumer input )
64      {
65          RepositoryContentConsumer/apache/archiva/consumers/RepositoryContentConsumer.html#RepositoryContentConsumer">RepositoryContentConsumer consumer = (RepositoryContentConsumer) input;
66  
67          try
68          {
69              consumer.beginScan( repository, whenGathered, executeOnEntireRepo );
70          }
71          catch ( ConsumerException e )
72          {
73              log.warn( "Consumer [{}] cannot begin: {}", consumer.getId( ), e.getMessage( ), e );
74          }
75      }
76  }