Cool,
created https://osgeo-org.atlassian.net/browse/GEOS-11420
*camptocamp*
INNOVATIVE SOLUTIONS
BY OPEN SOURCE EXPERTS

*Gabriel Roldán*
Geospatial Developer



On Mon, May 27, 2024 at 7:48 AM Andrea Aime <
andrea.a...@geosolutionsgroup.com> wrote:

> Hi Gabriel,
> yes that seems a good idea!
>
> Regards,
>
> Andrea Aime
>
>
> ==
> GeoServer Professional Services from the experts!
>
> Visit http://bit.ly/gs-services-us for more information.
> ==
>
> Ing. Andrea Aime
> @geowolf
> Technical Lead
>
> GeoSolutions Group
> phone: +39 0584 962313
>
> fax:     +39 0584 1660272
>
> mob:   +39  339 8844549
>
> https://www.geosolutionsgroup.com/
>
> http://twitter.com/geosolutions_it
>
> -------------------------------------------------------
>
> Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE
> 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si
> precisa che ogni circostanza inerente alla presente email (il suo
> contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è
> riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il
> messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra
> operazione è illecita. Le sarei comunque grato se potesse darmene notizia.
>
> This email is intended only for the person or entity to which it is
> addressed and may contain information that is privileged, confidential or
> otherwise protected from disclosure. We remind that - as provided by
> European Regulation 2016/679 “GDPR” - copying, dissemination or use of this
> e-mail or the information herein by anyone other than the intended
> recipient is prohibited. If you have received this email by mistake, please
> notify us immediately by telephone or e-mail
>
>
> On Tue, May 21, 2024 at 3:40 PM Gabriel Roldan <
> gabriel.rol...@camptocamp.com> wrote:
>
>> Hi Andrea,
>> yes I remember you had to deal with the reckless deprecation trend, all
>> good. I didn't check exactly when CatalogListener.reloaded() stopped
>> being called though.
>> In any case, the ones I've in the classpath look pretty important (see
>> below).
>> About migrating the current CatalogListeners to
>> GeoServerLifecycleHandlers, I think that'd be rather complicated.
>> What if instead we had a GeoServerLifecycleHandler that on its onReload()
>> method calls reloaded() on all the catalog listeners?
>> GeoServerImpl.reload(Catalog newCatalog) seems to be the only entry
>> point to trigger the config and catalog reload, and it end up by doing
>> callLifecycleHandlers(GeoServerLifecycleHandler::onReload, "onReload");
>> so it seems like it could work out of the box?
>>
>> - *LayerGroupContainmentCache$CatalogChangeListener*:
>>         @Override
>>         public void reloaded() {
>>             // rebuild the containment cache
>>             buildLayerGroupCaches();
>>         }
>> - *LegendSampleImpl*:
>>     @Override
>>     public void reloaded() {
>>         clean();
>>     }
>> - *MimeTypeCacheClearingListener:*
>>         @Override
>>         public void reloaded() {
>>             outputMimeTypes.clear();
>>         }
>> - *WFSConfiguration*'\s anonymous inner class:
>>                     @Override
>>                     public void reloaded() {
>>                         wfs.dispose();
>>                     }
>> *camptocamp*
>> INNOVATIVE SOLUTIONS
>> BY OPEN SOURCE EXPERTS
>>
>> *Gabriel Roldán*
>> Geospatial Developer
>>
>>
>>
>> On Mon, May 20, 2024 at 11:41 AM Andrea Aime <
>> andrea.a...@geosolutionsgroup.com> wrote:
>>
>>> Hi Gabriel,
>>> I don't remember why it was un-deprecated, I guess the activity was
>>> related to removing all
>>> deprecated API and its usage points, and this one seemed to be used.
>>> The was an unfortunate trend back then to deprecate carelessly APIs here
>>> and there, without checking usage points and
>>> checking consequences, something that the new QA build luckily forbids
>>> (deprecation is possible, but one has to go and
>>> clean up usage points, learn what migration paths are needed and provide
>>> them in the PR as well).
>>>
>>> I'm only guessing that I saw usage points and un-deprecated, without
>>> noticing that there were only
>>> listener implementations, but not callers.
>>>
>>> We can remove it, the current listeners using it should be verified...
>>> do they need to migrate
>>> on the lifecycle listeners, or are they redundant and simply be removed?
>>>
>>> Regards,
>>>
>>> Andrea Aime
>>>
>>>
>>> ==
>>> GeoServer Professional Services from the experts!
>>>
>>> Visit http://bit.ly/gs-services-us for more information.
>>> ==
>>>
>>> Ing. Andrea Aime
>>> @geowolf
>>> Technical Lead
>>>
>>> GeoSolutions Group
>>> phone: +39 0584 962313
>>>
>>> fax:     +39 0584 1660272
>>>
>>> mob:   +39  339 8844549
>>>
>>> https://www.geosolutionsgroup.com/
>>>
>>> http://twitter.com/geosolutions_it
>>>
>>> -------------------------------------------------------
>>>
>>> Con riferimento alla normativa sul trattamento dei dati personali (Reg.
>>> UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si
>>> precisa che ogni circostanza inerente alla presente email (il suo
>>> contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è
>>> riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il
>>> messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra
>>> operazione è illecita. Le sarei comunque grato se potesse darmene notizia.
>>>
>>> This email is intended only for the person or entity to which it is
>>> addressed and may contain information that is privileged, confidential or
>>> otherwise protected from disclosure. We remind that - as provided by
>>> European Regulation 2016/679 “GDPR” - copying, dissemination or use of this
>>> e-mail or the information herein by anyone other than the intended
>>> recipient is prohibited. If you have received this email by mistake, please
>>> notify us immediately by telephone or e-mail
>>>
>>>
>>> On Mon, May 20, 2024 at 4:20 PM Gabriel Roldan <
>>> gabriel.rol...@camptocamp.com> wrote:
>>>
>>>> Well, it looks like it was un-deprecated in 2019
>>>> <https://github.com/geoserver/geoserver/commit/9acd9939f6e2452d69432c277b525af3d1f4f500#diff-edeb363841a79844713af33cb2bfa7e1d44441e1e7ed348fddb4e8a7b81fdd51L37-L44>
>>>> but still nobody calls it. For me it's ok if we have a single extension to
>>>> listen to reloads (GeoServerLifecycleHandler), especially cause
>>>> implementers just need to supply a spring bean and not manually add the
>>>> listener to the catalog.
>>>> Just wondering if someone ever noticed these CatalogListeners
>>>> implementing `reloaded()` will never be called.
>>>>
>>>> git show 9acd9939f6e2452d69432c277b525af3d1f4f500 -- `find . -name
>>>> CatalogListener.java`
>>>> commit 9acd9939f6e2452d69432c277b525af3d1f4f500
>>>> Author: Andrea Aime <andrea.a...@gmail.com>
>>>> Date:   Sun Apr 28 15:14:56 2019 +0200
>>>>
>>>>     Deprecated API checkpoint on main, more deprecated API yet to remove
>>>>
>>>> diff --git
>>>> a/src/main/src/main/java/org/geoserver/catalog/event/CatalogListener.java
>>>> b/src/main/src/main/java/org/geoserver/catalog/event/CatalogListener.java
>>>> index 6dba393d702..c3d28df435b 100644
>>>> ---
>>>> a/src/main/src/main/java/org/geoserver/catalog/event/CatalogListener.java
>>>> +++
>>>> b/src/main/src/main/java/org/geoserver/catalog/event/CatalogListener.java
>>>> @@ -34,12 +34,6 @@ public interface CatalogListener {
>>>>      /** Handles the event of a post modification to an object in the
>>>> catalog. */
>>>>      void handlePostModifyEvent(CatalogPostModifyEvent event) throws
>>>> CatalogException;
>>>>
>>>> -    /**
>>>> -     * A callback notifying when GeoServer configuration has been
>>>> reloaded.
>>>> -     *
>>>> -     * <p>This method will be removed in recent version as the idea of
>>>> a "reload" will not exist.
>>>> -     *
>>>> -     * @deprecated.
>>>> -     */
>>>> +    /** A callback notifying when GeoServer configuration has been
>>>> reloaded. */
>>>>      void reloaded();
>>>>  }
>>>>
>>>> *camptocamp*
>>>> INNOVATIVE SOLUTIONS
>>>> BY OPEN SOURCE EXPERTS
>>>>
>>>> *Gabriel Roldán*
>>>> Geospatial Developer
>>>>
>>>>
>>>>
>>>> On Mon, May 20, 2024 at 1:30 AM Jody Garnett <jody.garn...@gmail.com>
>>>> wrote:
>>>>
>>>>> What does happen on catalogue reload? can we restore the event?
>>>>>
>>>>> --
>>>>> Jody Garnett
>>>>>
>>>>>
>>>>> On Sun, May 19, 2024 at 5:27 PM Gabriel Roldan <
>>>>> gabriel.rol...@camptocamp.com> wrote:
>>>>>
>>>>>> Hey all,
>>>>>>
>>>>>> tried to live-test a CatalogListener.reloaded() implementation, turns
>>>>>> out I can't find any caller in the codebase:
>>>>>>
>>>>>> grep "\.reloaded()" -R --include=*.java
>>>>>> wms/src/test/java/org/geoserver/wms/capabilities/GetCapabilitiesLegendURLTest.java:
>>>>>>        ((LegendSampleImpl)
>>>>>> GeoServerExtensions.bean(LegendSample.class)).reloaded();
>>>>>>
>>>>>> Is it supposed to be replaced
>>>>>> by GeoServerLifecycleHandler.onReload(), or at some point we stopped
>>>>>> calling it?
>>>>>> There seems to be a couple implementations out there with non-empty
>>>>>> bodies:
>>>>>> - LayerGroupContainmentCache$CatalogChangeListener
>>>>>> - LegendSampleImpl
>>>>>> - MimeTypeCacheClearingListener
>>>>>> - WFSConfiguration'\s anonymous inner class
>>>>>>
>>>>>>
>>>>>> TIA,
>>>>>> gabe
>>>>>> *camptocamp*
>>>>>> INNOVATIVE SOLUTIONS
>>>>>> BY OPEN SOURCE EXPERTS
>>>>>>
>>>>>> *Gabriel Roldán*
>>>>>> Geospatial Developer
>>>>>>
>>>>>> _______________________________________________
>>>>>> Geoserver-devel mailing list
>>>>>> Geoserver-devel@lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/geoserver-devel
>>>>>>
>>>>> _______________________________________________
>>>> Geoserver-devel mailing list
>>>> Geoserver-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/geoserver-devel
>>>>
>>>
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Reply via email to