/[xmltv_parser]/trunk/libxmltv/Core/XMLTVSource.cs
ViewVC logotype

Diff of /trunk/libxmltv/Core/XMLTVSource.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 38 by william, Fri Mar 8 02:17:19 2013 UTC revision 44 by william, Fri Mar 8 03:36:44 2013 UTC
# Line 8  using System.Diagnostics; Line 8  using System.Diagnostics;
8  namespace libxmltv.Core  namespace libxmltv.Core
9  {  {
10      [Serializable]      [Serializable]
11      internal class XMLTVSource : IXMLTVSource      internal class XMLTVSource : IXMLTVSource, IDisposable, ICloneable
12      {      {
13          private Dictionary<string, string> entries = new Dictionary<string, string>();          private Dictionary<string, string> entries = new Dictionary<string, string>();
14            internal static void CreateInstance(XMLTVRuntimeInstance xmltv)
15            {
16                using (XMLTVSource g = new XMLTVSource(xmltv)) { g.instance.Source = (IXMLTVSource)g.Clone(); }
17            }
18    
19          private XMLTVRuntimeInstance instance;          private XMLTVRuntimeInstance instance;
20          public XMLTVSource(XMLTVRuntimeInstance xmltv)          protected XMLTVSource(string sourcename, string generatorname, string generatorurl)
21            {
22            }
23            protected XMLTVSource(XMLTVRuntimeInstance xmltv)
24          {          {
25              XMLTV_LOGGER.Log.Verbose.Debug.WriteLine("Creating Instance of XMLTVSource");              XMLTV_LOGGER.Log.Verbose.Debug.WriteLine("Creating Instance of XMLTVSource");
26              //IXMLTV_PARSER _xmltv;              //IXMLTV_PARSER _xmltv;
# Line 24  namespace libxmltv.Core Line 32  namespace libxmltv.Core
32                
33          #region IXMLTVSource          #region IXMLTVSource
34          //private IXMLTV_PARSER XMLTV_PARSER { get; set; }          //private IXMLTV_PARSER XMLTV_PARSER { get; set; }
35          public string SourceName { get { return entries[XMLTVConstants.Source.SourceName]; } }          public string SourceName { get; private set; }
36          public string GeneratorName { get { return entries[XMLTVConstants.Source.GeneratorName]; } }          public string GeneratorName { get; private set; }
37          public string GeneratorUrl { get { return entries[XMLTVConstants.Source.GeneratorUrl]; } }          public string GeneratorUrl { get; private set; }
38          #endregion          #endregion
39    
40          private void Create()          private void Create()
# Line 40  namespace libxmltv.Core Line 48  namespace libxmltv.Core
48                  //XMLTV_LOGGER.Log.Verbose.Debug.WriteLine("\t{0}: {1}", attribute.Name, attribute.Value);                  //XMLTV_LOGGER.Log.Verbose.Debug.WriteLine("\t{0}: {1}", attribute.Name, attribute.Value);
49                  entries.Add(attribute.Name.ToString(), attribute.Value);                  entries.Add(attribute.Name.ToString(), attribute.Value);
50              }              }
51    
52                SourceName = entries[XMLTVConstants.Source.SourceName];
53                GeneratorName = entries[XMLTVConstants.Source.GeneratorName];
54                GeneratorUrl = entries[XMLTVConstants.Source.GeneratorUrl];
55    
56          }          }
57          public override string ToString()          public override string ToString()
58          {          {
59              return string.Format("XmlTv Source: '{0}' (Generated by: '{1}') (support: '{2}')", SourceName, GeneratorName, GeneratorUrl);              return string.Format("XmlTv Source: '{0}' (Generated by: '{1}') (support: '{2}')", SourceName, GeneratorName, GeneratorUrl);
60          }          }
61    
62            public void Dispose()
63            {
64                //throw new NotImplementedException();
65            }
66    
67            public object Clone()
68            {
69                return new XMLTVSource(this.SourceName, this.GeneratorName, this.GeneratorUrl);
70            }
71      }      }
72  }  }

Legend:
Removed from v.38  
changed lines
  Added in v.44

  ViewVC Help
Powered by ViewVC 1.1.22