zeus/tools/service-video/appl/zeus-service-video.srv.zeus.idl

93 lines
3.2 KiB
Plaintext

#elem-brief: picture interface management
#elem-version: 1.0
#elem-type:VIDEO
#elem-author:Heero Yui<yui.heero@gmail.com
import zeus-File
import zeus-Media
// ----------------- Get media with their ID -----------------------
#brief:Get the number of media availlable (a media is a picture or a video)
#return: Number of media
uint32 count()
#brief:Get list of name of the media in a specific range (<1024)
#param:start:First Id of the media stream requested (range [0..+inf[)
#param:stop:Last Id of the media stream requested (excluded) (range [0..+inf[)
#return:List of the media Ids
vector:uint32 getIds(uint32,uint32)
#brief: Get the Id of the element with the current sha 512
#param:sha512:Sha512 of the file searched
#return:Id of the media
uint32 getId(string)
// ----------------- media Access -----------------------
#brief:Get a media
#param:mediaId:Id of the media
#return:A file reference on the media (transmission is async)
obj:zeus-Media get(uint32)
#brief:Add a new media in the service
#param:data:A file reference on the media (transmission is async)
#return:Local personal ID of the media
//#notification:Send progression in json
[action string] uint32 add(obj:zeus-File)
#brief:Remove a media in the service (no trash)
#param:mediaId:Id of the media
[function] void remove(uint32)
/*
The SQL-like is now: ['AND', ==,!=,<=,>=,<,>] only...
'serie-name' == 'stargate'
AND 'saison' <= '2'
*/
#brief:Get a meta-data research elements with a SQL-like request
#param:sqlLikeRequest:A string containing the request on the data
#return:All The requested Data filter by the value
vector:uint32 getSQL(string)
#brief:Get a list of possibilities of a meta-data
#param:keyName:the key metadata whe we want to have list of possibilities
#param:sqlLikeRequest:A string containing the request on the data
#return:All The possible values of a key
vector:string getMetadataValuesWhere(string, string)
////////////////////////////////////////////////////////
// Covers AREA
////////////////////////////////////////////////////////
#brief:Get a media cover
#param:mediaId:Id of the media
#param:maxSize:max size of the image requested (can return a smaller image)
#return:A simple file that might contain a jpg or png file
obj:zeus-File getCover(uint32, uint32)
#brief:Set a media cover
#param:cover:A simple file that might contain a jpg or png file
#param:mediaId:Id of the media
[action string] void setCover(obj:zeus-File, uint32)
/*
#brief:Get a media cover
#param:sqlLikeRequest:sql request mode to filter the cover
#param:maxSize:max size of the image requested (can return a smaller image)
#return:A simple file that might contain a jpg or png file
obj:zeus-File getGroupCover(string, uint32)
*/
#brief:Get a group cover
#param:groupName:Name of the group to get the cover (like "Albator24", "big-loup", "StarWax", "Nanaruto" ...)
#param:maxSize:max size of the image requested (can return a smaller image)
#return:A simple file that might contain a jpg or png file
obj:zeus-File getGroupCover(string, uint32)
#brief:Set a group cover
#param:cover:A simple file that might contain a jpg or png file
#param:groupName:Name of the group to get the cover (like "Albator24", "Big-loup", "StarWax", "Nanaruto" ...)
[action string] void setGroupCover(obj:zeus-File, string)