示例#1
0
        public static void Transform(Media Media, string ScriptPath)
        {
            string xml = string.Empty;
            foreach (string line in SNDK.IO.ReadTextFile (ScriptPath, Encoding.UTF8))
            {
                xml += line;
            }

            MediaTransformation transformation = new MediaTransformation ();
            transformation.Script = xml;
            transformation.Transform (Media);
        }
示例#2
0
        public static MediaTransformation FromXmlDocument(XmlDocument xmlDocument)
        {
            Hashtable item;
            MediaTransformation result;

            try
            {
                item = (Hashtable)SNDK.Convert.FromXmlDocument (SNDK.Convert.XmlNodeToXmlDocument (xmlDocument.SelectSingleNode ("(//sorentolib.mediatransformation)[1]")));
            }
            catch
            {
                item = (Hashtable)SNDK.Convert.FromXmlDocument (xmlDocument);
            }

            if (item.ContainsKey ("id"))
            {
                try
                {
                    result = Load (new Guid ((string)item["id"]));
                }
                catch
                {
                    result = new MediaTransformation ();
                    result._id = new Guid ((string)item["id"]);
                }
            }
            else
            {
                throw new Exception (Strings.Exception.MediaTransformationFromXMLDocument);
            }

            if (item.ContainsKey ("title"))
            {
                result._title = (string)item["title"];
            }

            if (item.ContainsKey ("mimetypes"))
            {
                result._mimetypes.Clear ();
                foreach (XmlDocument mimetype in (List<XmlDocument>)item["mimetypes"])
                {
                    result._mimetypes.Add ((string)((Hashtable)SNDK.Convert.FromXmlDocument (mimetype))["value"]);
                }
            }

            if (item.ContainsKey ("script"))
            {
                result._script = (string)item["script"];
            }

            return result;
        }
示例#3
0
        public static MediaTransformation Load(Guid Id)
        {
            MediaTransformation result;

            try
            {
                Hashtable item = (Hashtable)SNDK.Convert.FromXmlDocument (SNDK.Convert.XmlNodeToXmlDocument (Services.Datastore.Get<XmlDocument> (DatastoreAisle, Id.ToString ()).SelectSingleNode ("(//sorentolib.mediatransformation)[1]")));
                result = new MediaTransformation ();

                result._id = new Guid ((string)item["id"]);

                if (item.ContainsKey ("title"))
                {
                    result._title = (string)item["title"];
                }

                if (item.ContainsKey ("mimetypes"))
                {
                    foreach (XmlDocument mimetype in (List<XmlDocument>)item["mimetypes"])
                    {
                        result._mimetypes.Add ((string)((Hashtable)SNDK.Convert.FromXmlDocument (mimetype))["value"]);
                    }
                }

                if (item.ContainsKey ("script"))
                {
                    result._script = (string)item["script"];
                }
            }
            catch (Exception exception)
            {
                // LOG: LogDebug.ExceptionUnknown
                Services.Logging.LogDebug (string.Format (Strings.LogDebug.ExceptionUnknown, "SORENTOLIB.MEDIATRANSFORMATION", exception.Message));

                // EXCEPTION: Excpetion.MediaTransformationLoad
                throw new Exception (string.Format (Strings.Exception.MediaTransformationLoad, Id));
            }

            return result;
        }
示例#4
0
 public static void Delete(MediaTransformation MediaTransformation)
 {
     Delete (MediaTransformation.Id);
 }