diff options
author | Louis Chemineau <louis@chmn.me> | 2022-10-13 12:27:06 +0300 |
---|---|---|
committer | Louis Chemineau <louis@chmn.me> | 2022-11-08 15:49:48 +0300 |
commit | 549cf0fd1a225adac15afe045623d6b2ff772e5b (patch) | |
tree | f237d23e76a837e7f113bb92bff2498d63bf5e23 | |
parent | d88e010f055f892388bd6b1dbacbb7c1261b2012 (diff) |
Add commands and listeners to generate location data of files
- `ReverseGeoCoderService` download the necessary files and build the `KDTree`
- `UpdateReverseGeocodingFilesCommand` command to allow to manually create the needed reverse geocoding files
- `MediaLocationManager` to manager the location mappings
- `MapMediaToLocationCommand` command to manually trigger location data mapping. Useful for pre-existing pictures.
- `LocationManagerNodeEventListener` to react to node, user and share events.
- `MapMediaToLocationJob` to reduce the load in event listeners
┌─────────────────────┐
┌────────────►│MapMediaToLocationJob│
│ └─────────┬───────────┘
│ │
┌────────────────────────┴───────┐ │
│LocationManagerNodeEventListener├──┐ ▼
└────────────────────────────────┘ │ ┌────────────────────┐ ┌──────────────┐
├─►│MediaLocationManager├────►│LocationMapper│
┌─────────────────────────┐ │ └─────────┬──────────┘ └──────────────┘
│MapMediaToLocationCommand├─────────┘ │
└─────────────────────────┘ │
▼
┌──────────────────────────────────┐ ┌──────────────────────┐
│UpdateReverseGeocodingFilesCommand├──►│ReverseGeoCoderService│
└──────────────────────────────────┘ └──────────────────────┘
Signed-off-by: Louis Chemineau <louis@chmn.me>
-rw-r--r-- | lib/AppInfo/Application.php | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index 909ea099..bf1afd28 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -83,6 +83,8 @@ class Application extends App implements IBootstrap { $context->registerEventListener(ShareDeletedEvent::class, LocationManagerNodeEventListener::class); $context->registerEventListener(SabrePluginAuthInitEvent::class, SabrePluginAuthInitListener::class); + + require_once __DIR__ . '/../../vendor/autoload.php'; } public function boot(IBootContext $context): void { |