本文整理汇总了Python中pyasm.biz.Snapshot.create_new方法的典型用法代码示例。如果您正苦于以下问题:Python Snapshot.create_new方法的具体用法?Python Snapshot.create_new怎么用?Python Snapshot.create_new使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pyasm.biz.Snapshot
的用法示例。
在下文中一共展示了Snapshot.create_new方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: execute
# 需要导入模块: from pyasm.biz import Snapshot [as 别名]
# 或者: from pyasm.biz.Snapshot import create_new [as 别名]
def execute(my):
# DISABLING: this used to be needed for Repo Browser layout, but
# is no longer needed
return
from pyasm.biz import Snapshot, Naming
input = my.get_input()
search_key = input.get("search_key")
search_type = input.get('search_type')
sobject = my.get_caller()
assert search_type
search_type_obj = SearchType.get(search_type)
# FIXME: this should be in SearchType
base_dir = Environment.get_asset_dir()
root_dir = search_type_obj.get_value("root_dir", no_exception=True)
if not root_dir:
base_type = search_type_obj.get_base_key()
parts = base_type.split("/")
relative_dir = parts[1]
# FIXME: need to use naming here
file_type = 'main'
snapshot_type = "file"
process = "publish"
virtual_snapshot = Snapshot.create_new()
virtual_snapshot_xml = '<snapshot><file type=\'%s\'/></snapshot>' %(file_type)
virtual_snapshot.set_value("snapshot", virtual_snapshot_xml)
virtual_snapshot.set_value("snapshot_type", snapshot_type)
# NOTE: keep these empty to produce a folder without process
# or context ...
# Another approach would be to find all the possible processes
# and create folders for them
# since it is a a file name based context coming in, use process
#virtual_snapshot.set_value("process", process)
#virtual_snapshot.set_value("context", process)
# ???? Which is the correct one?
virtual_snapshot.set_sobject(sobject)
virtual_snapshot.set_parent(sobject)
#naming = Naming.get(sobject, virtual_snapshot)
#print "naming: ", naming.get_data()
# Need to have a fake file because preallocated path also looks at
# the file
file_name = 'test.jpg'
mkdirs = False
ext = 'jpg'
path = virtual_snapshot.get_preallocated_path(file_type, file_name, mkdirs, ext=ext, parent=sobject)
dirname = os.path.dirname(path)
if isinstance(path, unicode):
path = path.encode('utf-8')
else:
path = unicode(path, errors='ignore').encode('utf-8')
#dirname = "%s/%s/%s/" % (base_dir, project_code, root_dir)
base_dir = Environment.get_asset_dir()
relative_dir = dirname.replace(base_dir, "")
relative_dir = relative_dir.strip("/")
# create a file object
file_obj = SearchType.create("sthpw/file")
file_obj.set_sobject_value(sobject)
file_obj.set_value("file_name", "")
file_obj.set_value("relative_dir", relative_dir)
file_obj.set_value("type", "main")
file_obj.set_value("base_type", "sobject_directory")
file_obj.commit(triggers=False)
from pyasm.search import FileUndo
if not os.path.exists(dirname):
FileUndo.mkdir(dirname)
示例2: get_display
# 需要导入模块: from pyasm.biz import Snapshot [as 别名]
# 或者: from pyasm.biz.Snapshot import create_new [as 别名]
def get_display(my):
top = my.top
top.add_class("spt_sandbox_select_top")
sandbox_options = [
{
'name': 'fast',
'base_dir': 'C:/Fast',
},
{
'name': 'faster',
'base_dir': 'C:/Faster',
},
{
'name': 'slow',
'base_dir': 'Z:/Slow',
}
]
process = my.kwargs.get("process")
search_key = my.kwargs.get("search_key")
sobject = Search.get_by_search_key(search_key)
search_type = sobject.get_base_search_type()
client_os = Environment.get_env_object().get_client_os()
if client_os == 'nt':
prefix = "win32"
else:
prefix = "linux"
alias_dict = Config.get_dict_value("checkin", "%s_sandbox_dir" % prefix)
search_key = sobject.get_search_key()
key = "sandbox_dir:%s" % search_key
from pyasm.web import WidgetSettings
value = WidgetSettings.get_value_by_key(key)
sandboxes_div = DivWdg()
top.add(sandboxes_div)
sandboxes_div.add_relay_behavior( {
'type': 'mouseenter',
'bvr_match_class': 'spt_sandbox_option',
'cbjs_action': '''
var last_background = bvr.src_el.getStyle("background-color");
bvr.src_el.setAttribute("spt_last_background", last_background);
bvr.src_el.setStyle("background-color", "#E0E0E0");
bvr.src_el.setStyle("opacity", "1.0");
'''
} )
sandboxes_div.add_relay_behavior( {
'type': 'mouseleave',
'bvr_match_class': 'spt_sandbox_option',
'cbjs_action': '''
var last_background = bvr.src_el.getAttribute("spt_last_background");
bvr.src_el.setStyle("background-color", last_background);
if (!bvr.src_el.hasClass("spt_selected")) {
bvr.src_el.setStyle("opacity", "0.5");
}
'''
} )
sandboxes_div.add_relay_behavior( {
'type': 'mouseup',
'key': key,
'bvr_match_class': 'spt_sandbox_option',
'cbjs_action': '''
var sandbox_dir = bvr.src_el.getAttribute("spt_sandbox_dir");
var server = TacticServerStub.get();
server.set_widget_setting(bvr.key, sandbox_dir);
var applet = spt.Applet.get();
applet.makedirs(sandbox_dir);
//var top = bvr.src_el.getParent(".spt_sandbox_select_top");
var top = bvr.src_el.getParent(".spt_checkin_top");
spt.panel.refresh(top);
'''
} )
#search = Search("config/naming")
#search.add_filter("search_type", search_type)
#search.add_filter("process", process)
#namings = search.get_sobjects()
#naming = namings[0]
from pyasm.biz import Snapshot, Naming
virtual_snapshot = Snapshot.create_new()
#.........这里部分代码省略.........