Example #1
0
 /// <summary>
 /// Validate about attribute.
 /// </summary>
 /// <param name="rac"></param>
 private void ValidateAbout(RdfVersion version, RdfAboutCollection rac)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         string about = this.GetAbout();
         if (about == null || about == string.Empty)
         {
             string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_NOT_UNIQUE_ABOUT_1_0, RDF_ELEMENT_CHANNEL);
             throw new SyndicationValidationException(msg);
         }
         about = about.Trim();
         bool validUrl = false;
         foreach (string prefix in Rdf.RDF_VALIDVALUES_URL_1_0)
         {
             if (about.StartsWith(prefix))
             {
                 validUrl = true;
                 break;
             }
         }
         if (!validUrl)
         {
             string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_URL_WRONG_TYPE_1_0, RDF_ELEMENT_CHANNEL + "," + RDF_ATTRIBUTE_ABOUT, about);
             throw new SyndicationValidationException(msg);
         }
         if (!rac.IsUnique(about))
         {
             string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_NOT_UNIQUE_ABOUT_1_0, RDF_ELEMENT_CHANNEL);
             throw new SyndicationValidationException(msg);
         }
     }
 }
 /// <summary>
 /// Saves the RDF object according to the version and encoding arguments.
 /// </summary>
 /// <param name="filename"></param>
 /// <param name="version"></param>
 /// <param name="encoding"></param>
 /// <param name="customVersion"></param>
 public void Save(string filename, RdfVersion version, string encoding)
 {
     if (filename == null)
     {
         throw new ArgumentNullException("filename");
     }
     this.Save(version, encoding).Save(filename);
 }
 /// <summary>
 /// Saves the RDF object according to the version and encoding arguments.
 /// </summary>
 /// <param name="stream"></param>
 /// <param name="version"></param>
 /// <param name="encoding"></param>
 /// <returns></returns>
 public void Save(System.IO.Stream stream, RdfVersion version, string encoding)
 {
     if (stream == null)
     {
         throw new ArgumentNullException("stream");
     }
     this.Save(version, encoding).Save(stream);
 }
 /// <summary>
 /// Serializes the object to XML.
 /// </summary>
 /// <param name="xdRss"></param>
 /// <param name="elementName"></param>
 /// <param name="rssVersion"></param>
 /// <returns></returns>
 internal XmlNode SerializeToXml(XmlDocument xdRdf, RdfVersion version, string prefix)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         return(SerializeToXml_1_0(xdRdf, prefix));
     }
     throw new ArgumentException(Rdf.RDF_ERRORMESSAGE_UNKNOWN_VALUE, "version");
 }
 /// <summary>
 /// Validates the item object.
 /// </summary>
 /// <param name="version"></param>
 /// <param name="validateContent"></param>
 /// <returns></returns>
 internal bool Validate(RdfVersion version, bool validateContent, string imageAbout)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         return(Validate_1_0(validateContent, imageAbout));
     }
     throw new ArgumentException(Rdf.RDF_ERRORMESSAGE_UNKNOWN_VALUE, "version");
 }
 /// <summary>
 /// Validates the item object.
 /// </summary>
 /// <param name="version"></param>
 /// <param name="validateContent"></param>
 /// <returns></returns>
 internal bool Validate(RdfVersion version, bool validateContent, RdfAboutCollection rac)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         return(Validate_1_0(validateContent, rac));
     }
     throw new ArgumentException(Rdf.RDF_ERRORMESSAGE_UNKNOWN_VALUE, "version");
 }
Example #7
0
 /// <summary>
 /// Serializes the object to XML.
 /// </summary>
 /// <param name="xdRss"></param>
 /// <param name="elementName"></param>
 /// <param name="rssVersion"></param>
 /// <returns></returns>
 internal XmlNode SerializeToXml(XmlDocument xdRdf, RdfVersion version, RdfChannelItems channelItems, string prefix, RdfChannelImage channelImage, RdfChannelTextInput channelTextInput)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         return(SerializeToXml_1_0(xdRdf, channelItems, prefix, channelImage, channelTextInput));
     }
     throw new ArgumentException(Rdf.RDF_ERRORMESSAGE_UNKNOWN_VALUE, "version");
 }
