You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@commons.apache.org by Anthony Bonafide <an...@gmail.com> on 2016/11/30 00:10:37 UTC

[LANG] Object Merge Functionality

Hello All,

     I was wondering if there is functionality within the commons-lang
library to merge two or more objects together. The desired functionality
would be, given a source and target object copy all the fields from the
source to the target where the destination’s fields are null. This is
similar to the behavior of Object.assign
<https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign>
found
in javascript. I think this is useful when dealing with hierarchies where
 objects inherit defaults from other objects higher in the hierarchy. If
this feature does not exist and you think it is useful, I would like to
submit a pull request. Any thoughts?


Thank you,


Anthony Bonafide

Re: [LANG] Object Merge Functionality

Posted by Matt Sicker <bo...@gmail.com>.
Would BeanUtils work for this case?

https://commons.apache.org/proper/commons-beanutils/javadocs/v1.9.3/apidocs/org/apache/commons/beanutils/BeanUtils.html#copyProperties-java.lang.Object-java.lang.Object-

On 29 November 2016 at 18:13, Gary Gregory <ga...@gmail.com> wrote:

> This feels out of scope to me. Nonetheless an interesting challenge.
>
> Gary
>
> On Tue, Nov 29, 2016 at 4:10 PM, Anthony Bonafide <
> anthonymbonafide@gmail.com> wrote:
>
> > Hello All,
> >
> >      I was wondering if there is functionality within the commons-lang
> > library to merge two or more objects together. The desired functionality
> > would be, given a source and target object copy all the fields from the
> > source to the target where the destination’s fields are null. This is
> > similar to the behavior of Object.assign
> > <https://developer.mozilla.org/en-US/docs/Web/JavaScript/
> > Reference/Global_Objects/Object/assign>
> > found
> > in javascript. I think this is useful when dealing with hierarchies where
> >  objects inherit defaults from other objects higher in the hierarchy. If
> > this feature does not exist and you think it is useful, I would like to
> > submit a pull request. Any thoughts?
> >
> >
> > Thank you,
> >
> >
> > Anthony Bonafide
> >
>
>
>
> --
> E-Mail: garydgregory@gmail.com | ggregory@apache.org
> Java Persistence with Hibernate, Second Edition
> <https://www.amazon.com/gp/product/1617290459/ref=as_li_
> tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&
> linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>
>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=
> 1617290459>
> JUnit in Action, Second Edition
> <https://www.amazon.com/gp/product/1935182021/ref=as_li_
> tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&
> linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22
> >
>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=
> 1935182021>
> Spring Batch in Action
> <https://www.amazon.com/gp/product/1935182951/ref=as_li_
> tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&
> linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%
> 7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=
> 1935182951>
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>



-- 
Matt Sicker <bo...@gmail.com>

Re: [LANG] Object Merge Functionality

Posted by Gary Gregory <ga...@gmail.com>.
This feels out of scope to me. Nonetheless an interesting challenge.

Gary

On Tue, Nov 29, 2016 at 4:10 PM, Anthony Bonafide <
anthonymbonafide@gmail.com> wrote:

> Hello All,
>
>      I was wondering if there is functionality within the commons-lang
> library to merge two or more objects together. The desired functionality
> would be, given a source and target object copy all the fields from the
> source to the target where the destination’s fields are null. This is
> similar to the behavior of Object.assign
> <https://developer.mozilla.org/en-US/docs/Web/JavaScript/
> Reference/Global_Objects/Object/assign>
> found
> in javascript. I think this is useful when dealing with hierarchies where
>  objects inherit defaults from other objects higher in the hierarchy. If
> this feature does not exist and you think it is useful, I would like to
> submit a pull request. Any thoughts?
>
>
> Thank you,
>
>
> Anthony Bonafide
>



-- 
E-Mail: garydgregory@gmail.com | ggregory@apache.org
Java Persistence with Hibernate, Second Edition
<https://www.amazon.com/gp/product/1617290459/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>

<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1617290459>
JUnit in Action, Second Edition
<https://www.amazon.com/gp/product/1935182021/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22>

<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182021>
Spring Batch in Action
<https://www.amazon.com/gp/product/1935182951/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182951>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Re: [LANG] Object Merge Functionality

Posted by Matt Benson <gu...@gmail.com>.
There should be multiple existing open source Java libraries to do this
type of thing. Shameless* plug: one such is my own
https://github.com/mbenson/therian .

Agree this is out of scope for [lang] and that [beanutils] would be more
appropriate.

Matt

* Maybe there was a little shame.

On Nov 29, 2016 6:11 PM, "Anthony Bonafide" <an...@gmail.com>
wrote:

Hello All,

     I was wondering if there is functionality within the commons-lang
library to merge two or more objects together. The desired functionality
would be, given a source and target object copy all the fields from the
source to the target where the destination’s fields are null. This is
similar to the behavior of Object.assign
<https://developer.mozilla.org/en-US/docs/Web/JavaScript/
Reference/Global_Objects/Object/assign>
found
in javascript. I think this is useful when dealing with hierarchies where
 objects inherit defaults from other objects higher in the hierarchy. If
this feature does not exist and you think it is useful, I would like to
submit a pull request. Any thoughts?


Thank you,


Anthony Bonafide