You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2017/10/20 19:19:58 UTC
[lang] [LANG-1360] Add methods to ObjectUtils to get various forms of
class names in a null-safe manner
Repository: commons-lang
Updated Branches:
refs/heads/master 88654b79c -> 6ea2fc8d3
[LANG-1360] Add methods to ObjectUtils to get various forms of class
names in a null-safe manner
Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/6ea2fc8d
Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/6ea2fc8d
Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/6ea2fc8d
Branch: refs/heads/master
Commit: 6ea2fc8d38e035bafaa92c7d3b007be38c2e9000
Parents: 88654b7
Author: Gary Gregory <gg...@apache.org>
Authored: Fri Oct 20 13:19:56 2017 -0600
Committer: Gary Gregory <gg...@apache.org>
Committed: Fri Oct 20 13:19:56 2017 -0600
----------------------------------------------------------------------
src/changes/changes.xml | 1 +
.../org/apache/commons/lang3/ObjectUtils.java | 32 +++++++++++++++++++
.../apache/commons/lang3/ObjectUtilsTest.java | 33 ++++++++++++++++++++
3 files changed, 66 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/6ea2fc8d/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index cf4296e..66dd510 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -53,6 +53,7 @@ The <action> type attribute can be add,update,fix,remove.
<action issue="LANG-1350" type="fix" dev="ggregory" due-to="Brett Kail">ConstructorUtils.invokeConstructor(Class, Object...) regression</action>
<action issue="LANG-1349" type="fix" dev="pschumacher" due-to="Naman Nigam">EqualsBuilder#isRegistered: swappedPair construction bug</action>
<action issue="LANG-1357" type="fix" dev="ggregory" due-to="BruceKuiLiu">org.apache.commons.lang3.time.FastDateParser should use toUpperCase(Locale)</action>
+ <action issue="LANG-1360" type="add" dev="ggregory" due-to="Gary Gregory">Add methods to ObjectUtils to get various forms of class names in a null-safe manner</action>
</release>
<release version="3.6" date="2017-06-08" description="New features and bug fixes. Requires Java 7.">
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/6ea2fc8d/src/main/java/org/apache/commons/lang3/ObjectUtils.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/lang3/ObjectUtils.java b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
index 1ec0956..16a6b93 100644
--- a/src/main/java/org/apache/commons/lang3/ObjectUtils.java
+++ b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
@@ -1033,4 +1033,36 @@ public class ObjectUtils {
return v;
}
+ /**
+ * Gets the class name of the given object.
+ *
+ * @param object the object to query, may be null
+ * @return the given object's class name or null if the object is null
+ * @since 3.7
+ */
+ public static String getClassName(final Object object) {
+ return object == null ? null : object.getClass().getName();
+ }
+
+ /**
+ * Gets the class simple name of the given object.
+ *
+ * @param object the object to query, may be null
+ * @return the given object's class simple name or null if the object is null
+ * @since 3.7
+ */
+ public static String getClassSimpleName(final Object object) {
+ return object == null ? null : object.getClass().getSimpleName();
+ }
+
+ /**
+ * Gets the class canonical name of the given object.
+ *
+ * @param object the object to query, may be null
+ * @return the given object's class canonical name or null if the object is null
+ * @since 3.7
+ */
+ public static String getClassCanonicalName(final Object object) {
+ return object == null ? null : object.getClass().getCanonicalName();
+ }
}
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/6ea2fc8d/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
index 3da8443..2bf036c 100644
--- a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
+++ b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
@@ -38,6 +38,7 @@ import java.util.List;
import org.apache.commons.lang3.exception.CloneFailedException;
import org.apache.commons.lang3.mutable.MutableObject;
import org.apache.commons.lang3.text.StrBuilder;
+import org.junit.Assert;
import org.junit.Test;
/**
@@ -666,4 +667,36 @@ public class ObjectUtilsTest {
}
}
+
+ /**
+ * @since 3.7
+ */
+ @Test
+ public void testGetClassName() {
+ Assert.assertNull(ObjectUtils.getClassName(null));
+ Assert.assertEquals("java.lang.String", ObjectUtils.getClassName(new String()));
+ Assert.assertEquals("org.apache.commons.lang3.ObjectUtilsTest$CloneableString",
+ ObjectUtils.getClassName(new CloneableString("test")));
+ }
+
+ /**
+ * @since 3.7
+ */
+ @Test
+ public void testGetSimpleName() {
+ Assert.assertNull(ObjectUtils.getClassSimpleName(null));
+ Assert.assertEquals("String", ObjectUtils.getClassSimpleName(new String()));
+ Assert.assertEquals("CloneableString", ObjectUtils.getClassSimpleName(new CloneableString("test")));
+ }
+
+ /**
+ * @since 3.7
+ */
+ @Test
+ public void testGetCanonicalName() {
+ Assert.assertNull(ObjectUtils.getClassCanonicalName(null));
+ Assert.assertEquals("java.lang.String", ObjectUtils.getClassCanonicalName(new String()));
+ Assert.assertEquals("org.apache.commons.lang3.ObjectUtilsTest.CloneableString",
+ ObjectUtils.getClassCanonicalName(new CloneableString("test")));
+ }
}
Re: [lang] [LANG-1360] Add methods to ObjectUtils to get various
forms of class names in a null-safe manner
Posted by Allon Mureinik <mu...@gmail.com>.
On Sat, Oct 21, 2017 at 6:36 PM, Benedikt Ritter <br...@apache.org> wrote:
>
>
> > Am 21.10.2017 um 13:54 schrieb Allon Mureinik <mu...@gmail.com>:
> >
> > Hi guys,
> >
> > This patch break the CI on GitHub (the checkstyle check).
> >
> > It's pretty straight forward to fix [1], and if someone could merge it to
> > unblock the CI, that would be great.
>
> Done.
>
Many thanks!
>
> >
> >
> > TIA,
> > Allon
> >
> > [1] https://github.com/apache/commons-lang/pull/302
> >
> > On Sat, Oct 21, 2017 at 11:27 AM, Benedikt Ritter <br...@apache.org>
> > wrote:
> >
> >> Hello Gary,
> >>
> >>> Am 20.10.2017 um 21:19 schrieb ggregory@apache.org:
> >>>
> >>> Repository: commons-lang
> >>> Updated Branches:
> >>> refs/heads/master 88654b79c -> 6ea2fc8d3
> >>>
> >>>
> >>> [LANG-1360] Add methods to ObjectUtils to get various forms of class
> >>> names in a null-safe manner
> >>
> >> I think this belongs to ClassUtils.
> >>
> >> Regards,
> >> Benedikt
> >>
> >>>
> >>> Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
> >>> Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/
> >> 6ea2fc8d
> >>> Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/
> 6ea2fc8d
> >>> Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/
> 6ea2fc8d
> >>>
> >>> Branch: refs/heads/master
> >>> Commit: 6ea2fc8d38e035bafaa92c7d3b007be38c2e9000
> >>> Parents: 88654b7
> >>> Author: Gary Gregory <gg...@apache.org>
> >>> Authored: Fri Oct 20 13:19:56 2017 -0600
> >>> Committer: Gary Gregory <gg...@apache.org>
> >>> Committed: Fri Oct 20 13:19:56 2017 -0600
> >>>
> >>> ----------------------------------------------------------------------
> >>> src/changes/changes.xml | 1 +
> >>> .../org/apache/commons/lang3/ObjectUtils.java | 32
> +++++++++++++++++++
> >>> .../apache/commons/lang3/ObjectUtilsTest.java | 33
> >> ++++++++++++++++++++
> >>> 3 files changed, 66 insertions(+)
> >>> ----------------------------------------------------------------------
> >>>
> >>>
> >>> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
> >> 6ea2fc8d/src/changes/changes.xml
> >>> ----------------------------------------------------------------------
> >>> diff --git a/src/changes/changes.xml b/src/changes/changes.xml
> >>> index cf4296e..66dd510 100644
> >>> --- a/src/changes/changes.xml
> >>> +++ b/src/changes/changes.xml
> >>> @@ -53,6 +53,7 @@ The <action> type attribute can be
> >> add,update,fix,remove.
> >>> <action issue="LANG-1350" type="fix" dev="ggregory" due-to="Brett
> >> Kail">ConstructorUtils.invokeConstructor(Class, Object...)
> >> regression</action>
> >>> <action issue="LANG-1349" type="fix" dev="pschumacher" due-to="Naman
> >> Nigam">EqualsBuilder#isRegistered: swappedPair construction
> bug</action>
> >>> <action issue="LANG-1357" type="fix" dev="ggregory"
> >> due-to="BruceKuiLiu">org.apache.commons.lang3.time.FastDateParser
> should
> >> use toUpperCase(Locale)</action>
> >>> + <action issue="LANG-1360" type="add" dev="ggregory" due-to="Gary
> >> Gregory">Add methods to ObjectUtils to get various forms of class names
> in
> >> a null-safe manner</action>
> >>> </release>
> >>>
> >>> <release version="3.6" date="2017-06-08" description="New features and
> >> bug fixes. Requires Java 7.">
> >>>
> >>> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
> >> 6ea2fc8d/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> >>> ----------------------------------------------------------------------
> >>> diff --git a/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> >> b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> >>> index 1ec0956..16a6b93 100644
> >>> --- a/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> >>> +++ b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> >>> @@ -1033,4 +1033,36 @@ public class ObjectUtils {
> >>> return v;
> >>> }
> >>>
> >>> + /**
> >>> + * Gets the class name of the given object.
> >>> + *
> >>> + * @param object the object to query, may be null
> >>> + * @return the given object's class name or null if the object is
> >> null
> >>> + * @since 3.7
> >>> + */
> >>> + public static String getClassName(final Object object) {
> >>> + return object == null ? null : object.getClass().getName();
> >>> + }
> >>> +
> >>> + /**
> >>> + * Gets the class simple name of the given object.
> >>> + *
> >>> + * @param object the object to query, may be null
> >>> + * @return the given object's class simple name or null if the
> >> object is null
> >>> + * @since 3.7
> >>> + */
> >>> + public static String getClassSimpleName(final Object object) {
> >>> + return object == null ? null : object.getClass().
> >> getSimpleName();
> >>> + }
> >>> +
> >>> + /**
> >>> + * Gets the class canonical name of the given object.
> >>> + *
> >>> + * @param object the object to query, may be null
> >>> + * @return the given object's class canonical name or null if the
> >> object is null
> >>> + * @since 3.7
> >>> + */
> >>> + public static String getClassCanonicalName(final Object object) {
> >>> + return object == null ? null : object.getClass().
> >> getCanonicalName();
> >>> + }
> >>> }
> >>>
> >>> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
> >> 6ea2fc8d/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> >>> ----------------------------------------------------------------------
> >>> diff --git a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.
> java
> >> b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> >>> index 3da8443..2bf036c 100644
> >>> --- a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> >>> +++ b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> >>> @@ -38,6 +38,7 @@ import java.util.List;
> >>> import org.apache.commons.lang3.exception.CloneFailedException;
> >>> import org.apache.commons.lang3.mutable.MutableObject;
> >>> import org.apache.commons.lang3.text.StrBuilder;
> >>> +import org.junit.Assert;
> >>> import org.junit.Test;
> >>>
> >>> /**
> >>> @@ -666,4 +667,36 @@ public class ObjectUtilsTest {
> >>> }
> >>>
> >>> }
> >>> +
> >>> + /**
> >>> + * @since 3.7
> >>> + */
> >>> + @Test
> >>> + public void testGetClassName() {
> >>> + Assert.assertNull(ObjectUtils.getClassName(null));
> >>> + Assert.assertEquals("java.lang.String",
> >> ObjectUtils.getClassName(new String()));
> >>> + Assert.assertEquals("org.apache.commons.lang3.
> ObjectUtilsTest$
> >> CloneableString",
> >>> + ObjectUtils.getClassName(new
> CloneableString("test")));
> >>> + }
> >>> +
> >>> + /**
> >>> + * @since 3.7
> >>> + */
> >>> + @Test
> >>> + public void testGetSimpleName() {
> >>> + Assert.assertNull(ObjectUtils.getClassSimpleName(null));
> >>> + Assert.assertEquals("String", ObjectUtils.
> getClassSimpleName(new
> >> String()));
> >>> + Assert.assertEquals("CloneableString", ObjectUtils.
> getClassSimpleName(new
> >> CloneableString("test")));
> >>> + }
> >>> +
> >>> + /**
> >>> + * @since 3.7
> >>> + */
> >>> + @Test
> >>> + public void testGetCanonicalName() {
> >>> + Assert.assertNull(ObjectUtils.getClassCanonicalName(null));
> >>> + Assert.assertEquals("java.lang.String", ObjectUtils.
> getClassCanonicalName(new
> >> String()));
> >>> + Assert.assertEquals("org.apache.commons.lang3.
> ObjectUtilsTest.
> >> CloneableString",
> >>> + ObjectUtils.getClassCanonicalName(new
> >> CloneableString("test")));
> >>> + }
> >>> }
> >>>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> >> For additional commands, e-mail: dev-help@commons.apache.org
> >>
> >>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>
Re: [lang] [LANG-1360] Add methods to ObjectUtils to get various
forms of class names in a null-safe manner
Posted by Benedikt Ritter <br...@apache.org>.
> Am 21.10.2017 um 13:54 schrieb Allon Mureinik <mu...@gmail.com>:
>
> Hi guys,
>
> This patch break the CI on GitHub (the checkstyle check).
>
> It's pretty straight forward to fix [1], and if someone could merge it to
> unblock the CI, that would be great.
Done.
>
>
> TIA,
> Allon
>
> [1] https://github.com/apache/commons-lang/pull/302
>
> On Sat, Oct 21, 2017 at 11:27 AM, Benedikt Ritter <br...@apache.org>
> wrote:
>
>> Hello Gary,
>>
>>> Am 20.10.2017 um 21:19 schrieb ggregory@apache.org:
>>>
>>> Repository: commons-lang
>>> Updated Branches:
>>> refs/heads/master 88654b79c -> 6ea2fc8d3
>>>
>>>
>>> [LANG-1360] Add methods to ObjectUtils to get various forms of class
>>> names in a null-safe manner
>>
>> I think this belongs to ClassUtils.
>>
>> Regards,
>> Benedikt
>>
>>>
>>> Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
>>> Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/
>> 6ea2fc8d
>>> Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/6ea2fc8d
>>> Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/6ea2fc8d
>>>
>>> Branch: refs/heads/master
>>> Commit: 6ea2fc8d38e035bafaa92c7d3b007be38c2e9000
>>> Parents: 88654b7
>>> Author: Gary Gregory <gg...@apache.org>
>>> Authored: Fri Oct 20 13:19:56 2017 -0600
>>> Committer: Gary Gregory <gg...@apache.org>
>>> Committed: Fri Oct 20 13:19:56 2017 -0600
>>>
>>> ----------------------------------------------------------------------
>>> src/changes/changes.xml | 1 +
>>> .../org/apache/commons/lang3/ObjectUtils.java | 32 +++++++++++++++++++
>>> .../apache/commons/lang3/ObjectUtilsTest.java | 33
>> ++++++++++++++++++++
>>> 3 files changed, 66 insertions(+)
>>> ----------------------------------------------------------------------
>>>
>>>
>>> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
>> 6ea2fc8d/src/changes/changes.xml
>>> ----------------------------------------------------------------------
>>> diff --git a/src/changes/changes.xml b/src/changes/changes.xml
>>> index cf4296e..66dd510 100644
>>> --- a/src/changes/changes.xml
>>> +++ b/src/changes/changes.xml
>>> @@ -53,6 +53,7 @@ The <action> type attribute can be
>> add,update,fix,remove.
>>> <action issue="LANG-1350" type="fix" dev="ggregory" due-to="Brett
>> Kail">ConstructorUtils.invokeConstructor(Class, Object...)
>> regression</action>
>>> <action issue="LANG-1349" type="fix" dev="pschumacher" due-to="Naman
>> Nigam">EqualsBuilder#isRegistered: swappedPair construction bug</action>
>>> <action issue="LANG-1357" type="fix" dev="ggregory"
>> due-to="BruceKuiLiu">org.apache.commons.lang3.time.FastDateParser should
>> use toUpperCase(Locale)</action>
>>> + <action issue="LANG-1360" type="add" dev="ggregory" due-to="Gary
>> Gregory">Add methods to ObjectUtils to get various forms of class names in
>> a null-safe manner</action>
>>> </release>
>>>
>>> <release version="3.6" date="2017-06-08" description="New features and
>> bug fixes. Requires Java 7.">
>>>
>>> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
>> 6ea2fc8d/src/main/java/org/apache/commons/lang3/ObjectUtils.java
>>> ----------------------------------------------------------------------
>>> diff --git a/src/main/java/org/apache/commons/lang3/ObjectUtils.java
>> b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
>>> index 1ec0956..16a6b93 100644
>>> --- a/src/main/java/org/apache/commons/lang3/ObjectUtils.java
>>> +++ b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
>>> @@ -1033,4 +1033,36 @@ public class ObjectUtils {
>>> return v;
>>> }
>>>
>>> + /**
>>> + * Gets the class name of the given object.
>>> + *
>>> + * @param object the object to query, may be null
>>> + * @return the given object's class name or null if the object is
>> null
>>> + * @since 3.7
>>> + */
>>> + public static String getClassName(final Object object) {
>>> + return object == null ? null : object.getClass().getName();
>>> + }
>>> +
>>> + /**
>>> + * Gets the class simple name of the given object.
>>> + *
>>> + * @param object the object to query, may be null
>>> + * @return the given object's class simple name or null if the
>> object is null
>>> + * @since 3.7
>>> + */
>>> + public static String getClassSimpleName(final Object object) {
>>> + return object == null ? null : object.getClass().
>> getSimpleName();
>>> + }
>>> +
>>> + /**
>>> + * Gets the class canonical name of the given object.
>>> + *
>>> + * @param object the object to query, may be null
>>> + * @return the given object's class canonical name or null if the
>> object is null
>>> + * @since 3.7
>>> + */
>>> + public static String getClassCanonicalName(final Object object) {
>>> + return object == null ? null : object.getClass().
>> getCanonicalName();
>>> + }
>>> }
>>>
>>> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
>> 6ea2fc8d/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
>>> ----------------------------------------------------------------------
>>> diff --git a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
>> b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
>>> index 3da8443..2bf036c 100644
>>> --- a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
>>> +++ b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
>>> @@ -38,6 +38,7 @@ import java.util.List;
>>> import org.apache.commons.lang3.exception.CloneFailedException;
>>> import org.apache.commons.lang3.mutable.MutableObject;
>>> import org.apache.commons.lang3.text.StrBuilder;
>>> +import org.junit.Assert;
>>> import org.junit.Test;
>>>
>>> /**
>>> @@ -666,4 +667,36 @@ public class ObjectUtilsTest {
>>> }
>>>
>>> }
>>> +
>>> + /**
>>> + * @since 3.7
>>> + */
>>> + @Test
>>> + public void testGetClassName() {
>>> + Assert.assertNull(ObjectUtils.getClassName(null));
>>> + Assert.assertEquals("java.lang.String",
>> ObjectUtils.getClassName(new String()));
>>> + Assert.assertEquals("org.apache.commons.lang3.ObjectUtilsTest$
>> CloneableString",
>>> + ObjectUtils.getClassName(new CloneableString("test")));
>>> + }
>>> +
>>> + /**
>>> + * @since 3.7
>>> + */
>>> + @Test
>>> + public void testGetSimpleName() {
>>> + Assert.assertNull(ObjectUtils.getClassSimpleName(null));
>>> + Assert.assertEquals("String", ObjectUtils.getClassSimpleName(new
>> String()));
>>> + Assert.assertEquals("CloneableString", ObjectUtils.getClassSimpleName(new
>> CloneableString("test")));
>>> + }
>>> +
>>> + /**
>>> + * @since 3.7
>>> + */
>>> + @Test
>>> + public void testGetCanonicalName() {
>>> + Assert.assertNull(ObjectUtils.getClassCanonicalName(null));
>>> + Assert.assertEquals("java.lang.String", ObjectUtils.getClassCanonicalName(new
>> String()));
>>> + Assert.assertEquals("org.apache.commons.lang3.ObjectUtilsTest.
>> CloneableString",
>>> + ObjectUtils.getClassCanonicalName(new
>> CloneableString("test")));
>>> + }
>>> }
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
>> For additional commands, e-mail: dev-help@commons.apache.org
>>
>>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org
Re: [lang] [LANG-1360] Add methods to ObjectUtils to get various
forms of class names in a null-safe manner
Posted by Allon Mureinik <mu...@gmail.com>.
Hi guys,
This patch break the CI on GitHub (the checkstyle check).
It's pretty straight forward to fix [1], and if someone could merge it to
unblock the CI, that would be great.
TIA,
Allon
[1] https://github.com/apache/commons-lang/pull/302
On Sat, Oct 21, 2017 at 11:27 AM, Benedikt Ritter <br...@apache.org>
wrote:
> Hello Gary,
>
> > Am 20.10.2017 um 21:19 schrieb ggregory@apache.org:
> >
> > Repository: commons-lang
> > Updated Branches:
> > refs/heads/master 88654b79c -> 6ea2fc8d3
> >
> >
> > [LANG-1360] Add methods to ObjectUtils to get various forms of class
> > names in a null-safe manner
>
> I think this belongs to ClassUtils.
>
> Regards,
> Benedikt
>
> >
> > Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
> > Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/
> 6ea2fc8d
> > Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/6ea2fc8d
> > Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/6ea2fc8d
> >
> > Branch: refs/heads/master
> > Commit: 6ea2fc8d38e035bafaa92c7d3b007be38c2e9000
> > Parents: 88654b7
> > Author: Gary Gregory <gg...@apache.org>
> > Authored: Fri Oct 20 13:19:56 2017 -0600
> > Committer: Gary Gregory <gg...@apache.org>
> > Committed: Fri Oct 20 13:19:56 2017 -0600
> >
> > ----------------------------------------------------------------------
> > src/changes/changes.xml | 1 +
> > .../org/apache/commons/lang3/ObjectUtils.java | 32 +++++++++++++++++++
> > .../apache/commons/lang3/ObjectUtilsTest.java | 33
> ++++++++++++++++++++
> > 3 files changed, 66 insertions(+)
> > ----------------------------------------------------------------------
> >
> >
> > http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
> 6ea2fc8d/src/changes/changes.xml
> > ----------------------------------------------------------------------
> > diff --git a/src/changes/changes.xml b/src/changes/changes.xml
> > index cf4296e..66dd510 100644
> > --- a/src/changes/changes.xml
> > +++ b/src/changes/changes.xml
> > @@ -53,6 +53,7 @@ The <action> type attribute can be
> add,update,fix,remove.
> > <action issue="LANG-1350" type="fix" dev="ggregory" due-to="Brett
> Kail">ConstructorUtils.invokeConstructor(Class, Object...)
> regression</action>
> > <action issue="LANG-1349" type="fix" dev="pschumacher" due-to="Naman
> Nigam">EqualsBuilder#isRegistered: swappedPair construction bug</action>
> > <action issue="LANG-1357" type="fix" dev="ggregory"
> due-to="BruceKuiLiu">org.apache.commons.lang3.time.FastDateParser should
> use toUpperCase(Locale)</action>
> > + <action issue="LANG-1360" type="add" dev="ggregory" due-to="Gary
> Gregory">Add methods to ObjectUtils to get various forms of class names in
> a null-safe manner</action>
> > </release>
> >
> > <release version="3.6" date="2017-06-08" description="New features and
> bug fixes. Requires Java 7.">
> >
> > http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
> 6ea2fc8d/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> > ----------------------------------------------------------------------
> > diff --git a/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> > index 1ec0956..16a6b93 100644
> > --- a/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> > +++ b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> > @@ -1033,4 +1033,36 @@ public class ObjectUtils {
> > return v;
> > }
> >
> > + /**
> > + * Gets the class name of the given object.
> > + *
> > + * @param object the object to query, may be null
> > + * @return the given object's class name or null if the object is
> null
> > + * @since 3.7
> > + */
> > + public static String getClassName(final Object object) {
> > + return object == null ? null : object.getClass().getName();
> > + }
> > +
> > + /**
> > + * Gets the class simple name of the given object.
> > + *
> > + * @param object the object to query, may be null
> > + * @return the given object's class simple name or null if the
> object is null
> > + * @since 3.7
> > + */
> > + public static String getClassSimpleName(final Object object) {
> > + return object == null ? null : object.getClass().
> getSimpleName();
> > + }
> > +
> > + /**
> > + * Gets the class canonical name of the given object.
> > + *
> > + * @param object the object to query, may be null
> > + * @return the given object's class canonical name or null if the
> object is null
> > + * @since 3.7
> > + */
> > + public static String getClassCanonicalName(final Object object) {
> > + return object == null ? null : object.getClass().
> getCanonicalName();
> > + }
> > }
> >
> > http://git-wip-us.apache.org/repos/asf/commons-lang/blob/
> 6ea2fc8d/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> > ----------------------------------------------------------------------
> > diff --git a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> > index 3da8443..2bf036c 100644
> > --- a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> > +++ b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> > @@ -38,6 +38,7 @@ import java.util.List;
> > import org.apache.commons.lang3.exception.CloneFailedException;
> > import org.apache.commons.lang3.mutable.MutableObject;
> > import org.apache.commons.lang3.text.StrBuilder;
> > +import org.junit.Assert;
> > import org.junit.Test;
> >
> > /**
> > @@ -666,4 +667,36 @@ public class ObjectUtilsTest {
> > }
> >
> > }
> > +
> > + /**
> > + * @since 3.7
> > + */
> > + @Test
> > + public void testGetClassName() {
> > + Assert.assertNull(ObjectUtils.getClassName(null));
> > + Assert.assertEquals("java.lang.String",
> ObjectUtils.getClassName(new String()));
> > + Assert.assertEquals("org.apache.commons.lang3.ObjectUtilsTest$
> CloneableString",
> > + ObjectUtils.getClassName(new CloneableString("test")));
> > + }
> > +
> > + /**
> > + * @since 3.7
> > + */
> > + @Test
> > + public void testGetSimpleName() {
> > + Assert.assertNull(ObjectUtils.getClassSimpleName(null));
> > + Assert.assertEquals("String", ObjectUtils.getClassSimpleName(new
> String()));
> > + Assert.assertEquals("CloneableString", ObjectUtils.getClassSimpleName(new
> CloneableString("test")));
> > + }
> > +
> > + /**
> > + * @since 3.7
> > + */
> > + @Test
> > + public void testGetCanonicalName() {
> > + Assert.assertNull(ObjectUtils.getClassCanonicalName(null));
> > + Assert.assertEquals("java.lang.String", ObjectUtils.getClassCanonicalName(new
> String()));
> > + Assert.assertEquals("org.apache.commons.lang3.ObjectUtilsTest.
> CloneableString",
> > + ObjectUtils.getClassCanonicalName(new
> CloneableString("test")));
> > + }
> > }
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>
Re: [lang] [LANG-1360] Add methods to ObjectUtils to get various
forms of class names in a null-safe manner
Posted by Benedikt Ritter <br...@apache.org>.
Hello Gary,
> Am 20.10.2017 um 21:19 schrieb ggregory@apache.org:
>
> Repository: commons-lang
> Updated Branches:
> refs/heads/master 88654b79c -> 6ea2fc8d3
>
>
> [LANG-1360] Add methods to ObjectUtils to get various forms of class
> names in a null-safe manner
I think this belongs to ClassUtils.
Regards,
Benedikt
>
> Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
> Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/6ea2fc8d
> Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/6ea2fc8d
> Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/6ea2fc8d
>
> Branch: refs/heads/master
> Commit: 6ea2fc8d38e035bafaa92c7d3b007be38c2e9000
> Parents: 88654b7
> Author: Gary Gregory <gg...@apache.org>
> Authored: Fri Oct 20 13:19:56 2017 -0600
> Committer: Gary Gregory <gg...@apache.org>
> Committed: Fri Oct 20 13:19:56 2017 -0600
>
> ----------------------------------------------------------------------
> src/changes/changes.xml | 1 +
> .../org/apache/commons/lang3/ObjectUtils.java | 32 +++++++++++++++++++
> .../apache/commons/lang3/ObjectUtilsTest.java | 33 ++++++++++++++++++++
> 3 files changed, 66 insertions(+)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/6ea2fc8d/src/changes/changes.xml
> ----------------------------------------------------------------------
> diff --git a/src/changes/changes.xml b/src/changes/changes.xml
> index cf4296e..66dd510 100644
> --- a/src/changes/changes.xml
> +++ b/src/changes/changes.xml
> @@ -53,6 +53,7 @@ The <action> type attribute can be add,update,fix,remove.
> <action issue="LANG-1350" type="fix" dev="ggregory" due-to="Brett Kail">ConstructorUtils.invokeConstructor(Class, Object...) regression</action>
> <action issue="LANG-1349" type="fix" dev="pschumacher" due-to="Naman Nigam">EqualsBuilder#isRegistered: swappedPair construction bug</action>
> <action issue="LANG-1357" type="fix" dev="ggregory" due-to="BruceKuiLiu">org.apache.commons.lang3.time.FastDateParser should use toUpperCase(Locale)</action>
> + <action issue="LANG-1360" type="add" dev="ggregory" due-to="Gary Gregory">Add methods to ObjectUtils to get various forms of class names in a null-safe manner</action>
> </release>
>
> <release version="3.6" date="2017-06-08" description="New features and bug fixes. Requires Java 7.">
>
> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/6ea2fc8d/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> ----------------------------------------------------------------------
> diff --git a/src/main/java/org/apache/commons/lang3/ObjectUtils.java b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> index 1ec0956..16a6b93 100644
> --- a/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> +++ b/src/main/java/org/apache/commons/lang3/ObjectUtils.java
> @@ -1033,4 +1033,36 @@ public class ObjectUtils {
> return v;
> }
>
> + /**
> + * Gets the class name of the given object.
> + *
> + * @param object the object to query, may be null
> + * @return the given object's class name or null if the object is null
> + * @since 3.7
> + */
> + public static String getClassName(final Object object) {
> + return object == null ? null : object.getClass().getName();
> + }
> +
> + /**
> + * Gets the class simple name of the given object.
> + *
> + * @param object the object to query, may be null
> + * @return the given object's class simple name or null if the object is null
> + * @since 3.7
> + */
> + public static String getClassSimpleName(final Object object) {
> + return object == null ? null : object.getClass().getSimpleName();
> + }
> +
> + /**
> + * Gets the class canonical name of the given object.
> + *
> + * @param object the object to query, may be null
> + * @return the given object's class canonical name or null if the object is null
> + * @since 3.7
> + */
> + public static String getClassCanonicalName(final Object object) {
> + return object == null ? null : object.getClass().getCanonicalName();
> + }
> }
>
> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/6ea2fc8d/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> ----------------------------------------------------------------------
> diff --git a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> index 3da8443..2bf036c 100644
> --- a/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> +++ b/src/test/java/org/apache/commons/lang3/ObjectUtilsTest.java
> @@ -38,6 +38,7 @@ import java.util.List;
> import org.apache.commons.lang3.exception.CloneFailedException;
> import org.apache.commons.lang3.mutable.MutableObject;
> import org.apache.commons.lang3.text.StrBuilder;
> +import org.junit.Assert;
> import org.junit.Test;
>
> /**
> @@ -666,4 +667,36 @@ public class ObjectUtilsTest {
> }
>
> }
> +
> + /**
> + * @since 3.7
> + */
> + @Test
> + public void testGetClassName() {
> + Assert.assertNull(ObjectUtils.getClassName(null));
> + Assert.assertEquals("java.lang.String", ObjectUtils.getClassName(new String()));
> + Assert.assertEquals("org.apache.commons.lang3.ObjectUtilsTest$CloneableString",
> + ObjectUtils.getClassName(new CloneableString("test")));
> + }
> +
> + /**
> + * @since 3.7
> + */
> + @Test
> + public void testGetSimpleName() {
> + Assert.assertNull(ObjectUtils.getClassSimpleName(null));
> + Assert.assertEquals("String", ObjectUtils.getClassSimpleName(new String()));
> + Assert.assertEquals("CloneableString", ObjectUtils.getClassSimpleName(new CloneableString("test")));
> + }
> +
> + /**
> + * @since 3.7
> + */
> + @Test
> + public void testGetCanonicalName() {
> + Assert.assertNull(ObjectUtils.getClassCanonicalName(null));
> + Assert.assertEquals("java.lang.String", ObjectUtils.getClassCanonicalName(new String()));
> + Assert.assertEquals("org.apache.commons.lang3.ObjectUtilsTest.CloneableString",
> + ObjectUtils.getClassCanonicalName(new CloneableString("test")));
> + }
> }
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org