Example #8
0
 /// <summary>
 /// Validates the class.
 /// </summary>
 /// <param name="version"></param>
 /// <param name="validateContent"></param>
 /// <returns></returns>
 internal bool Validate(RdfVersion version, bool validateContent, RdfAboutCollection rac, RdfAboutCollection racItems, string textInputAbout, string imageAbout, string textinputAbout)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         return(Validate_1_0(validateContent, rac, racItems, textInputAbout, imageAbout, textinputAbout));
     }
     throw new ArgumentException(Rdf.RDF_ERRORMESSAGE_UNKNOWN_VALUE, "version");
 }
 /// <summary>
 /// Serializes the object to XML.
 /// </summary>
 /// <param name="xdRss"></param>
 /// <returns></returns>
 internal void SerializeToXml(XmlDocument xdRdf, RdfVersion version, XmlElement xeRdf, string prefix)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         SerializeToXml_1_0(xdRdf, xeRdf, prefix);
         return;
     }
     throw new ArgumentException(Rdf.RDF_ERRORMESSAGE_UNKNOWN_VALUE, "version");
 }
 /// <summary>
 /// Validates about attribute.
 /// </summary>
 /// <param name="version"></param>
 /// <param name="rac"></param>
 private void ValidateAbout(RdfVersion version, RdfAboutCollection rac)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         if (!rac.IsUnique(this.GetAbout()))
         {
             string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_NOT_UNIQUE_ABOUT_1_0, RDF_ELEMENT_ITEM);
             throw new SyndicationValidationException(msg);
         }
     }
 }
 /// <summary>
 /// Save the RDF object to XML.
 /// </summary>
 /// <param name="version"></param>
 /// <param name="encoding"></param>
 /// <param name="version"></param>
 /// <returns></returns>
 public XmlDocument Save(RdfVersion version, string encoding)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         if (ValidateOnSave)
         {
             Validate(version, this.ValidateContent);
         }
         return(SerializeToXml_1_0(encoding));
     }
     throw new ArgumentException(Rdf.RDF_ERRORMESSAGE_UNKNOWN_VALUE, "version");
 }
        /// <summary>
        /// Validates that the object model has the elements it needs
        /// to produce an RDF XML of the desired version.
        /// </summary>
        /// <param name="version"></param>
        public bool Validate(RdfVersion version, bool validateContent)
        {
            if (version == RdfVersion.RDF_1_0)
            {
                //
                // Check for required elements.
                //
                if (this.Channel == null)
                {
                    string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_REQUIRED_FIELD_NULL, RDF_ELEMENT_CHANNEL);
                    throw new SyndicationValidationException(msg);
                }
                if (this.Items == null)
                {
                    string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_REQUIRED_FIELD_NULL, "Items");
                    throw new SyndicationValidationException(msg);
                }

                RdfAboutCollection rac = GetAbouts();

                //
                // Ask each item to validate itself.
                //
                if (this.Channel != null)
                {
                    RdfAboutCollection racItems = new RdfAboutCollection();
                    if (this.Items != null)
                    {
                        racItems.Add(this.Items.GetAbouts());
                    }
                    string textInputAbout = (this.TextInput != null) ? this.TextInput.GetAbout() : null;
                    string imageAbout     = (this.Image != null) ? this.Image.GetAbout() : null;
                    string textinputAbout = (this.TextInput != null) ? this.TextInput.GetAbout() : null;
                    this.Channel.Validate(version, validateContent, rac, racItems, textInputAbout, imageAbout, textinputAbout);
                }
                if (this.Image != null)
                {
                    this.Image.Validate(version, validateContent, rac);
                }
                if (this.Items != null)
                {
                    this.Items.Validate(version, validateContent, rac);
                }
                if (this.TextInput != null)
                {
                    this.TextInput.Validate(version, validateContent, rac);
                }
            }
            return(true);
        }
 /// <summary>
 /// Validates the collection.
 /// </summary>
 /// <param name="version"></param>
 /// <param name="validateContent"></param>
 /// <returns></returns>
 internal bool Validate(RdfVersion version, bool validateContent, RdfAboutCollection rac)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         if (this.Count < 1)
         {
             string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_ILLEGAL_NUMBER_OF_ITEMS_1_0);
             throw new SyndicationValidationException(msg);
         }
         foreach (RdfItem item in this)
         {
             item.Validate(version, validateContent, rac);
         }
     }
     return(true);
 }
 /// <summary>
 /// Validates Link.
 /// </summary>
 /// <param name="version"></param>
 private void ValidateLink(RdfVersion version)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         if (this.Link == null)
         {
             return;
         }
         string link = this.Link.ToLower().Trim();
         foreach (string validPrefix in Rdf.RDF_VALIDVALUES_LINK_1_0)
         {
             if (link.StartsWith(validPrefix))
             {
                 return;
             }
         }
         string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_LINK_WRONG_TYPE_1_0, RDF_ELEMENT_LINK, this.Link);
         throw new SyndicationValidationException(msg);
     }
 }
Example #15
0
 /// <summary>
 /// Validates URL.
 /// </summary>
 /// <param name="version"></param>
 private void ValidateUrl(RdfVersion version)
 {
     if (version == RdfVersion.RDF_1_0)
     {
         if (this.URL == null)
         {
             return;
         }
         string url = this.URL.ToLower().Trim();
         foreach (string validPrefix in Rdf.RDF_VALIDVALUES_URL_1_0)
         {
             if (url.StartsWith(validPrefix))
             {
                 return;
             }
         }
         string msg = string.Format(Rdf.RDF_ERRORMESSAGE_VALIDATION_URL_WRONG_TYPE_1_0, RDF_ELEMENT_URL, this.URL);
         throw new SyndicationValidationException(msg);
     }
 }