Exemple #1
0
        /// <summary>
        /// Initialises a new instance from the specified string. Will throw if the string cannot be parsed.
        /// </summary>
        /// <param name="pURI"></param>
        public cURI(string pURI)
        {
            if (string.IsNullOrEmpty(pURI))
            {
                throw new ArgumentOutOfRangeException(nameof(pURI));
            }
            var lCursor = new cBytesCursor(pURI);

            if (!cURIParts.Process(lCursor, out mParts, cTrace.cContext.None) || !lCursor.Position.AtEnd)
            {
                throw new ArgumentOutOfRangeException(nameof(pURI));
            }

            OriginalString = pURI;
            mURLParts      = ZGetURLParts(pURI);
        }
Exemple #2
0
        public bool GetURL(out cURLParts rParts, out string rString, cTrace.cContext pParentContext)
        {
            var lContext = pParentContext.NewMethod(nameof(cBytesCursor), nameof(GetURL));

            var lBookmark = Position;

            if (!cURLParts.Process(this, out rParts, lContext))
            {
                Position = lBookmark;
                rString  = null;
                return(false);
            }

            rString = GetFromAsString(lBookmark);
            return(true);
        }
Exemple #3
0
 private cURI(string pURI, cURIParts pParts)
 {
     OriginalString = pURI;
     mParts         = pParts;
     mURLParts      = ZGetURLParts(pURI);
 }
Exemple #4
0
 private cURL(string pURL, cURLParts pParts)
 {
     OriginalString = pURL;
     mParts         = pParts;
 }