Class UriParser

  • All Implemented Interfaces:
    IpAddressParsing, StringBuilding, akka.parboiled2.ParserMacroMethods, akka.parboiled2.RuleDSLActions, akka.parboiled2.RuleDSLBasics, akka.parboiled2.RuleDSLCombinators

    public final class UriParser
    extends akka.parboiled2.Parser
    implements IpAddressParsing, StringBuilding
    INTERNAL API

    http://tools.ietf.org/html/rfc3986

    • Nested Class Summary

      • Nested classes/interfaces inherited from class akka.parboiled2.Parser

        akka.parboiled2.Parser.__SubParserInput, akka.parboiled2.Parser.AlternativeDeliverySchemes, akka.parboiled2.Parser.CutError$, akka.parboiled2.Parser.DeliveryScheme<L extends akka.parboiled2.support.hlist.HList>, akka.parboiled2.Parser.DeliveryScheme$, akka.parboiled2.Parser.Fail, akka.parboiled2.Parser.Mark, akka.parboiled2.Parser.Mark$, akka.parboiled2.Parser.StartTracingException$, akka.parboiled2.Parser.TracingBubbleException, akka.parboiled2.Parser.UnquietMismatch$
      • Nested classes/interfaces inherited from interface akka.parboiled2.RuleDSLActions

        akka.parboiled2.RuleDSLActions.ActionOperator<I extends akka.parboiled2.support.hlist.HList,​O extends akka.parboiled2.support.hlist.HList,​Ops extends java.lang.Object>
      • Nested classes/interfaces inherited from interface akka.parboiled2.RuleDSLBasics

        akka.parboiled2.RuleDSLBasics.CharRangeSupport
      • Nested classes/interfaces inherited from interface akka.parboiled2.RuleDSLCombinators

        akka.parboiled2.RuleDSLCombinators.NTimes, akka.parboiled2.RuleDSLCombinators.WithSeparatedBy<I extends akka.parboiled2.support.hlist.HList,​O extends akka.parboiled2.support.hlist.HList>
    • Constructor Summary

      Constructors 
      Constructor Description
      UriParser​(akka.parboiled2.ParserInput input, java.nio.charset.Charset uriParsingCharset, Uri.ParsingMode uriParsingMode)  
      UriParser​(akka.parboiled2.ParserInput _input, java.nio.charset.Charset uriParsingCharset, Uri.ParsingMode uriParsingMode, int maxValueStackSize)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> authority()  
      scala.runtime.Nothing$ fail​(akka.parboiled2.ParseError error, java.lang.String target)  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> fragment()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> host()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> hostAndPort()  
      akka.parboiled2.ParserInput input()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> ipv4Host()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> ipv6Host()  
      int maxValueStackSize()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> origin()  
      Uri parseAbsoluteUri()  
      Uri parseAndResolveUriReference​(Uri base)  
      Uri.Authority parseAuthority()  
      Uri.Host parseHost()  
      Uri.Authority parseHttp2AuthorityPseudoHeader()  
      scala.Tuple2<Uri.Path,​scala.Option<java.lang.String>> parseHttp2PathPseudoHeader()  
      Uri parseHttpRequestTarget()  
      HttpOrigin parseOrigin()  
      Uri.Query parseQuery()  
      java.lang.String parseRawQueryString()  
      java.lang.String parseSafeRawQueryString​(java.lang.String rawQueryString)  
      Uri parseUriReference()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> pchar()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> port()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.$colon$colon<Uri.Query,​akka.parboiled2.support.hlist.HNil>> query()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> rawQueryString()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> relaxedHost()
      A relaxed host rule to use in `parseHost` that also recognizes IPv6 address without the brackets.
      void reset​(akka.parboiled2.ParserInput newInput)
      Allows to reuse this parser.
      protected java.lang.StringBuilder sb()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> scheme()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> segment()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> slashSegments()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> URI()  
      java.nio.charset.Charset uriParsingCharset()  
      Uri.ParsingMode uriParsingMode()  
      akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> userinfo()  
      • Methods inherited from class akka.parboiled2.Parser

        __advance, __bubbleUp, __bubbleUp, __enterAtomic, __enterNotPredicate, __enterQuiet, __exitAtomic, __exitNotPredicate, __exitQuiet, __hardFail, __inErrorAnalysis, __matchAnyOf, __matchAnyOf$default$2, __matchIgnoreCaseString, __matchIgnoreCaseString$default$2, __matchIgnoreCaseStringWrapped, __matchIgnoreCaseStringWrapped$default$2, __matchMap, __matchMapWrapped, __matchNoneOf, __matchNoneOf$default$2, __matchString, __matchString$default$2, __matchStringWrapped, __matchStringWrapped$default$2, __push, __registerMismatch, __restoreState, __run, __saveState, __subParserInput, __updateMaxCursor, $lessinit$greater$default$1, $lessinit$greater$default$2, akka$parboiled2$Parser$$_cursor, akka$parboiled2$Parser$$phase, charAt, charAtRC, copyStateFrom, cursor, cursorChar, errorTraceCollectionLimit, formatError, formatError$default$2, lastChar, valueStack
      • Methods inherited from class akka.parboiled2.RuleDSL

        $amp, ANY, anyOf, atomic, capture, ch, drop, EOI, fail, failX, ignoreCase, ignoreCase, int2NTimes, MATCH, MISMATCH, MISMATCH0, noneOf, oneOrMore, optional, predicate, push, quiet, range2NTimes, rule2ActionOperator, rule2WithSeparatedBy, run, runSubParser, str, str2CharRangeSupport, test, valueMap, valueMap, valueMap$default$2, zeroOrMore
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • UriParser

        public UriParser​(akka.parboiled2.ParserInput _input,
                         java.nio.charset.Charset uriParsingCharset,
                         Uri.ParsingMode uriParsingMode,
                         int maxValueStackSize)
      • UriParser

        public UriParser​(akka.parboiled2.ParserInput input,
                         java.nio.charset.Charset uriParsingCharset,
                         Uri.ParsingMode uriParsingMode)
    • Method Detail

      • sb

        protected java.lang.StringBuilder sb()
        Specified by:
        sb in interface StringBuilding
      • uriParsingCharset

        public java.nio.charset.Charset uriParsingCharset()
      • maxValueStackSize

        public int maxValueStackSize()
      • input

        public akka.parboiled2.ParserInput input()
        Specified by:
        input in class akka.parboiled2.Parser
      • parseAbsoluteUri

        public Uri parseAbsoluteUri()
      • parseUriReference

        public Uri parseUriReference()
      • parseAndResolveUriReference

        public Uri parseAndResolveUriReference​(Uri base)
      • parseHost

        public Uri.Host parseHost()
      • parseRawQueryString

        public java.lang.String parseRawQueryString()
        Returns:
        a 'raw' (percent-encoded) query string that does not contain invalid characters.
      • parseSafeRawQueryString

        public java.lang.String parseSafeRawQueryString​(java.lang.String rawQueryString)
        Parameters:
        rawQueryString - 'raw' (percent-encoded) query string that in Relaxed mode may contain characters not allowed by https://tools.ietf.org/html/rfc3986#section-3.4 but is guaranteed not to have invalid percent-encoded characters
        Returns:
        a 'raw' (percent-encoded) query string that does not contain invalid characters.
      • fail

        public scala.runtime.Nothing$ fail​(akka.parboiled2.ParseError error,
                                           java.lang.String target)
      • reset

        public void reset​(akka.parboiled2.ParserInput newInput)
        Allows to reuse this parser.
      • URI

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> URI()
      • origin

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> origin()
      • scheme

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> scheme()
      • authority

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> authority()
      • userinfo

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> userinfo()
      • hostAndPort

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> hostAndPort()
      • host

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> host()
      • relaxedHost

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> relaxedHost()
        A relaxed host rule to use in `parseHost` that also recognizes IPv6 address without the brackets.
      • port

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> port()
      • ipv4Host

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> ipv4Host()
      • ipv6Host

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> ipv6Host()
      • slashSegments

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> slashSegments()
      • segment

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> segment()
      • pchar

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> pchar()
      • rawQueryString

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> rawQueryString()
      • query

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.$colon$colon<Uri.Query,​akka.parboiled2.support.hlist.HNil>> query()
      • fragment

        public akka.parboiled2.Rule<akka.parboiled2.support.hlist.HNil,​akka.parboiled2.support.hlist.HNil> fragment()
      • parseHttpRequestTarget

        public Uri parseHttpRequestTarget()
      • parseHttp2AuthorityPseudoHeader

        public Uri.Authority parseHttp2AuthorityPseudoHeader()
      • parseHttp2PathPseudoHeader

        public scala.Tuple2<Uri.Path,​scala.Option<java.lang.String>> parseHttp2PathPseudoHeader()
        Returns:
        path and percent-encoded query string. When in in 'relaxed' mode, characters not permitted by https://tools.ietf.org/html/rfc3986#section-3.4 are already automatically percent-encoded here