示例#1
0
def add_manifest_pak_entry(context, manifest, manifest_path, filesList):
    manifest_object = {}
    manifest_object['keyName'] = get_standalone_manifest_key(
        context, manifest_path)
    manifest_object['localFolder'] = dynamic_content_settings.get_pak_folder()
    manifest_object['hash'] = hashlib.md5(open(manifest_path,
                                               'rb').read()).hexdigest()
    filesList.append(manifest_object)
示例#2
0
def command_add_file_to_pak(context, args):
    pak_file = os.path.join(dynamic_content_settings.get_pak_folder(),
                            args.pak_file)
    manifest_path, manifest = _get_path_and_manifest(context,
                                                     args.manifest_path)
    file_name = args.file_name
    file_platform = args.platform_type
    _add_file_to_pak(context, file_name, file_platform, pak_file,
                     manifest_path, manifest)
示例#3
0
def command_add_pak(context, args):
    manifest_path, manifest = _get_path_and_manifest(context,
                                                     args.manifest_path)
    platform_type = args.platform_type
    new_file_name = args.pak_name + os.path.extsep + platform_type + os.path.extsep + 'pak'
    _add_pak_to_manifest(
        context,
        os.path.join(dynamic_content_settings.get_pak_folder(), new_file_name),
        manifest_path, manifest, platform_type)
示例#4
0
def gui_add_pak_to_manifest(context, args):
    manifest_path, manifest = _get_path_and_manifest(context,
                                                     args.manifest_path)
    new_file_name = args.new_file_name + os.path.extsep + 'pak'
    platform_type = args.platform_type
    _add_pak_to_manifest(
        context,
        os.path.join(dynamic_content_settings.get_pak_folder(), new_file_name),
        manifest_path, manifest, platform_type)
    gui_list(context, args, {new_file_name: 'new'})
示例#5
0
def get_path_for_manifest_platform(context, manifest_path, platform):
    manifest_root, manifest_name = os.path.split(manifest_path)
    if len(manifest_name):
        manifest_name = manifest_name.split('.json', 1)[0]
    else:
        manifest_name = manifest_path

    pak_folder_path = os.path.join(dynamic_content_settings.get_pak_folder(),
                                   manifest_name + '.' + platform + '.pak')
    if len(pak_folder_path) and pak_folder_path[0] == '/':
        pak_folder_path = pak_folder_path[1:]
    return pak_folder_path
示例#6
0
def gui_add_files_to_pak(context, args):
    files_to_add = args.file_list
    pak_file = os.path.join(dynamic_content_settings.get_pak_folder(),
                            args.pak_file)
    manifest_path, manifest = _get_path_and_manifest(context,
                                                     args.manifest_path)

    for new_file in files_to_add:
        file_name = os.path.join(new_file.get('localFolder'),
                                 new_file.get('keyName')).replace('\\', '/')
        file_platform = new_file.get('platformType')
        _add_file_to_pak(context, file_name, file_platform, pak_file,
                         manifest_path, manifest)

    gui_list(context, args, {os.path.basename(pak_file): 'outdated'})
示例#7
0
def gui_delete_pak_from_manifest(context, args):
    file_info = args.file_data
    file_name = file_info.get('keyName')
    platform = file_info.get('platformType')

    file_to_remove = os.path.join(dynamic_content_settings.get_pak_folder(),
                                  file_name)
    manifest_path, manifest = _get_path_and_manifest(context,
                                                     args.manifest_path)
    _remove_file_entry_from_section(context, file_to_remove, platform,
                                    manifest_path, manifest, 'Paks')
    existing_file_list = _get_files_list(context, manifest, 'Files')
    for existing_file in existing_file_list:
        if 'pakFile' in existing_file:
            if existing_file['pakFile'] == file_to_remove:
                del existing_file['pakFile']
    _save_content_manifest(context, manifest_path, manifest)
    gui_list(context, args)