本文整理汇总了Python中portalpy.Portal.share_items方法的典型用法代码示例。如果您正苦于以下问题:Python Portal.share_items方法的具体用法?Python Portal.share_items怎么用?Python Portal.share_items使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类portalpy.Portal
的用法示例。
在下文中一共展示了Portal.share_items方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: copy_user_with_groups_and_items
# 需要导入模块: from portalpy import Portal [as 别名]
# 或者: from portalpy.Portal import share_items [as 别名]
def copy_user_with_groups_and_items():
source = Portal('http://portaldev.arcgis.com', 'wmathot', 'wmathot')
target = Portal('http://portaldev.esri.com', 'admin', 'esri.agp')
source_owner = source.logged_in_user()['username']
target_owner = target.logged_in_user()['username']
# Copy the groups
groups = source.groups(q='owner:' + source_owner)
copied_groups = copy_groups(groups, source, target)
print 'Copied ' + str(len(copied_groups)) + ' groups'
# Copy the items
copied_items = copy_user_contents(source, source_owner, target, target_owner)
print 'Copied ' + str(len(copied_items)) + ' items'
# Share the items in the target portal
for item_id in copied_items.keys():
sharing = source.user_item(item_id)[1]
if sharing['access'] != 'private':
target_item_id = copied_items[item_id]
target_group_ids = [copied_groups[id] for id in sharing['groups']\
if id in copied_groups]
target.share_items(target_owner, [target_item_id], target_group_ids,\
sharing['access'] == 'org',\
sharing['access'] == 'public')
示例2: hide_user
# 需要导入模块: from portalpy import Portal [as 别名]
# 或者: from portalpy.Portal import share_items [as 别名]
def hide_user():
portal = Portal('http://portaldev.arcgis.com', 'admin', 'esri.agp')
user_to_hide = 'wmathot'
portal.update_user(user_to_hide, {'access': 'private'})
groups = portal.groups(['id'], 'owner:' + user_to_hide)
for group in groups:
portal.update_group(group['id'], {'access': 'private'})
items = portal.search(['id'], 'owner:' + user_to_hide)
portal.share_items(user_to_hide, items, None, False, False)
示例3: create_demographics_group
# 需要导入模块: from portalpy import Portal [as 别名]
# 或者: from portalpy.Portal import share_items [as 别名]
def create_demographics_group():
arcgisonline = Portal('http://www.arcgis.com')
portal = Portal('http://wittm.esri.com', 'admin', 'esri.agp')
owner = portal.logged_in_user()['username']
items = arcgisonline.search(q='demographics owner:esri ' + WEBMAP_ITEM_FILTER)
copied_items = copy_items(items, arcgisonline, portal, owner)
group_id = portal.create_group({'title': 'Demographics', 'access': 'public',
'tags': 'demographics'},
thumbnail='http://bit.ly/WEaIh5')
for item_id in copied_items.values():
portal.share_items(owner, [item_id], [group_id], True, True)
示例4: copy_group_with_shared_content
# 需要导入模块: from portalpy import Portal [as 别名]
# 或者: from portalpy.Portal import share_items [as 别名]
def copy_group_with_shared_content():
source = Portal('http://www.arcgis.com')
target = Portal('http://wittm.esri.com', 'admin', 'esri.agp')
target_owner = target.logged_in_user()['username']
group_id = '2394b887a80347fb8544610cfa30489c'
# Copy the groups
groups = source.groups(q='id:' + group_id)
copied_groups = copy_groups(groups, source, target)
print 'Copied ' + str(len(copied_groups)) + ' groups'
# Copy the items
items = source.search(q='group:' + group_id)
copied_items = copy_items(items, source, target, target_owner,
'Copied Items (' + group_id + ')')
print 'Copied ' + str(len(copied_items)) + ' items'
# Share the items in the target portal
for item_id in copied_items.keys():
sharing = source.user_item(item_id)[1]
# If we have access to the full sharing properties of the source
# item, then copy all of them, otherwise just share with the group
if sharing and sharing['access'] != 'private':
target_item_id = copied_items[item_id]
target_group_ids = [copied_groups[id] for id in sharing['groups'] \
if id in copied_groups]
share_org = (sharing['access'] == 'org')
share_public = (sharing['access'] == 'public')
if not target.is_multitenant():
share_public = (share_public or share_org)
target.share_items(target_owner, [target_item_id],
target_group_ids, \
share_org or share_public, \
share_public)
else:
target_item_id = copied_items[item_id]
target_group_id = copied_groups[group_id]
target.share_items(target_owner, [target_item_id], \
[target_group_id])
示例5: copy_users
# 需要导入模块: from portalpy import Portal [as 别名]
# 或者: from portalpy.Portal import share_items [as 别名]
def copy_users():
source = Portal('http://portaldev.arcgis.com', 'admin', 'esri.agp')
target = Portal('http://wittm.esri.com', 'wmathot', 'wmathot')
owners = ['admin', 'wmathot']
target_owner = target.logged_in_user()['username']
for owner in owners:
groups = source.groups(q='owner:' + owner)
copied_groups = copy_groups(groups, source, target, target_owner)
copied_items = copy_user_contents(source, owner, target, target_owner)
for item_id in copied_items.keys():
sharing = source.user_item(item_id)[1]
if sharing['access'] != 'private':
target_item_id = copied_items[item_id]
target_group_ids = [copied_groups[id] for id in sharing['groups']\
if id in copied_groups]
share_org = (sharing['access'] == 'org')
share_public = (sharing['access'] == 'public')
if not target.is_multitenant():
share_public = (share_public or share_org)
target.share_items(target_owner, [target_item_id],
target_group_ids,\
share_org or share_public,\
share_public)
示例6: Portal
# 需要导入模块: from portalpy import Portal [as 别名]
# 或者: from portalpy.Portal import share_items [as 别名]
feature_items, feature_groups
from portalpy.provision import load_groups, copy_items
logging.basicConfig(level=logging.WARN)
# Setup portal connections and file paths
portal = Portal('http://wittm.esri.com', 'admin', 'esri.agp')
arcgisonline = Portal('http://www.arcgis.com')
groups_csv = '.\\provision_groups.csv'
# Configure the portal
configure_portal(portal, 'Demo Portal', 'A portal used for demonstrations.')
create_basemap_gallery_group(portal, 'Demo Basemaps', copy_filter='-bing -osm')
# Create groups from CSV, then copy/share like-tagged items from arcgis online
items_to_feature = []
owner = portal.logged_in_user()['username']
groups = load_groups(portal, groups_csv, 'csv')[0]
for group in groups:
tags = group['tags'].split(',')
tags_expr = ' OR '.join('tags:"%s"' % tag.strip() for tag in tags)
item_query = WEB_ITEM_FILTER + ' AND (' + tags_expr + ')'
items = arcgisonline.search(q=item_query, num=5)
item_id_map = copy_items(items, arcgisonline, portal, owner)
portal.share_items(owner, item_id_map.values(), [group['id']], True, True)
items_to_feature.append(item_id_map[items[0]['id']])
# Feature items and groups (clear_existing=True)
feature_items(portal, items_to_feature, True)
feature_groups(portal, random.sample(groups, 5), True)