From def22d8e6e6f744deea11e8b37edf4b276a1abd6 Mon Sep 17 00:00:00 2001 From: urielch Date: Mon, 18 Mar 2024 10:06:16 +0100 Subject: [PATCH] add some jsdoc --- .../src/main/java/net/minidev/asm/ASMUtil.java | 6 ++++++ .../src/main/java/net/minidev/asm/Accessor.java | 10 +++++++++- .../src/main/java/net/minidev/asm/BeansAccess.java | 1 + .../main/java/net/minidev/asm/BeansAccessBuilder.java | 6 +++++- 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/accessors-smart/src/main/java/net/minidev/asm/ASMUtil.java b/accessors-smart/src/main/java/net/minidev/asm/ASMUtil.java index 1a566ce..d343538 100644 --- a/accessors-smart/src/main/java/net/minidev/asm/ASMUtil.java +++ b/accessors-smart/src/main/java/net/minidev/asm/ASMUtil.java @@ -217,6 +217,8 @@ public static Label[] newLabels(int cnt) { } /** + * Generates a setter method name for a given field name. + * * @param key the field name * @return setter name */ @@ -237,6 +239,8 @@ public static String getSetterName(String key) { } /** + * Generates a getter method name for a given field name. + * * @param key the field name * @return getter name */ @@ -257,6 +261,8 @@ public static String getGetterName(String key) { } /** + * Generates a boolean getter method name (is-method) for a given field name. + * * @param key the boolean field name * @return boolean getter name */ diff --git a/accessors-smart/src/main/java/net/minidev/asm/Accessor.java b/accessors-smart/src/main/java/net/minidev/asm/Accessor.java index 459a05c..710c85c 100644 --- a/accessors-smart/src/main/java/net/minidev/asm/Accessor.java +++ b/accessors-smart/src/main/java/net/minidev/asm/Accessor.java @@ -56,7 +56,9 @@ public class Accessor { * Filed Type using JDK 5+ generics if available */ protected Type genericType; - + /** + * The name of the field. + */ protected String fieldName; /** @@ -108,6 +110,8 @@ public Type getGenericType() { } /** + * Determines if the field is accessible for reading or writing operations. + * * @return true if the field can be read or write */ public boolean isUsable() { @@ -115,6 +119,8 @@ public boolean isUsable() { } /** + * Checks if the field is readable, either directly or through a getter method. + * * @return true if the field can be read */ public boolean isReadable() { @@ -122,6 +128,8 @@ public boolean isReadable() { } /** + * Determines if the field is writable, either directly or through a setter method. + * * @return true if the field can be write */ public boolean isWritable() { diff --git a/accessors-smart/src/main/java/net/minidev/asm/BeansAccess.java b/accessors-smart/src/main/java/net/minidev/asm/BeansAccess.java index 1cbff52..c563bb8 100644 --- a/accessors-smart/src/main/java/net/minidev/asm/BeansAccess.java +++ b/accessors-smart/src/main/java/net/minidev/asm/BeansAccess.java @@ -24,6 +24,7 @@ * Allow access reflect field using runtime generated accessor. BeansAccessor is * faster than java.lang.reflect.Method.invoke() * + * @param the type of the bean being accessed * @author uriel Chemouni */ public abstract class BeansAccess { diff --git a/accessors-smart/src/main/java/net/minidev/asm/BeansAccessBuilder.java b/accessors-smart/src/main/java/net/minidev/asm/BeansAccessBuilder.java index f10be37..a841df6 100644 --- a/accessors-smart/src/main/java/net/minidev/asm/BeansAccessBuilder.java +++ b/accessors-smart/src/main/java/net/minidev/asm/BeansAccessBuilder.java @@ -38,6 +38,10 @@ import org.objectweb.asm.Opcodes; import org.objectweb.asm.Type; +/** + * A builder class for dynamically creating {@link BeansAccess} classes for accessing bean properties efficiently. + * This class utilizes the ASM library to generate bytecode at runtime, thereby bypassing the need for Java reflection. + */ public class BeansAccessBuilder { static private String METHOD_ACCESS_NAME = Type.getInternalName(BeansAccess.class); @@ -53,7 +57,7 @@ public class BeansAccessBuilder { Class exceptionClass = NoSuchFieldException.class; /** - * Build reflect bytecode from accessor list. + * Initializes a new builder instance for a given bean class. * * @param type * type to be access