maspack.fileutil.uri
Class URIx

java.lang.Object
  extended by maspack.fileutil.uri.URIx

public class URIx
extends java.lang.Object

Extended URI class that handles nested URIs required for zip files

Author:
antonio

Constructor Summary
URIx()
           
URIx(java.io.File file)
           
URIx(java.lang.String uri)
           
URIx(java.lang.String scheme, java.lang.String host, java.lang.String path)
           
URIx(java.lang.String scheme, java.lang.String userInfo, java.lang.String host, int port, java.lang.String path, java.lang.String query, java.lang.String fragment)
           
URIx(java.lang.String scheme, java.lang.String userInfo, java.lang.String host, java.lang.String path)
           
URIx(java.lang.String scheme, URIx nestedURI, java.lang.String fragment)
           
URIx(URIx uri)
           
URIx(URIxScheme scheme, java.lang.String host, java.lang.String path)
           
 
Method Summary
static void buildURI(java.lang.StringBuilder sb, java.lang.String scheme, java.lang.String ssp, java.lang.String fragment)
           
static void buildURI(java.lang.StringBuilder sb, java.lang.String scheme, java.lang.String userName, java.lang.String password, java.lang.String host, int port, java.lang.String path, java.lang.String query, java.lang.String fragment)
           
 void clear()
           
 boolean equals(java.lang.Object obj)
           
 boolean equals(URIx other)
           
 java.lang.String getAuthority()
           
 java.lang.String getAuthority(boolean encoded)
           
 URIx getBaseURI()
           
static URIx getBaseURI(URIx uri)
           
 java.lang.String getFragment()
           
 java.lang.String getFragment(boolean encoded)
           
 java.lang.String getHost()
           
 java.lang.String getHost(boolean encoded)
           
 URIx getNestedURI()
           
 java.lang.String getPassword()
           
 java.lang.String getPassword(boolean encoded)
           
 java.lang.String getPath()
           
 java.lang.String getPath(boolean encoded)
           
 int getPort()
           
 java.lang.String getQuery()
           
 java.lang.String getQuery(boolean encoded)
           
 java.lang.String getRawFragment()
           
 java.lang.String getRawHost()
           
 java.lang.String getRawPassword()
           
 java.lang.String getRawPath()
           
 java.lang.String getRawQuery()
           
 java.lang.String getRawUserName()
           
 URIxScheme getScheme()
           
 java.lang.String getSchemeSpecificPart()
           
 java.lang.String getSchemeSpecificPart(boolean encoded)
           
static java.lang.String getSchemeStr(java.lang.String uri)
           
 java.util.ArrayList<URIx> getURIStack()
           
static java.util.ArrayList<URIx> getURIStack(URIx uri)
           
 java.lang.String getUserInfo()
           
 java.lang.String getUserInfo(boolean encoded)
           
 java.lang.String getUserName()
           
 java.lang.String getUserName(boolean encoded)
           
static boolean isInString(char a, java.lang.String str)
           
 boolean isRelative()
           
 boolean isSchemeSupported(java.lang.String scheme)
           
 boolean isZip()
           
static URIx merge(URIx base, java.io.File relPath)
           
static URIx merge(URIx base, java.lang.String relPath)
           
static URIx merge(URIx base, URIx relative)
          Merges two URIs
static java.lang.String percentDecode(java.lang.String str)
           
static java.lang.String percentEncode(java.lang.String str, java.lang.String reservedChars)
           
 void set(java.lang.String uri)
           
 void set(URIx uri)
           
 void setAuthority(java.lang.String authority)
           
 void setBaseURI(URIx base)
           
static void setEncodeByDefault(boolean encode)
           
 void setFragment(java.lang.String fragment)
           
 void setHost(java.lang.String host)
           
 void setNestedURI(URIx nestedURI)
           
 void setPassword(java.lang.String password)
           
 void setPath(java.lang.String path)
           
 void setPort(int port)
           
 void setQuery(java.lang.String query)
           
 void setScheme(java.lang.String scheme)
           
 void setScheme(URIxScheme scheme)
           
 void setSchemeSpecificPart(java.lang.String ssp)
           
 void setUserInfo(java.lang.String userInfo)
           
 void setUserName(java.lang.String userName)
           
 java.lang.String toString()
           
 java.lang.String toString(boolean encoded)
           
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

URIx

public URIx()

URIx

public URIx(URIx uri)

URIx

public URIx(java.lang.String uri)
     throws URIxSyntaxException
Throws:
URIxSyntaxException

URIx

public URIx(java.io.File file)

URIx

public URIx(java.lang.String scheme,
            java.lang.String host,
            java.lang.String path)
     throws URIxSyntaxException
Throws:
URIxSyntaxException

URIx

public URIx(URIxScheme scheme,
            java.lang.String host,
            java.lang.String path)

URIx

public URIx(java.lang.String scheme,
            java.lang.String userInfo,
            java.lang.String host,
            java.lang.String path)
     throws URIxSyntaxException
