1 package org.apache.maven.repository.indexing;
4 * Copyright 2001-2005 The Apache Software Foundation.
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
10 * http://www.apache.org/licenses/LICENSE-2.0
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.
20 import org.apache.maven.artifact.repository.ArtifactRepository;
24 * @author Edwin Punzalan
26 public interface RepositoryIndexingFactory
28 String ROLE = RepositoryIndexingFactory.class.getName();
31 * Method to create an instance of the ArtifactRepositoryIndex
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
38 ArtifactRepositoryIndex createArtifactRepositoryIndex( String indexPath, ArtifactRepository repository )
39 throws RepositoryIndexException;
42 * Method to create an instance of the PomRepositoryIndex
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
49 PomRepositoryIndex createPomRepositoryIndex( String indexPath, ArtifactRepository repository )
50 throws RepositoryIndexException;
53 * Method to create instance of the MetadataRepositoryIndex
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
60 MetadataRepositoryIndex createMetadataRepositoryIndex( String indexPath, ArtifactRepository repository )
61 throws RepositoryIndexException;
64 * Method to create an instance of RepositoryIndexSearchLayer
66 * @param index the RepositoryIndex object where the query string will be searched
67 * @return the RepositoryIndexSearchLayer instance
69 RepositoryIndexSearchLayer createRepositoryIndexSearchLayer( RepositoryIndex index );
72 * Method to create an instance of DefaultRepositoryIndexSearcher
74 * @param index the RepositoryIndex object where the query string will be searched
75 * @return the DefaultRepositoryIndexSearcher instance
77 DefaultRepositoryIndexSearcher createDefaultRepositoryIndexSearcher( RepositoryIndex index );