AIlib2/voduploadsdk/UploadAttachedMediaRequest.py

88 lines
2.7 KiB
Python
Raw Normal View History

2025-04-26 10:35:59 +08:00
# -*- coding: UTF-8 -*-
"""
# Class UploadAttachedMediaRequest
#
# Aliyun VoD's Upload Attached Media(such as watermark,subtitle files) Request class, which wraps parameters to upload an media file into VoD.
# Users could pass parameters to AliyunVodUploader, including File Path,Title,etc. via an UploadAttachedMediaRequest instance.
# For more details, please check out the VoD API document: https://help.aliyun.com/document_detail/98467.html
"""
from voduploadsdk.AliyunVodUtils import *
class UploadAttachedMediaRequest:
def __init__(self, filePath, businessType, title=None, fileExt=None):
"""
constructor for UploadAttachedMediaRequest
:param filePath: string, 文件的绝对路径或者网络文件的URL必须含有扩展名
:return
"""
self.businessType = businessType
self.filePath = None
self.fileName = None
self.mediaExt = None
self.title = None
self.setFilePath(filePath, title, fileExt)
self.fileSize = None
self.cateId = None
self.tags = None
self.description = None
self.userData = None
self.storageLocation = None
self.appId = None
self.workflowId = None
def setFilePath(self, filePath, title=None, fileExt=None):
if fileExt is None:
fileExt = AliyunVodUtils.getFileExtension(filePath)
if not fileExt:
raise AliyunVodException('ParameterError', 'InvalidParameter', 'filePath has no Extension')
fileExt = fileExt.lstrip('.')
self.mediaExt = fileExt
self.filePath = AliyunVodUtils.toUnicode(filePath)
briefPath, briefName = AliyunVodUtils.getFileBriefPath(self.filePath)
self.fileName = briefPath
if fileExt and (not self.fileName.endswith('.' + fileExt)):
self.fileName = self.fileName + '.' + fileExt
if title:
self.title = title
else:
if self.title is None:
self.title = briefName
def setBusinessType(self, businessType):
self.businessType = businessType
def setTitle(self, title):
self.title = title
def setFileSize(self, fileSize):
self.fileSize = fileSize
def setCateId(self, cateId):
self.cateId = cateId
def setTags(self, tags):
self.tags = tags
def setDescription(self, description):
self.description = description
def setStorageLocation(self, storageLocation):
self.storageLocation = storageLocation
def setUserData(self, userData):
self.userData = userData
def setAppId(self, appId):
self.appId = appId
def setWorkflowId(self, workflowId):
self.workflowId = workflowId