blob: a37da203c2b7694462b55e4b8688f56c3def7d29 [file] [log] [blame]
package org.apache.continuum.repository;
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
import java.util.List;
import org.apache.continuum.model.repository.LocalRepository;
/**
* @author Maria Catherine Tan
* @version $Id$
* @since 25 jul 07
*/
public interface RepositoryService
{
String ROLE = RepositoryService.class.getName();
// ------------------------------------------------------
// LocalRepository
// ------------------------------------------------------
/**
* Add the local repository
*
* @param repository the local repository to add
* @return LocalRepository the local repository
* @throws RepositoryServiceException
*/
LocalRepository addLocalRepository( LocalRepository repository )
throws RepositoryServiceException;
/**
* Update the local repository
*
* @param repository the local repository to update
* @throws RepositoryServiceException
*/
void updateLocalRepository( LocalRepository repository )
throws RepositoryServiceException;
/**
* Remove the local repository
*
* @param repositoryId the id of the local repository to remove
* @throws RepositoryServiceException
*/
void removeLocalRepository( int repositoryId )
throws RepositoryServiceException;
/**
* Retrieve all local repositories
*
* @return list of all local repositories
*/
List<LocalRepository> getAllLocalRepositories();
/**
* Retrieve local repository
*
* @param location the system file path of the repository
* @return LocalRepository the local repository
* @throws RepositoryServiceException
*/
LocalRepository getLocalRepositoryByLocation( String location )
throws RepositoryServiceException;
/**
* Retrieve list of local repositories with the specified layout
* @param layout the layout of the repository. "default" or "legacy"
* @return List of local repositories
* @throws RepositoryServiceException
*/
List<LocalRepository> getLocalRepositoriesByLayout( String layout );
/**
* Retrieve local repository
*
* @param repositoryId the id of the local repository
* @return LocalRepository the local repository
* @throws RepositoryServiceException
*/
LocalRepository getLocalRepository( int repositoryId )
throws RepositoryServiceException;
}