01: package org.apache.maven.project.build.model;
02:
03: /*
04: * Licensed to the Apache Software Foundation (ASF) under one
05: * or more contributor license agreements. See the NOTICE file
06: * distributed with this work for additional information
07: * regarding copyright ownership. The ASF licenses this file
08: * to you under the Apache License, Version 2.0 (the
09: * "License"); you may not use this file except in compliance
10: * with the License. You may obtain a copy of the License at
11: *
12: * http://www.apache.org/licenses/LICENSE-2.0
13: *
14: * Unless required by applicable law or agreed to in writing,
15: * software distributed under the License is distributed on an
16: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17: * KIND, either express or implied. See the License for the
18: * specific language governing permissions and limitations
19: * under the License.
20: */
21:
22: import org.apache.maven.model.Model;
23:
24: import java.io.File;
25: import java.util.Iterator;
26: import java.util.List;
27:
28: /**
29: * Iterator that gives access to all information associated with each model in a ModelLineage.
30: * The result of the next() method is the Model instance itself, but you can also retrieve this
31: * Model instance using getModel() below.
32: *
33: * @author jdcasey
34: */
35: public interface ModelLineageIterator extends Iterator {
36:
37: /**
38: * Retrieve the Model instance associated with the current position in the ModelLineage.
39: * This is the same return value as the next() method.
40: */
41: Model getModel();
42:
43: /**
44: * Retrieve the POM File associated with the current position in the ModelLineage
45: */
46: File getPOMFile();
47:
48: /**
49: * Retrieve the remote ArtifactRepository instances associated with the current position
50: * in the ModelLineage.
51: */
52: List getArtifactRepositories();
53:
54: }
|