Releases: InfinityRefactoring/8R-Reflections
Releases · InfinityRefactoring/8R-Reflections
v2.0.0
- [NEW] Added support to static path directly in the String
- [NEW] Added the PathExpressionPredicate class that tests one or two path expressions with a internal predicate
- [NEW] Added methods for get the generic type of class, fields, methods and parameters in the ClassWrapper class
- [NEW] Added the getLastMember and getMemberOf methods in the PathExpression class
- [NEW] Added the getMember method in the ExpressionNode class
- [NEW] Added the withAnnotationAnnotatedWith and withMethodSignature methods in the Predicates class
- [NEW] Added the needArguments method in the ExpressionNode and PathExpression class
- [NEW] Added the getArgumentKeys method in the ExpressionNode class
- [NEW] Added the getMemberType, formatAsMethodSignature method in the ClassWrapper class
- [NEW] Added utility methods in the ExpressionNode class to tests the node type and to cast to a specific type
- [CHANGED] Changed the order of the "consumer" and "predicate" parameters in the ClassWrapper class
- [CHANGED] Changed the equals and hashCode methods of the MethodNode class
- [CHANGED] Renamed the tests methods to maintain a pattern
V1.5.0
- [NEW] Added cache system for the ExpressionNode instances
- [NEW] PathExpression now implements the Iterable interface
- [NEW] Added support for static nodes in the ExpressionNode and PathExpression class
- [NEW] Added the getFirstNode, getLastNode, getNodes, getNodesAmount, iterator, listIterator, spliterator and stream methods in the PathExpression class
- [NEW] Added the moveForward, moveBackward, subPath methods in the PathExpression class, for gets a path expression with a nodes amount reduced
- [NEW] Added JUnit tests
- [CHANGED] Renamed the "getClassWrapper" methods to "wrap" in the ClassWrapper
- [CHANGED] Changed the ExpressionNode interface to an abstract class
- [CHANGED] Changed the getName implementation of the ExpressionNode class
- [CHANGED] Changed the cache initial size of ExpressionNode and PathExpression to 50
- [BUGFIX] Added a if that checks if the array is null, in the get/setValue of the ArrayNode class
v1.0
- Added ClassWrapper class, for facilitate the handling of a Java class and your members, using the Java Reflection API
- Added the PathExpression API, for access nested fields or methods of a given root object
- Added the Reflections class, a utility class for facilitates the access, of centralized way, to the principal functionalities
- Added the Predicates class, a utility class with static methods that returns a Predicate for filter a Class, Member, Field or Method.
- Added the DelegatedInstanceFactory#DEFAULT_FACTORY, that by default has capacity to instantiates all primitive types and any classes with default constructor.