]> source.dussan.org Git - archiva.git/blob
a1b3981cccf2ae10804ad4b10924e6489da689ac
[archiva.git] /
1 package org.apache.maven.repository.indexing;
2
3 /*
4  * Copyright 2001-2005 The Apache Software Foundation.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *      http://www.apache.org/licenses/LICENSE-2.0
11
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  */
19
20 import org.apache.maven.artifact.repository.ArtifactRepository;
21
22
23 /**
24  * @author Edwin Punzalan
25  */
26 public interface RepositoryIndexingFactory
27 {
28     String ROLE = RepositoryIndexingFactory.class.getName();
29
30     /**
31      * Method to create an instance of the ArtifactRepositoryIndex
32      *
33      * @param indexPath  the path where the index will be created/updated
34      * @param repository the repository where the indexed artifacts are located
35      * @return the ArtifactRepositoryIndex instance
36      * @throws RepositoryIndexException
37      */
38     ArtifactRepositoryIndex createArtifactRepositoryIndex( String indexPath, ArtifactRepository repository )
39         throws RepositoryIndexException;
40
41     /**
42      * Method to create an instance of the PomRepositoryIndex
43      *
44      * @param indexPath  the path where the index will be created/updated
45      * @param repository the repository where the indexed poms are located
46      * @return the PomRepositoryIndex instance
47      * @throws RepositoryIndexException
48      */
49     PomRepositoryIndex createPomRepositoryIndex( String indexPath, ArtifactRepository repository )
50         throws RepositoryIndexException;
51
52     /**
53      * Method to create instance of the MetadataRepositoryIndex
54      *
55      * @param indexPath  the path where the index will be created/updated
56      * @param repository the repository where the indexed metadata are located
57      * @return the MetadataRepositoryIndex instance
58      * @throws RepositoryIndexException
59      */
60     MetadataRepositoryIndex createMetadataRepositoryIndex( String indexPath, ArtifactRepository repository )
61         throws RepositoryIndexException;
62
63     /**
64      * Method to create an instance of RepositoryIndexSearchLayer
65      *
66      * @param index the RepositoryIndex object where the query string will be searched
67      * @return the RepositoryIndexSearchLayer instance
68      */
69     RepositoryIndexSearchLayer createRepositoryIndexSearchLayer( RepositoryIndex index );
70
71     /**
72      * Method to create an instance of DefaultRepositoryIndexSearcher
73      *
74      * @param index the RepositoryIndex object where the query string will be searched
75      * @return the DefaultRepositoryIndexSearcher instance
76      */
77     DefaultRepositoryIndexSearcher createDefaultRepositoryIndexSearcher( RepositoryIndex index );
78 }