001 package org.apache.maven.repository.internal;
002
003 /*
004 * Licensed to the Apache Software Foundation (ASF) under one
005 * or more contributor license agreements. See the NOTICE file
006 * distributed with this work for additional information
007 * regarding copyright ownership. The ASF licenses this file
008 * to you under the Apache License, Version 2.0 (the
009 * "License"); you may not use this file except in compliance
010 * with the License. You may obtain a copy of the License at
011 *
012 * http://www.apache.org/licenses/LICENSE-2.0
013 *
014 * Unless required by applicable law or agreed to in writing,
015 * software distributed under the License is distributed on an
016 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
017 * KIND, either express or implied. See the License for the
018 * specific language governing permissions and limitations
019 * under the License.
020 */
021
022 import org.sonatype.aether.impl.ArtifactDescriptorReader;
023 import org.sonatype.aether.impl.internal.DefaultServiceLocator;
024 import org.sonatype.aether.impl.MetadataGeneratorFactory;
025 import org.sonatype.aether.impl.VersionRangeResolver;
026 import org.sonatype.aether.impl.VersionResolver;
027
028 /**
029 * A simple service locator that is already setup with all components from this library. To acquire a complete
030 * repository system, clients need to add some repository connectors for remote transfers. <em>Note:</em> This component
031 * is meant to assist those clients that employ the repository systems outside of an IoC container, Maven plugins
032 * should instead always use regular dependency injection to acquire the repository system.
033 *
034 * @author Benjamin Bentmann
035 */
036 public class MavenServiceLocator
037 extends DefaultServiceLocator
038 {
039
040 /**
041 * Creates a new service locator that already knows about all service implementations included in this library.
042 */
043 public MavenServiceLocator()
044 {
045 addService( ArtifactDescriptorReader.class, DefaultArtifactDescriptorReader.class );
046 addService( VersionResolver.class, DefaultVersionResolver.class );
047 addService( VersionRangeResolver.class, DefaultVersionRangeResolver.class );
048 addService( MetadataGeneratorFactory.class, SnapshotMetadataGeneratorFactory.class );
049 addService( MetadataGeneratorFactory.class, VersionsMetadataGeneratorFactory.class );
050 }
051
052 }