commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maxim Solodovnik <solomax...@gmail.com>
Subject Re: Help with migrating one of OpenJPA classes to commons-collections4
Date Mon, 26 Nov 2018 13:08:11 GMT
Hello Gary,

any news regarding release? :)))

On Tue, 13 Nov 2018 at 12:51, Maxim Solodovnik <solomax666@gmail.com> wrote:

> Many thanks :)
>
> On Tue, 13 Nov 2018 at 12:50, Gary Gregory <garydgregory@gmail.com> wrote:
>
>> I hope someone will take the time to do this over the US Thanksgiving
>> holidays perhaps.
>>
>> Gary
>>
>> On Mon, Nov 12, 2018, 22:37 Maxim Solodovnik <solomax666@gmail.com wrote:
>>
>> > Hello Gary,
>> >
>> > we all are volunteers :)
>> > Why I'm asking: it will be blocker for OpenJPA release
>> >
>> > On Tue, 16 Oct 2018 at 19:39, Gary Gregory <garydgregory@gmail.com>
>> wrote:
>> >
>> > > Hi,
>> > >
>> > > There is no ETA, and since we are all volunteers,  it depends on who
>> > wants
>> > > to step up and take the time to do it.
>> > >
>> > > Gary
>> > >
>> > > On Mon, Oct 15, 2018, 22:23 Maxim Solodovnik <solomax666@gmail.com>
>> > wrote:
>> > >
>> > > > Hello Gary,
>> > > >
>> > > > SNAPSHOT works for us expected :)
>> > > > There is no rush, I just want to get some ETA :)
>> > > >
>> > > > On Tue, 16 Oct 2018 at 00:07, Gary Gregory <garydgregory@gmail.com>
>> > > wrote:
>> > > >
>> > > > > Are there any open issues we want to address for 4.3 is the
>> SNAPSHOT
>> > OK
>> > > > as
>> > > > > is?
>> > > > >
>> > > > > Gary
>> > > > >
>> > > > > On Mon, Oct 15, 2018 at 10:42 AM Maxim Solodovnik <
>> > > solomax666@gmail.com>
>> > > > > wrote:
>> > > > >
>> > > > > > Hello Benedikt,
>> > > > > >
>> > > > > > I would like to remind you about 4.3 release :)
>> > > > > >
>> > > > > > On Tue, 25 Sep 2018 at 20:45, Maxim Solodovnik <
>> > solomax666@gmail.com
>> > > >
>> > > > > > wrote:
>> > > > > > >
>> > > > > > > Great,
>> > > > > > >
>> > > > > > > Thanks a million!
>> > > > > > >
>> > > > > > > On Tue, 25 Sep 2018 at 20:39, Benedikt Ritter <
>> > britter@apache.org>
>> > > > > > wrote:
>> > > > > > >>
>> > > > > > >> Am Di., 25. Sep. 2018 um 15:36 Uhr schrieb Benedikt
Ritter <
>> > > > > > >> britter@apache.org>:
>> > > > > > >>
>> > > > > > >> > Hello Maxim,
>> > > > > > >> > Am Mo., 24. Sep. 2018 um 05:32 Uhr schrieb
Maxim
>> Solodovnik <
>> > > > > > >> > solomax666@gmail.com>:
>> > > > > > >> >
>> > > > > > >> >> Hello,
>> > > > > > >> >>
>> > > > > > >> >> could you please create 4.3-SNAPSHOT build?
>> > > > > > >> >>
>> > > > > > >> >
>> > > > > > >> > I'll check whether I have permission to publish
a SNAPSHOT
>> > build
>> > > > to
>> > > > > > the
>> > > > > > >> > SNAPSHOT repo.
>> > > > > > >> >
>> > > > > > >>
>> > > > > > >> I've deployed the latest code to
>> > > > > > >>
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>> https://repository.apache.org/content/repositories/snapshots/org/apache/commons/commons-collections4/4.3-SNAPSHOT/
>> > > > > > >>
>> > > > > > >> Regards,
>> > > > > > >> Benedikt
>> > > > > > >>
>> > > > > > >>
>> > > > > > >> >
>> > > > > > >> >
>> > > > > > >> >>
>> > > > > > >> >> And if you have any estimates on 4.3 release,
could you
>> > please
>> > > > > share
>> > > > > > it?
>> > > > > > >> >> :)
>> > > > > > >> >>
>> > > > > > >> >
>> > > > > > >> > We don't have estimates or a roadmap. But
I've this on my
>> > list,
>> > > > > > because I
>> > > > > > >> > know you're depending on it. I have two days
vacation next
>> > week.
>> > > > > That
>> > > > > > may
>> > > > > > >> > be an opportunity for me to work towards a
4.3 release.
>> > > > > > >> >
>> > > > > > >> > Regards,
>> > > > > > >> > Benedikt
>> > > > > > >> >
>> > > > > > >> >
>> > > > > > >> >>
>> > > > > > >> >>
>> > > > > > >> >>
>> > > > > > >> >> On Thu, 20 Sep 2018 at 17:58, Maxim Solodovnik
<
>> > > > > solomax666@gmail.com
>> > > > > > >
>> > > > > > >> >> wrote:
>> > > > > > >> >>
>> > > > > > >> >> > One more question: it seems there
is no 4.3-SNAPSHOT
>> build
>> > > > > > available
>> > > > > > >> >> > Could you please create it?
>> > > > > > >> >> >
>> > > > > > >> >> > On Thu, 20 Sep 2018 at 12:47, Maxim
Solodovnik <
>> > > > > > solomax666@gmail.com>
>> > > > > > >> >> > wrote:
>> > > > > > >> >> > >
>> > > > > > >> >> > > Hello Gary,
>> > > > > > >> >> > >
>> > > > > > >> >> > > I have tested changes, everything
works as expected
>> > > > > > >> >> > > Thanks a lot!
>> > > > > > >> >> > >
>> > > > > > >> >> > > I have closed PR, but have no
rights to close JIRA :(
>> > > > > > >> >> > >
>> > > > > > >> >> > > Do you have any plans for 4.3
release?
>> > > > > > >> >> > > On Wed, 19 Sep 2018 at 22:11,
Gary Gregory <
>> > > > > > garydgregory@gmail.com>
>> > > > > > >> >> > wrote:
>> > > > > > >> >> > > >
>> > > > > > >> >> > > > Maxim,
>> > > > > > >> >> > > > Thank you for your patch.
>> > > > > > >> >> > > > I created
>> > > > > > https://issues.apache.org/jira/browse/COLLECTIONS-696 and
>> > > > > > >> >> > > > committed you patch to
git master.
>> > > > > > >> >> > > > Please verify and close
the Jira ticket and GitHub
>> PR.
>> > > > > > >> >> > > >
>> > > > > > >> >> > > > Thank you,
>> > > > > > >> >> > > > Gary
>> > > > > > >> >> > > >
>> > > > > > >> >> > > > On Wed, Sep 19, 2018 at
1:24 AM Maxim Solodovnik <
>> > > > > > >> >> solomax666@gmail.com
>> > > > > > >> >> > >
>> > > > > > >> >> > > > wrote:
>> > > > > > >> >> > > >
>> > > > > > >> >> > > > > Done:
>> > > > > https://github.com/apache/commons-collections/pull/51
>> > > > > > >> >> > > > > Could you please take
a look at this PR?
>> > > > > > >> >> > > > > On Thu, 6 Sep 2018
at 03:17, Gary Gregory <
>> > > > > > garydgregory@gmail.com
>> > > > > > >> >> >
>> > > > > > >> >> > wrote:
>> > > > > > >> >> > > > > >
>> > > > > > >> >> > > > > > Hi,
>> > > > > > >> >> > > > > >
>> > > > > > >> >> > > > > > Your best shot
would be to submit a PR on GitHub
>> > > which
>> > > > > > includes
>> > > > > > >> >> a
>> > > > > > >> >> > unit
>> > > > > > >> >> > > > > test
>> > > > > > >> >> > > > > > that exercises
the new code.
>> > > > > > >> >> > > > > >
>> > > > > > >> >> > > > > > https://github.com/apache/commons-collections
>> > > > > > >> >> > > > > >
>> > > > > > >> >> > > > > > Thank you,
>> > > > > > >> >> > > > > > Gary
>> > > > > > >> >> > > > > >
>> > > > > > >> >> > > > > > On Wed, Sep 5,
2018 at 10:12 AM Maxim
>> Solodovnik <
>> > > > > > >> >> > solomax666@gmail.com>
>> > > > > > >> >> > > > > > wrote:
>> > > > > > >> >> > > > > >
>> > > > > > >> >> > > > > > > Would it
be possible to modify the code of
>> > > > > > >> >> > AbstractReferenceMap.java as
>> > > > > > >> >> > > > > > > follows?
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > > diff --git
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> >
>> > > > > > >> >>
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>> a/src/main/java/org/apache/commons/collections4/map/AbstractReferenceMap.java
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> >
>> > > > > > >> >>
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>> b/src/main/java/org/apache/commons/collections4/map/AbstractReferenceMap.java
>> > > > > > >> >> > > > > > > index 0eda632f..81f60b4b
100644
>> > > > > > >> >> > > > > > > ---
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> >
>> > > > > > >> >>
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>> a/src/main/java/org/apache/commons/collections4/map/AbstractReferenceMap.java
>> > > > > > >> >> > > > > > > +++
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> >
>> > > > > > >> >>
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>> b/src/main/java/org/apache/commons/collections4/map/AbstractReferenceMap.java
>> > > > > > >> >> > > > > > > @@ -400,13
+400,15 @@ public abstract class
>> > > > > > >> >> > AbstractReferenceMap<K, V>
>> > > > > > >> >> > > > > > > extends
AbstractHashedMap<K, V>
>> > > > > > >> >> > > > > > >        
 HashEntry<K, V> previous = null;
>> > > > > > >> >> > > > > > >        
 HashEntry<K, V> entry = data[index];
>> > > > > > >> >> > > > > > >        
 while (entry != null) {
>> > > > > > >> >> > > > > > > -      
     if (((ReferenceEntry<K, V>)
>> > > > > > entry).purge(ref)) {
>> > > > > > >> >> > > > > > > +      
     ReferenceEntry<K, V> refEntry =
>> > > > > > >> >> (ReferenceEntry<K,
>> > > > > > >> >> > V>)
>> > > > > > >> >> > > > > entry;
>> > > > > > >> >> > > > > > > +      
     if (refEntry.purge(ref)) {
>> > > > > > >> >> > > > > > >        
         if (previous == null) {
>> > > > > > >> >> > > > > > >        
             data[index] = entry.next;
>> > > > > > >> >> > > > > > >        
         } else {
>> > > > > > >> >> > > > > > >        
             previous.next =
>> entry.next;
>> > > > > > >> >> > > > > > >        
         }
>> > > > > > >> >> > > > > > >        
         this.size--;
>> > > > > > >> >> > > > > > > +      
         refEntry.onPurge();
>> > > > > > >> >> > > > > > >        
         return;
>> > > > > > >> >> > > > > > >        
     }
>> > > > > > >> >> > > > > > >        
     previous = entry;
>> > > > > > >> >> > > > > > > @@ -721,12
+723,15 @@ public abstract class
>> > > > > > >> >> > AbstractReferenceMap<K, V>
>> > > > > > >> >> > > > > > > extends
AbstractHashedMap<K, V>
>> > > > > > >> >> > > > > > >        
     throw new Error();
>> > > > > > >> >> > > > > > >        
 }
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > > +      
 protected void onPurge() {
>> > > > > > >> >> > > > > > > +      
 }
>> > > > > > >> >> > > > > > > +
>> > > > > > >> >> > > > > > >        
 /**
>> > > > > > >> >> > > > > > >        
  * Purges the specified reference
>> > > > > > >> >> > > > > > >        
  * @param ref  the reference to purge
>> > > > > > >> >> > > > > > >        
  * @return true or false
>> > > > > > >> >> > > > > > >        
  */
>> > > > > > >> >> > > > > > > -      
 boolean purge(final Reference<?>
>> ref) {
>> > > > > > >> >> > > > > > > +      
 protected boolean purge(final
>> > Reference<?>
>> > > > > ref)
>> > > > > > {
>> > > > > > >> >> > > > > > >        
     boolean r = parent.keyType !=
>> > > > > > >> >> > ReferenceStrength.HARD &&
>> > > > > > >> >> > > > > key ==
>> > > > > > >> >> > > > > > > ref;
>> > > > > > >> >> > > > > > >        
     r = r || parent.valueType !=
>> > > > > > >> >> ReferenceStrength.HARD
>> > > > > > >> >> > &&
>> > > > > > >> >> > > > > value
>> > > > > > >> >> > > > > > > == ref;
>> > > > > > >> >> > > > > > >        
     if (r) {
>> > > > > > >> >> > > > > > > @@ -1073,4
+1078,17 @@ public abstract class
>> > > > > > >> >> > AbstractReferenceMap<K, V>
>> > > > > > >> >> > > > > > > extends
AbstractHashedMap<K, V>
>> > > > > > >> >> > > > > > >      protected
boolean isKeyType(final
>> > > > > ReferenceStrength
>> > > > > > >> >> type) {
>> > > > > > >> >> > > > > > >        
 return this.keyType == type;
>> > > > > > >> >> > > > > > >      }
>> > > > > > >> >> > > > > > > +
>> > > > > > >> >> > > > > > > +    /**
>> > > > > > >> >> > > > > > > +     *
Provided protected read-only access to
>> > the
>> > > > > value
>> > > > > > type.
>> > > > > > >> >> > > > > > > +     *
@param type the type to check against.
>> > > > > > >> >> > > > > > > +     *
@return true if valueType has the
>> > specified
>> > > > > type
>> > > > > > >> >> > > > > > > +     */
>> > > > > > >> >> > > > > > > +    protected
boolean isValueType(final
>> > > > > > ReferenceStrength
>> > > > > > >> >> type)
>> > > > > > >> >> > {
>> > > > > > >> >> > > > > > > +      
 return this.valueType == type;
>> > > > > > >> >> > > > > > > +    }
>> > > > > > >> >> > > > > > > +
>> > > > > > >> >> > > > > > > +    public
boolean isPurgeValues() {
>> > > > > > >> >> > > > > > > +      
 return purgeValues;
>> > > > > > >> >> > > > > > > +    }
>> > > > > > >> >> > > > > > >  }
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > > On Mon,
3 Sep 2018 at 20:08, Maxim Solodovnik
>> <
>> > > > > > >> >> > solomax666@gmail.com>
>> > > > > > >> >> > > > > > > wrote:
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > > > Thanks
a lot for the answer,
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > > > OpenJPA
ReferenceHashMap overrides purge
>> method
>> > > to
>> > > > be
>> > > > > > able
>> > > > > > >> >> to
>> > > > > > >> >> > call
>> > > > > > >> >> > > > > > > > custom
methods keyExpired/valueExpired [1]
>> > > > > > >> >> > > > > > > > I see
no way to migrate this code without
>> > massive
>> > > > > > >> >> copy/paste or
>> > > > > > >> >> > > > > > > reflection
>> > > > > > >> >> > > > > > > > ...
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > > > Maybe
you can suggest something?
>> > > > > > >> >> > > > > > > > Or
maybe commons-collections API can be
>> > enhanced
>> > > so
>> > > > > > this
>> > > > > > >> >> task
>> > > > > > >> >> > will be
>> > > > > > >> >> > > > > > > > trivial
:)
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> >
>> > > > > > >> >>
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>> https://github.com/apache/openjpa/blob/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/util/ReferenceHashMap.java#L138
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > > > On
Mon, 3 Sep 2018 at 20:03, Julio Oliveira
>> > > > > > >> >> > > > > > > > <julio.juliooliveira@gmail.com>
wrote:
>> > > > > > >> >> > > > > > > > >
>> > > > > > >> >> > > > > > > > >
What is realy your problem??..
>> > > > > > >> >> > > > > > > > >
>> > > > > > >> >> > > > > > > > >
On Sat, Sep 1, 2018, 5:46 AM Maxim
>> > Solodovnik <
>> > > > > > >> >> > > > > solomax666@gmail.com>
>> > > > > > >> >> > > > > > > > wrote:
>> > > > > > >> >> > > > > > > > >
>> > > > > > >> >> > > > > > > > >
> Hello,
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > > >
> I'm trying to migrate code of Apache
>> > OpenJPA
>> > > > from
>> > > > > > >> >> > > > > commons-collections
>> > > > > > >> >> > > > > > > > >
> to commons-collections4
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > > >
> The only real issue so far with
>> migrating
>> > > this
>> > > > > > class
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> >
>> > > > > > >> >>
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>> https://github.com/apache/openjpa/blob/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/util/ReferenceHashMap.java#L112
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > > >
> code of commons-collections4 is more
>> > > > restrictive
>> > > > > > could
>> > > > > > >> >> you
>> > > > > > >> >> > please
>> > > > > > >> >> > > > > > > > >
> suggest how custom purge can be
>> > implemented?
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > > >
> --
>> > > > > > >> >> > > > > > > > >
> WBR
>> > > > > > >> >> > > > > > > > >
> Maxim aka solomax
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > >
>> > > > > > >> >>
>> > > > >
>> ---------------------------------------------------------------------
>> > > > > > >> >> > > > > > > > >
> To unsubscribe, e-mail:
>> > > > > > >> >> > user-unsubscribe@commons.apache.org
>> > > > > > >> >> > > > > > > > >
> For additional commands, e-mail:
>> > > > > > >> >> > user-help@commons.apache.org
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > > >
>
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > > > --
>> > > > > > >> >> > > > > > > > WBR
>> > > > > > >> >> > > > > > > > Maxim
aka solomax
>> > > > > > >> >> > > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > > > > --
>> > > > > > >> >> > > > > > > WBR
>> > > > > > >> >> > > > > > > Maxim aka
solomax
>> > > > > > >> >> > > > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> > > > > --
>> > > > > > >> >> > > > > WBR
>> > > > > > >> >> > > > > Maxim aka solomax
>> > > > > > >> >> > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >>
>> > > > >
>> ---------------------------------------------------------------------
>> > > > > > >> >> > > > > To unsubscribe, e-mail:
>> > > > > user-unsubscribe@commons.apache.org
>> > > > > > >> >> > > > > For additional commands,
e-mail:
>> > > > > > user-help@commons.apache.org
>> > > > > > >> >> > > > >
>> > > > > > >> >> > > > >
>> > > > > > >> >> > >
>> > > > > > >> >> > >
>> > > > > > >> >> > >
>> > > > > > >> >> > > --
>> > > > > > >> >> > > WBR
>> > > > > > >> >> > > Maxim aka solomax
>> > > > > > >> >> >
>> > > > > > >> >> >
>> > > > > > >> >> >
>> > > > > > >> >> > --
>> > > > > > >> >> > WBR
>> > > > > > >> >> > Maxim aka solomax
>> > > > > > >> >> >
>> > > > > > >> >>
>> > > > > > >> >>
>> > > > > > >> >> --
>> > > > > > >> >> WBR
>> > > > > > >> >> Maxim aka solomax
>> > > > > > >> >>
>> > > > > > >> >
>> > > > > > >
>> > > > > > >
>> > > > > > >
>> > > > > > > --
>> > > > > > > WBR
>> > > > > > > Maxim aka solomax
>> > > > > >
>> > > > > >
>> > > > > >
>> > > > > > --
>> > > > > > WBR
>> > > > > > Maxim aka solomax
>> > > > > >
>> > > > > >
>> > ---------------------------------------------------------------------
>> > > > > > To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
>> > > > > > For additional commands, e-mail: user-help@commons.apache.org
>> > > > > >
>> > > > > >
>> > > > >
>> > > >
>> > > >
>> > > > --
>> > > > WBR
>> > > > Maxim aka solomax
>> > > >
>> > >
>> >
>> >
>> > --
>> > WBR
>> > Maxim aka solomax
>> >
>>
>
>
> --
> WBR
> Maxim aka solomax
>


-- 
WBR
Maxim aka solomax

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