cayenne-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Gentry <mgen...@masslight.net>
Subject Re: Copy/Clone Mutable Objects?
Date Mon, 08 Sep 2014 12:54:58 GMT
I think everyone is getting wrapped up around Dates.  My general question
was about mutable types.

  byte[] data = { 1, 2, 3, 4 };
  person.setData(data);
  data[0] = 5;
  for (int i = 0; i < person.getData().length; i++)
      System.out.println("Data[" + i + "] = " + person.getData()[i]);

Data[0] = 5

Data[1] = 2

Data[2] = 3

Data[3] = 4

Again, modifying the original value changes what is stored internally by
Cayenne.

Thanks,

mrg


On Mon, Sep 8, 2014 at 3:39 AM, Aristedes Maniatis <ari@maniatis.org> wrote:

> And https://github.com/ThreeTen/threetenbp for Java 6/7 users.
>
> Ari
>
>
> On 8/09/2014 4:42pm, Andrus Adamchik wrote:
> > Also Java 8 Date and Time if Java 8 is an option:
> >
> >
> http://www.oracle.com/technetwork/articles/java/jf14-date-time-2125367.html
> >
> > Andrus
> >
> > On Sep 8, 2014, at 4:17 AM, John Huss <johnthuss@gmail.com> wrote:
> >
> >> Sure, use Joda time.
> >> On Sep 6, 2014 8:15 PM, "Michael Gentry" <mgentry@masslight.net> wrote:
> >>
> >>> Is that a realistic option?
> >>>
> >>>
> >>> On Sat, Sep 6, 2014 at 6:55 PM, John Huss <johnthuss@gmail.com> wrote:
> >>>
> >>>> My thoughts are: don't use Date.
> >>>> On Sep 6, 2014 4:58 PM, "Michael Gentry" <mgentry@masslight.net>
> wrote:
> >>>>
> >>>>> Should Cayenne copy/clone mutable objects, such as Date?
> >>>>>
> >>>>> For example, if I modify a date after setting it in a Cayenne object
> >>>>> (person), it modifies the value stored by Cayenne:
> >>>>>
> >>>>>  SimpleDateFormat timeFormat = new SimpleDateFormat ("yyyy-MM-dd");
> >>>>>  Date d1 = timeFormat.parse("2014-02-01");
> >>>>>  person.setStartDate(d1);
> >>>>>  d1.setYear(2013 - 1900); // Date hackery
> >>>>>  System.out.println("Start Date = " + person.getStartDate());
> >>>>>
> >>>>> This outputs:
> >>>>>
> >>>>> Start Date = Fri Feb 01 00:00:00 EST 2013
> >>>>>
> >>>>> I've never actually experienced an issue with Cayenne not copying
a
> >>>>> Date/etc, but was wondering your thoughts on this.
> >>>>>
> >>>>> Thanks,
> >>>>>
> >>>>> mrg
> >>>>>
> >>>>
> >>>
> >
>
> --
> -------------------------->
> Aristedes Maniatis
> GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message