The methods will be called as specific parts in the object graph are reached. The visits follow a depth-first approach.
All methods accept a GraphWalkerContext.VisitController. Use it to control the traversal.
- Author:
- Peter Lamby
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidbeforeObject(@Nullable Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when any value is encountered.default voidleaveArray(@Nullable Object[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called after all members in an array have beenvisited.default voidleaveClass(Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when visiting of a class has finished.default voidleaveIterable(Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.default voidNot yet implemented.default voidNot yet implemented.default voidvisitArray(@Nullable Object[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when an non primitive array is encountered.default voidvisitArrayMember(@Nullable Object value, int idx, @Nullable Object[] array, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called for every entry in an non primitive array.default voidvisitBooleanArray(boolean[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when aboolean[]is encountered.default voidvisitByteArray(byte[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when abyte[]is encountered.default voidvisitCharArray(char[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when achar[]is encountered.default voidvisitClass(Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when visiting "normal" class.default voidvisitClassField(Object value, Field field, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when visiting a field in a class.default voidvisitDoubleArray(double[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when adouble[]is encountered.default voidNot yet implemented.default voidvisitFloatArray(float[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when afloat[]is encountered.default voidvisitIntArray(int[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when anint[]is encountered.default voidvisitIterableMember(Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.default voidNot yet implemented.default voidvisitListMember(Object value, int idx, List<?> list, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.default voidvisitLongArray(long[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when along[]is encountered.default voidNot yet implemented.default voidvisitMapEntry(Object key, Object value, Map<?, ?> map, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.default voidvisitNonListIterable(Iterable<?> value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.default voidvisitNull(de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when anullvalue is encountered.default voidvisitShortArray(short[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when ashort[]is encountered.default voidvisitSuperClass(Object value, Class<?> superType, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when visiting the parent of a class.
-
Method Details
-
visitByteArray
default void visitByteArray(byte[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when abyte[]is encountered.- Parameters:
value- the byte array.control- the control.
-
visitShortArray
default void visitShortArray(short[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when ashort[]is encountered.- Parameters:
value- the short array.control- the control.
-
visitIntArray
default void visitIntArray(int[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when anint[]is encountered.- Parameters:
value- the int array.control- the control.
-
visitLongArray
default void visitLongArray(long[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when along[]is encountered.- Parameters:
value- the long array.control- the control.
-
visitFloatArray
default void visitFloatArray(float[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when afloat[]is encountered.- Parameters:
value- the float array.control- the control.
-
visitDoubleArray
default void visitDoubleArray(double[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when adouble[]is encountered.- Parameters:
value- the double array.control- the control.
-
visitBooleanArray
default void visitBooleanArray(boolean[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when aboolean[]is encountered.- Parameters:
value- the boolean array.control- the control.
-
visitCharArray
default void visitCharArray(char[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when achar[]is encountered.- Parameters:
value- the char array.control- the control.
-
visitNull
default void visitNull(de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when anullvalue is encountered.- Parameters:
control- the control.
-
beforeObject
default void beforeObject(@Nullable Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when any value is encountered.This means this method is called once before most of the specific visit methods here are called.
It is not called before the leave.. and following methods:
- Parameters:
value- the value.control- the control.
-
visitEnum
default void visitEnum(Enum<?> value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.control- the control.
-
visitClass
default void visitClass(Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when visiting "normal" class.Called when the
valueis not already handled bye- The primitive array methods
visitArray(Object[], VisitController)visitNull(VisitController)
- Parameters:
value- the value.control- the control.
-
visitClassField
default void visitClassField(Object value, Field field, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when visiting a field in a class.Note that
valueis not the value of the field. It is the instance which containsfield.This is called directly after
visitClass(Object, VisitController). Only the members that are declared in the specific class will be visited.If there are parent classes
visitSuperClass(Object, Class, VisitController)will be called for each parent and this method will be called after each step in the class hierarchy.The following fields (and their values) will be ignored and not visited:
- primitives like
intorchar - static fields
- fields that are not accessible and can't be made acessible
- Parameters:
value- the instance to whichfieldbelongs.field- The field insidevalue.control- the control.- See Also:
- primitives like
-
visitSuperClass
default void visitSuperClass(Object value, Class<?> superType, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when visiting the parent of a class.Called after all
fieldshave been already visited.- Parameters:
value- the value.superType- the current type in the class hierarchy.control- the control.
-
leaveClass
default void leaveClass(Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when visiting of a class has finished.This means
visitClass(Object, VisitController)visitClassField(Object, Field, VisitController)andvisitSuperClass(Object, Class, VisitController)have already handled all values.- Parameters:
value- the value.control- the control.
-
visitArray
default void visitArray(@Nullable Object[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called when an non primitive array is encountered.- Parameters:
value- the array.control- the control.
-
visitArrayMember
default void visitArrayMember(@Nullable Object value, int idx, @Nullable Object[] array, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called for every entry in an non primitive array.- Parameters:
value- the value.idx- the index ofvalueinarray.array- the entire array.control- the control.
-
leaveArray
default void leaveArray(@Nullable Object[] value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Called after all members in an array have beenvisited.- Parameters:
value- the array.control- the control.
-
visitNonListIterable
default void visitNonListIterable(Iterable<?> value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.control- the control.
-
visitIterableMember
default void visitIterableMember(Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.control- the control.
-
leaveIterable
default void leaveIterable(Object value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.control- the control.
-
visitList
default void visitList(List<?> value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.control- the control.
-
visitListMember
default void visitListMember(Object value, int idx, List<?> list, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.idx- todolist- todocontrol- the control.
-
leaveList
default void leaveList(List<?> value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.control- the control.
-
visitMap
default void visitMap(Map<?, ?> value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.control- the control.
-
visitMapEntry
default void visitMapEntry(Object key, Object value, Map<?, ?> map, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
key- todovalue- the value.map- todocontrol- the control.
-
leaveMap
default void leaveMap(Map<?, ?> value, de.serra.graph_walker.GraphWalkerContext.VisitController control) Not yet implemented.- Parameters:
value- the value.control- the control.
-