TileSharingDraft

Сводка

Класс TileSharingDraft позволяет настроить свойства слоя веб-листов и создать файл черновика определения сервиса (.sddraft), который потом можно будет опубликовать либо в ArcGIS Enterprise или ArcGIS Online.

Описание

Чтобы создать объект класса TileSharingDraft, используйте функцию класса map getWebLayerSharingDraft и задайте для параметра service_type значение TILE. Объект класса TileSharingDraft может затем быть настроен указанием свойств на уровне сервиса. После настройки объекта класса TileSharingDraft, его можно сохранить в файл определения сервиса (.sddraft) с помощью функции exportToSDDraft. Затем он может быть применен и опубликован либо в ArcGIS Enterprise, либо в ArcGIS Online, используя инструменты Промежуточный сервис и Выгрузить определение сервиса. Для получения дополнительной информации см. Введение в модуль Общего доступа.

Свойства

ВладениеОбъяснениеТип данных
credits
(чтение и запись)

Строка со сведениями об авторах.

String
description
(чтение и запись)

Строка с описанием.

String
offline
(чтение и запись)

Булево значение, определяющее использовать ли подключение к порталу. Если offline задан как Ложь, вы должны войти в портал для создания файла черновика определения сервиса (.sddraft) с помощью функции exportToSDDraft. Если offline задан как Истина, файл черновика определения сервиса может быть создан без входа на портал.

Boolean
overwriteExistingService
(чтение и запись)

Определяет, будут ли перезаписываться имеющиеся сервисы с одинаковыми именами.

Boolean
portalFolder
(чтение и запись)

Строка, содержащая имя папки портала, в который вы желаете опубликовать веб-слой. Папкой по умолчанию является корневая папка в Моих ресурсах.

String
serverType
(только чтение)

Возвращает строку, предоставляющую данные о типе сервера, как указано при создании публикуемого черновика с помощью функции getWebLayerSharingDraft из класса map. Единственно возможное значение, которое возвращается из serverType для TileSharingDraftHOSTING_SERVER. serverType из HOSTING_SERVER указывает поддержку публикации в ArcGIS Enterprise или ArcGIS Online.

String
serviceName
(чтение и запись)

Строка, представляющая имя веб-слоя. Это имя будут видеть пользователи и идентифицировать по нему веб-слой. Имя может содержать только буквы, цифры и знак подчеркивания. В имени нельзя использовать пробелы и специальные символы. Длина имени не должна превышать 120 символов.

String
summary
(чтение и запись)

Строка со сводной информацией.

String
tags
(чтение и запись)

Строка, с тегами. Можно добавить несколько тегов с разделением запятой или точкой с запятой.

String
useLimitations
(чтение и запись)

Строка с ограничениями использования.

String

Обзор метода

МетодОбъяснение
exportToSDDraft (out_sddraft)

Конвертирует TileSharingDraft в файл черновика определения сервиса (.sddraft).

Методы

exportToSDDraft (out_sddraft)
ParameterОбъяснениеТип данных
out_sddraft

Строка, представляющая путь и имя файла для выходного файла черновика определения сервиса (.sddraft).

String

После настройки TileSharingDraft, его можно сохранить в файл определения сервиса (.sddraft). Затем он может быть применен и опубликован либо в ArcGIS Enterprise, либо в ArcGIS Online, используя инструменты Промежуточный сервис и Выгрузить определение сервиса.

Пример кода

Следующий скрипт публикует список слоёв из карты как слой веб-листов в ArcGIS Enterprise или ArcGIS Online. Информация портала поступает со станицы Порталы в ArcGIS Pro.

import arcpy
import os

# Set output file names
outdir = r"C:\Project\Output"
service = "TileSharingDraftExample"
sddraft_filename = service + ".sddraft"
sddraft_output_filename = os.path.join(outdir, sddraft_filename)

# Reference map to publish
aprx = arcpy.mp.ArcGISProject(r"C:\Project\World.aprx")
m = aprx.listMaps("World")[0]
lyrs = []
lyrs.append(m.listLayers('cities')[0])
lyrs.append(m.listLayers('counties')[0])

# Create TileSharingDraft and set service properties
sharing_draft = m.getWebLayerSharingDraft("HOSTING_SERVER", "TILE", service, lyrs)
sharing_draft.summary = "My Summary"
sharing_draft.tags = "My Tags"
sharing_draft.description = "My Description"
sharing_draft.credits = "My Credits"
sharing_draft.useLimitations = "My Use Limitations"

# Create Service Definition Draft file
sharing_draft.exportToSDDraft(sddraft_output_filename)

# Stage Service
sd_filename = service + ".sd"
sd_output_filename = os.path.join(outdir, sd_filename)
arcpy.StageService_server(sddraft_output_filename, sd_output_filename)

# Share to portal
print("Uploading Service Definition...")
arcpy.UploadServiceDefinition_server(sd_output_filename, "My Hosted Services")

print("Successfully Uploaded service.")