Добрый день!
Появилась задача создания копии карты с одного ZuluServer на другом. Карта на основном сервере может изменяться, в том числе и менять набор используемых слоёв. Взаимодействие между серверами хотелось бы оставить только через протокол ZuluServer (без создания сетевых папок на первом или втором серверах) Задача должна выполняться ежедневно.
Схема взаимодействия: ПК1 (основной ZuluServer) -- ПК2 (сервис для копирования карт) -- ПК3 (целевой ZuluServer)
Для себя увидел 3 варианта решения задачи c использованием ZuluTools (все подключения между сервисом и серверами Zulu через строку формата zulu://$login$uid:pwd@server:6473/...):
1. MapPack/Unpack - ПК2 используя метод MapPack сохраняет в свою локальную папку упакованную исходную карту с ПК1 и далее используя метод MapUnpack распаковывает её на ПК3. Не получилось, карта упаковывается и сохраняется на ПК2, но при распаковке на ПК3 отображается окно авторизации на сервере (в мониторинге самого сервер подключение anonymous), после ввода данных, аналогичных указанным в строке подключения, карта успешно распаковывается.
2. LayerPackUnpack - ПК2 открывает исходную карту с ПК1, считывает список слоёв, далее используя метод LayerPack сохраняет в свою локальную папку упакованные слои с ПК1, затем используя метод LayerUnpack распаковывает их на ПК3. Тоже не получилось, метод LayerUnpack возвращает false.
3. LayerCopyEx – ПК2 открывает исходную карту с ПК1, считывает список слоёв и копирует каждый из них используя метод LayerCopyEx на ПК3 в целевой слой. Все работает, но, с одной оговоркой, целевой слой должен существовать, те при создании нового слоя в исходной карте он не будет скопирован. Хотелось бы иметь возможность скопировать и новый слой, просто место его расположения на ZuluServer.
Хотелось бы увидеть комментарии по всем трём пунктам, тк данная информация, на мой взгляд, будет крайне полезной при различных кейсах использования данных методов.
Спасибо!
P.S. Версия ZuluGIS 10.0.0.8937u.x64