@Beta @NotThreadSafe public interface DataTreeCursor extends AutoCloseable
Modifier and Type | Method and Description |
---|---|
void |
close()
Close this cursor.
|
void |
enter(Iterable<TreeArgument<?>> path)
Move the cursor to the specified child of the current position.
|
void |
enter(TreeArgument<?>... path)
Move the cursor to the specified child of the current position.
|
void |
enter(TreeArgument<?> child)
Move the cursor to the specified child of the current position.
|
void |
exit()
Move the cursor up to the parent of current position.
|
void |
exit(int depth)
Move the cursor up by specified amounts of steps from the current position.
|
void enter(@Nonnull TreeArgument<?> child)
child
- Child identifierIllegalArgumentException
- when specified identifier does not identify a valid child,
or if that child is not an instance of TreeNode
.void enter(@Nonnull TreeArgument<?>... path)
enter(TreeArgument)
, except the operation is performed all
at once.path
- Nested child identifierIllegalArgumentException
- when specified path does not identify a valid child, or if
that child is not an instance of TreeNode
.void enter(@Nonnull Iterable<TreeArgument<?>> path)
enter(TreeArgument...)
, except it takes an Iterable
argument.path
- Nested child identifierIllegalArgumentException
- when specified path does not identify a valid child, or if
that child is not an instance of TreeNode
.void exit()
exit(1)
.IllegalStateException
- when exiting would violate containment, typically by attempting
to exit more levels than previously entered.void exit(int depth)
exit()
multiple times, except the operation is performed
atomically.depth
- number of steps to exitIllegalArgumentException
- when depth is negative.IllegalStateException
- when exiting would violate containment, typically by attempting
to exit more levels than previously entered.void close() throws Exception
close
in interface AutoCloseable
Exception
Copyright © 2019 OpenDaylight. All rights reserved.