1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing,
13 * software distributed under the License is distributed on an
14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 * KIND, either express or implied. See the License for the
16 * specific language governing permissions and limitations
17 * under the License.
18 */
19 package org.eclipse.aether.util.artifact;
20
21 /**
22 * The dependency scopes that Resolver supports out of the box. The full set of scopes should be defined by
23 * consumer project.
24 * <p>
25 * By definition, scopes for Resolver are just labels, checked for equality. Resolver will not interpret, alter or
26 * modify any scope "label" that is not present in this class. It is left to consumer projects to define and
27 * interpret those.
28 *
29 * @see org.eclipse.aether.graph.Dependency#getScope()
30 * @since 2.0.0
31 */
32 public final class DependencyScopes {
33
34 /**
35 * Special scope that tells resolver that dependency is not to be found in any regular repository, so it should not
36 * even try to resolve the artifact from them. Dependency in this scope does not have artifact descriptor either.
37 * Artifacts in this scope should have the "local path" property set, pointing to a file on local system, where the
38 * backing file should reside. Resolution of artifacts in this scope fails, if backing file does not exist
39 * (no property set, or property contains invalid path, or the path points to a non-existent file).
40 *
41 * @see org.eclipse.aether.artifact.ArtifactProperties#LOCAL_PATH
42 */
43 public static final String SYSTEM = "system";
44
45 private DependencyScopes() {
46 // hide constructor
47 }
48 }