Throws:
URIxSyntaxException

URIx

public URIx(java.lang.String scheme,
            URIx nestedURI,
            java.lang.String fragment)
     throws URIxSyntaxException
Throws:
URIxSyntaxException

URIx

public URIx(java.lang.String scheme,
            java.lang.String userInfo,
            java.lang.String host,
            int port,
            java.lang.String path,
            java.lang.String query,
            java.lang.String fragment)
     throws URIxSyntaxException
Throws:
URIxSyntaxException
Method Detail

set

public void set(URIx uri)

clear

public void clear()

isSchemeSupported

public boolean isSchemeSupported(java.lang.String scheme)

buildURI

public static void buildURI(java.lang.StringBuilder sb,
                            java.lang.String scheme,
                            java.lang.String userName,
                            java.lang.String password,
                            java.lang.String host,
                            int port,
                            java.lang.String path,
                            java.lang.String query,
                            java.lang.String fragment)

getRawUserName

public java.lang.String getRawUserName()

getUserName

public java.lang.String getUserName()

getUserName

public java.lang.String getUserName(boolean encoded)

setUserName

public void setUserName(java.lang.String userName)

getRawPassword

public java.lang.String getRawPassword()

getPassword

public java.lang.String getPassword()

getPassword

public java.lang.String getPassword(boolean encoded)

setPassword

public void setPassword(java.lang.String password)

getRawHost

public java.lang.String getRawHost()

getHost

public java.lang.String getHost()

getHost

public java.lang.String getHost(boolean encoded)

setHost

public void setHost(java.lang.String host)

getPort

public int getPort()

setPort

public void setPort(int port)

getRawPath

public java.lang.String getRawPath()

getPath

public java.lang.String getPath()

getPath

public java.lang.String getPath(boolean encoded)

setPath

public void setPath(java.lang.String path)

getRawQuery

public java.lang.String getRawQuery()

getQuery

public java.lang.String getQuery()

getQuery

public java.lang.String getQuery(boolean encoded)

setQuery

public void setQuery(java.lang.String query)

getNestedURI

public URIx getNestedURI()

setNestedURI

public void setNestedURI(URIx nestedURI)

getRawFragment

public java.lang.String getRawFragment()

getFragment

public java.lang.String getFragment()

getFragment

public java.lang.String getFragment(boolean encoded)

setFragment

public void setFragment(java.lang.String fragment)

setScheme

public void setScheme(URIxScheme scheme)

setScheme

public void setScheme(java.lang.String scheme)
               throws URIxSyntaxException
Throws:
URIxSyntaxException

getUserInfo

public java.lang.String getUserInfo()

getUserInfo

public java.lang.String getUserInfo(boolean encoded)

setUserInfo

public void setUserInfo(java.lang.String userInfo)

getAuthority

public java.lang.String getAuthority()

getAuthority

public java.lang.String getAuthority(boolean encoded)

setAuthority

public void setAuthority(java.lang.String authority)

getSchemeSpecificPart

public java.lang.String getSchemeSpecificPart()

getSchemeSpecificPart

public java.lang.String getSchemeSpecificPart(boolean encoded)

setSchemeSpecificPart

public void setSchemeSpecificPart(java.lang.String ssp)
                           throws URIxSyntaxException
Throws:
URIxSyntaxException

percentEncode

public static java.lang.String percentEncode(java.lang.String str,
                                             java.lang.String reservedChars)

percentDecode

public static java.lang.String percentDecode(java.lang.String str)

set

public void set(java.lang.String uri)
         throws URIxSyntaxException
Throws:
URIxSyntaxException

isInString

public static boolean isInString(char a,
                                 java.lang.String str)

getSchemeStr

public static java.lang.String getSchemeStr(java.lang.String uri)

getScheme

public URIxScheme getScheme()

buildURI

public static void buildURI(java.lang.StringBuilder sb,
                            java.lang.String scheme,
                            java.lang.String ssp,
                            java.lang.String fragment)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

toString

public java.lang.String toString(boolean encoded)

setBaseURI

public void setBaseURI(URIx base)

getBaseURI

public URIx getBaseURI()

getURIStack

public java.util.ArrayList<URIx> getURIStack()

getURIStack

public static java.util.ArrayList<URIx> getURIStack(URIx uri)

isRelative

public boolean isRelative()

setEncodeByDefault

public static void setEncodeByDefault(boolean encode)

merge

public static URIx merge(URIx base,
                         URIx relative)
Merges two URIs

Parameters:
base -
relative -
Returns:
merged URI
Throws:
URIxSyntaxException

merge

public static URIx merge(URIx base,
                         java.io.File relPath)

merge

public static URIx merge(URIx base,
                         java.lang.String relPath)

isZip

public boolean isZip()

getBaseURI

public static URIx getBaseURI(URIx uri)

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

equals

public boolean equals(URIx other)