trekarta icon indicating copy to clipboard operation
trekarta copied to clipboard

Introduce a new map provider API which enables not to know maps at compile-time

Open qnga opened this issue 2 years ago • 1 comments

Related to #182.

This new API will enable to develop a plugin letting users select maps of interest from a built-in repository, and even provide their own WMTS URLs.

qnga avatar May 13 '22 14:05 qnga

Hello, Do you plan to review this PR? I've got my plugin basically ready for publishing. It wouldn't make much sense if it's not compatible with a published Trekarta build though.

qnga avatar Jul 05 '22 11:07 qnga

We are also very interested in using this PR to view WMTS. Any plans to merge it with production?

StrikeLines avatar Jan 25 '23 18:01 StrikeLines

If you are still interested, I will work on that.

andreynovikov avatar Dec 19 '23 15:12 andreynovikov

I am still interested!

qnga avatar Dec 20 '23 09:12 qnga

Ok, can you fix conflicts as I've made many changes to MainActivity.java since that. And can you also explain what you mean by "not to know maps at compile-time"? This is about plugin compilation, yes?

andreynovikov avatar Dec 20 '23 09:12 andreynovikov

Also I would prefer if you will rewrite current providers instead of introducing new ones. As all current plugins are written by me: https://github.com/andreynovikov/trekarta-online-maps I would rather update them to conform with new API.

andreynovikov avatar Dec 20 '23 09:12 andreynovikov

May be you also have any idea on this?

andreynovikov avatar Dec 20 '23 10:12 andreynovikov

And can you also explain what you mean by "not to know maps at compile-time"? This is about plugin compilation, yes?

Yes, with my API, maps are not necessarily known when you compile the plugin app. That enables plugin apps to let users choose maps they are interested in and provide service keys for them.

I'll update the PR soon.

qnga avatar Dec 27 '23 18:12 qnga

Done. I merged master and removed the old map provider API.

As to tile expiration, I guess we could use HTP cache-control headers. I don't think that would be related to plugins though, as they provide URLs for tiles rather than doing any request themselves.

qnga avatar Dec 29 '23 16:12 qnga