Class DependencyGraphParser
java.lang.Object
org.eclipse.aether.internal.test.util.DependencyGraphParser
Creates a dependency graph from a text description. 
Definition
Each (non-empty) line in the input defines one node of the resulting graph:
 line      ::= (indent? ("(null)" | node | reference))? comment?
 comment   ::= "#" rest-of-line
 indent    ::= "|  "*  ("+" | "\\") "- "
 reference ::= "^" id
 node      ::= coords (range)? space (scope("<" premanagedScope)?)? space "optional"? space
                  ("relocations=" coords ("," coords)*)? ("(" id ")")?
 coords    ::= groupId ":" artifactId (":" extension (":" classifier)?)? ":" version
 
 The special token (null) may be used to indicate an "empty" root node with no dependency.
 
 If indent is empty, the line defines the root node. Only one root node may be defined. The level is
 calculated by the distance from the beginning of the line. One level is three characters of indentation.
 
 The ^id syntax allows to reuse a previously built node to share common sub graphs among different parent
 nodes.
 
Example
gid:aid:ver +- gid:aid2:ver scope | \- gid:aid3:ver (id1) # assign id for reference below +- gid:aid4:ext:ver scope \- ^id1 # reuse previous node
Multiple definitions in one resource
 By using parseMultiResource(String), definitions divided by a line beginning with "---" can be read from the
 same resource. The rest of the line is ignored.
 
Substitutions
 You may define substitutions (see setSubstitutions(String...),
 DependencyGraphParser(String, Collection)). Every '%s' in the definition will be substituted by the next
 String in the defined substitutions.
 
Example
parser.setSubstitutions( "foo", "bar" ); String def = "gid:%s:ext:ver\n" + "+- gid:%s:ext:ver";The first node will have "foo" as its artifact id, the second node (child to the first) will have "bar" as its artifact id.
- 
Constructor SummaryConstructorsConstructorDescriptionCreate a parser with an empty prefix.DependencyGraphParser(String prefix) Create a parser with the given prefix.DependencyGraphParser(String prefix, Collection<String> substitutions) Create a parser with the given prefix and the given substitution strings.
- 
Method SummaryModifier and TypeMethodDescriptiondump(org.eclipse.aether.graph.DependencyNode root) org.eclipse.aether.graph.DependencyNodeParse the graph definition read from the given URL.org.eclipse.aether.graph.DependencyNodeparseLiteral(String dependencyGraph) Parse the given graph definition.List<org.eclipse.aether.graph.DependencyNode> parseMultiResource(String resource) Parse multiple graphs in one resource, divided by "---".org.eclipse.aether.graph.DependencyNodeparseResource(String resource) Parse the graph definition read from the given classpath resource.voidsetSubstitutions(String... substitutions) voidsetSubstitutions(Collection<String> substitutions) 
- 
Constructor Details- 
DependencyGraphParserCreate a parser with the given prefix and the given substitution strings.- See Also:
 
- 
DependencyGraphParserCreate a parser with the given prefix.- See Also:
 
- 
DependencyGraphParserpublic DependencyGraphParser()Create a parser with an empty prefix.
 
- 
- 
Method Details- 
parseLiteralpublic org.eclipse.aether.graph.DependencyNode parseLiteral(String dependencyGraph) throws IOException Parse the given graph definition.- Throws:
- IOException
 
- 
parseResourceParse the graph definition read from the given classpath resource. If a prefix is set, this method will load the resource from 'prefix + resource'.- Throws:
- IOException
 
- 
parseMultiResourcepublic List<org.eclipse.aether.graph.DependencyNode> parseMultiResource(String resource) throws IOException Parse multiple graphs in one resource, divided by "---".- Throws:
- IOException
 
- 
parseParse the graph definition read from the given URL.- Throws:
- IOException
 
- 
dump
- 
getSubstitutions
- 
setSubstitutions
- 
setSubstitutions
 
-