This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push:
new 3d41274 BeanStore refactoring.
3d41274 is described below
commit 3d41274354e3c37d065d6e2c048900074134c4af
Author: JamesBognar <[email protected]>
AuthorDate: Sat Jan 22 17:16:52 2022 -0500
BeanStore refactoring.
---
.../java/org/apache/juneau/internal/DateUtils.java | 2 +-
.../java/org/apache/juneau/reflect/ClassInfo.java | 47 ++--------------------
.../apache/juneau/reflection/ClassInfoTest.java | 12 +++---
.../apache/juneau/reflection/FieldInfoTest.java | 28 ++++++-------
.../apache/juneau/rest/client/RestClient_Test.java | 6 +--
5 files changed, 28 insertions(+), 67 deletions(-)
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/DateUtils.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/DateUtils.java
index a654aae..047c090 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/DateUtils.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/DateUtils.java
@@ -222,7 +222,7 @@ public final class DateUtils {
if (isEmpty(pattern))
return DateTimeFormatter.ISO_INSTANT;
try {
- FieldInfo fi =
ClassInfo.of(DateTimeFormatter.class).getStaticPublicField(pattern);
+ FieldInfo fi =
ClassInfo.of(DateTimeFormatter.class).getPublicField(x -> x.isStatic() &&
x.hasName(pattern));
if (fi != null)
return (DateTimeFormatter)fi.inner().get(null);
return DateTimeFormatter.ofPattern(pattern);
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ClassInfo.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ClassInfo.java
index 45eeb83..cc52b7a 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ClassInfo.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ClassInfo.java
@@ -755,27 +755,14 @@ public final class ClassInfo {
}
/**
- * Returns the public field with the specified name.
+ * Returns the public field that passes the specified predicate.
*
- * @param name The field name.
+ * @param predicate The predicate to test against.
* @return The public field, or <jk>null</jk> if not found.
*/
- public FieldInfo getPublicField(String name) {
+ public FieldInfo getPublicField(Predicate<FieldInfo> predicate) {
for (FieldInfo f : _getPublicFields())
- if (f.getName().equals(name))
- return f;
- return null;
- }
-
- /**
- * Returns the declared field with the specified name.
- *
- * @param name The field name.
- * @return The declared field, or <jk>null</jk> if not found.
- */
- public FieldInfo getDeclaredField(String name) {
- for (FieldInfo f : _getDeclaredFields())
- if (f.getName().equals(name))
+ if (predicate.test(f))
return f;
return null;
}
@@ -793,32 +780,6 @@ public final class ClassInfo {
return null;
}
- /**
- * Returns the static public field with the specified name.
- *
- * @param name The field name.
- * @return The public field, or <jk>null</jk> if not found.
- */
- public FieldInfo getStaticPublicField(String name) {
- for (FieldInfo f : _getPublicFields())
- if (f.isStatic() && f.getName().equals(name))
- return f;
- return null;
- }
-
- /**
- * Returns the static public field with the specified name.
- *
- * @param name The field name.
- * @return The public field, or <jk>null</jk> if not found.
- */
- public Field getStaticPublicFieldInner(String name) {
- for (FieldInfo f : _getPublicFields())
- if (f.isStatic() && f.getName().equals(name))
- return f.inner();
- return null;
- }
-
private List<FieldInfo> _appendDeclaredFields(List<FieldInfo> l) {
for (FieldInfo f : _getDeclaredFields())
l.add(f);
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/reflection/ClassInfoTest.java
b/juneau-utest/src/test/java/org/apache/juneau/reflection/ClassInfoTest.java
index 62c735c..4ac4b4d 100644
--- a/juneau-utest/src/test/java/org/apache/juneau/reflection/ClassInfoTest.java
+++ b/juneau-utest/src/test/java/org/apache/juneau/reflection/ClassInfoTest.java
@@ -582,16 +582,16 @@ public class ClassInfoTest {
@Test
public void getPublicField() {
- check("F3.a1", f3.getPublicField("a1"));
- check(null, f3.getPublicField("a2"));
- check(null, f3.getPublicField("a3"));
+ check("F3.a1", f3.getPublicField(x -> x.hasName("a1")));
+ check(null, f3.getPublicField(x -> x.hasName("a2")));
+ check(null, f3.getPublicField(x -> x.hasName("a3")));
}
@Test
public void getDeclaredField() {
- check("F3.a1", f3.getDeclaredField("a1"));
- check("F3.a2", f3.getDeclaredField("a2"));
- check(null, f3.getDeclaredField("a3"));
+ check("F3.a1", f3.getDeclaredField(x -> x.hasName("a1")));
+ check("F3.a2", f3.getDeclaredField(x -> x.hasName("a2")));
+ check(null, f3.getDeclaredField(x -> x.hasName("a3")));
}
//-----------------------------------------------------------------------------------------------------------------
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/reflection/FieldInfoTest.java
b/juneau-utest/src/test/java/org/apache/juneau/reflection/FieldInfoTest.java
index adca232..6fe1aff 100644
--- a/juneau-utest/src/test/java/org/apache/juneau/reflection/FieldInfoTest.java
+++ b/juneau-utest/src/test/java/org/apache/juneau/reflection/FieldInfoTest.java
@@ -162,14 +162,14 @@ public class FieldInfoTest {
}
static ClassInfo c = ClassInfo.of(C.class);
static FieldInfo
- c_deprecated = c.getPublicField("deprecated"),
- c_notDeprecated = c.getPublicField("notDeprecated"),
- c_isPublic = c.getPublicField("isPublic"),
- c_isNotPublic = c.getDeclaredField("isNotPublic"),
- c_isStatic = c.getPublicField("isStatic"),
- c_isNotStatic = c.getPublicField("isNotStatic"),
- c_isTransient = c.getPublicField("isTransient"),
- c_isNotTransient = c.getPublicField("isNotTransient")
+ c_deprecated = c.getPublicField(x -> x.hasName("deprecated")),
+ c_notDeprecated = c.getPublicField(x ->
x.hasName("notDeprecated")),
+ c_isPublic = c.getPublicField(x -> x.hasName("isPublic")),
+ c_isNotPublic = c.getDeclaredField(x ->
x.hasName("isNotPublic")),
+ c_isStatic = c.getPublicField(x -> x.hasName("isStatic")),
+ c_isNotStatic = c.getPublicField(x -> x.hasName("isNotStatic")),
+ c_isTransient = c.getPublicField(x -> x.hasName("isTransient")),
+ c_isNotTransient = c.getPublicField(x ->
x.hasName("isNotTransient"))
;
@Test
@@ -296,10 +296,10 @@ public class FieldInfoTest {
}
static ClassInfo d = ClassInfo.of(D.class);
static FieldInfo
- d_isPublic = d.getPublicField("isPublic"),
- d_isProtected = d.getDeclaredField("isProtected"),
- d_isPrivate = d.getDeclaredField("isPrivate"),
- d_isDefault = d.getDeclaredField("isDefault");
+ d_isPublic = d.getPublicField(x -> x.hasName("isPublic")),
+ d_isProtected = d.getDeclaredField(x ->
x.hasName("isProtected")),
+ d_isPrivate = d.getDeclaredField(x -> x.hasName("isPrivate")),
+ d_isDefault = d.getDeclaredField(x -> x.hasName("isDefault"));
@Test
public void setAccessible() {
@@ -343,8 +343,8 @@ public class FieldInfoTest {
static ClassInfo e = ClassInfo.of(E.class);
static FieldInfo
- e_a1 = e.getPublicField("a1"),
- e_a2 = e.getDeclaredField("a2");
+ e_a1 = e.getPublicField(x -> x.hasName("a1")),
+ e_a2 = e.getDeclaredField(x -> x.hasName("a2"));
@Test
public void getType() {
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/rest/client/RestClient_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/rest/client/RestClient_Test.java
index 82f952a..3533281 100644
---
a/juneau-utest/src/test/java/org/apache/juneau/rest/client/RestClient_Test.java
+++
b/juneau-utest/src/test/java/org/apache/juneau/rest/client/RestClient_Test.java
@@ -314,9 +314,9 @@ public class RestClient_Test {
RestClient x1 =
RestClient.create().simpleJson().pooled().build();
RestClient x2 = RestClient.create().simpleJson().build();
RestClient x3 = client().pooled().build();
-
assertEquals("PoolingHttpClientConnectionManager",ClassInfo.of(x1.httpClient).getDeclaredField("connManager").accessible().invoke(x1.httpClient).getClass().getSimpleName());
-
assertEquals("BasicHttpClientConnectionManager",ClassInfo.of(x2.httpClient).getDeclaredField("connManager").accessible().invoke(x2.httpClient).getClass().getSimpleName());
-
assertEquals("MockHttpClientConnectionManager",ClassInfo.of(x3.httpClient).getDeclaredField("connManager").accessible().invoke(x3.httpClient).getClass().getSimpleName());
+
assertEquals("PoolingHttpClientConnectionManager",ClassInfo.of(x1.httpClient).getDeclaredField(x
->
x.hasName("connManager")).accessible().invoke(x1.httpClient).getClass().getSimpleName());
+
assertEquals("BasicHttpClientConnectionManager",ClassInfo.of(x2.httpClient).getDeclaredField(x
->
x.hasName("connManager")).accessible().invoke(x2.httpClient).getClass().getSimpleName());
+
assertEquals("MockHttpClientConnectionManager",ClassInfo.of(x3.httpClient).getDeclaredField(x
->
x.hasName("connManager")).accessible().invoke(x3.httpClient).getClass().getSimpleName());
}
//------------------------------------------------------------------------------------------------------------------