Package org.apache.maven.api.spi
Interface ModelParser
- All Superinterfaces:
SpiService
The
ModelParser
interface is used to locate and read Model
s from the file system.
This allows plugging in additional syntaxes for the main model read by Maven when building a project.- Since:
- 4.0.0
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionLocates the pom in the given directory.locateAndParse
(Path dir, Map<String, ?> options) Locate and parse the model in the specified directory.Parse the model obtained previously by a previous call tolocate(Path)
.
-
Field Details
-
STRICT
Option that can be specified in the options map. The value should be a Boolean.- See Also:
-
-
Method Details
-
locate
Locates the pom in the given directory.- Parameters:
dir
- the directory to locate the pom for, nevernull
- Returns:
- a
Source
pointing to the located pom or an emptyOptional
if none was found by this parser
-
parse
@Nonnull Model parse(@Nonnull Source source, @Nullable Map<String, ?> options) throws ModelParserExceptionParse the model obtained previously by a previous call tolocate(Path)
.- Parameters:
source
- the source to parse, nevernull
options
- possible parsing options, may benull
- Returns:
- the parsed
Model
, nevernull
- Throws:
ModelParserException
- if the model cannot be parsed
-
locateAndParse
@Nonnull default Optional<Model> locateAndParse(@Nonnull Path dir, @Nullable Map<String, ?> options) throws ModelParserExceptionLocate and parse the model in the specified directory. This is equivalent tolocate(dir).map(s -> parse(s, options))
.- Parameters:
dir
- the directory to locate the pom for, nevernull
options
- possible parsing options, may benull
- Returns:
- an optional parsed
Model
ornull
if none could be found - Throws:
ModelParserException
- if the located model cannot be parsed
-