Package uk.num.numlib.util
Class BaseLookupGenerator
- java.lang.Object
-
- uk.num.numlib.util.BaseLookupGenerator
-
- All Implemented Interfaces:
LookupGenerator
- Direct Known Subclasses:
DomainLookupGenerator,EmailLookupGenerator,URLLookupGenerator
public abstract class BaseLookupGenerator extends java.lang.Object implements LookupGenerator
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface uk.num.numlib.util.LookupGenerator
LookupGenerator.NumUriComponents, LookupGenerator.TrailingDot
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.Stringbranchprotected java.lang.Stringdomainstatic java.lang.StringHTTP_PROTOCOLstatic java.lang.StringHTTPS_PROTOCOLstatic java.lang.StringNUM_PROTOCOLprotected java.lang.StringnumId
-
Constructor Summary
Constructors Constructor Description BaseLookupGenerator(@NonNull java.lang.String numId)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetHostedLocation(int moduleNumber)java.lang.StringgetIndependentLocation(int moduleNumber)java.lang.StringgetPopulatorLocation(int moduleNumber)java.lang.StringgetRootHostedLocation(int moduleNumber)java.lang.StringgetRootHostedLocationNoModuleNumber(LookupGenerator.TrailingDot addTrailingDot)Note - this method does not return a trailing dotjava.lang.StringgetRootIndependentLocation(int moduleNumber)java.lang.StringgetRootIndependentLocationNoModuleNumber(LookupGenerator.TrailingDot addTrailingDot)Note - this method does not return a trailing dotbooleanisDomainRoot()protected static java.lang.StringnormaliseDomainName(@NonNull java.lang.String numId)Convert a domain name or URL into a normalised name by removing 'www.' and any trailing '.'.protected static java.lang.StringnormalisePath(java.lang.String path)Accept the 'path' part of a URL and convert it to a format for use in NUM Protocol Queries.static LookupGenerator.NumUriComponentsparseNumUriString(@NonNull java.lang.String possibleNumUri)Attempt to parse a NUM URI String into its components.protected java.lang.StringtransformBranch(java.lang.String s)Convert "foo/bar" into "bar.foo"
-
-
-
Field Detail
-
NUM_PROTOCOL
public static final java.lang.String NUM_PROTOCOL
- See Also:
- Constant Field Values
-
HTTPS_PROTOCOL
public static final java.lang.String HTTPS_PROTOCOL
- See Also:
- Constant Field Values
-
HTTP_PROTOCOL
public static final java.lang.String HTTP_PROTOCOL
- See Also:
- Constant Field Values
-
numId
protected final java.lang.String numId
-
branch
protected java.lang.String branch
-
domain
protected java.lang.String domain
-
-
Method Detail
-
normaliseDomainName
protected static java.lang.String normaliseDomainName(@NonNull @NonNull java.lang.String numId)Convert a domain name or URL into a normalised name by removing 'www.' and any trailing '.'.- Parameters:
numId- java.lang.String The Not Null domain name string or URL.- Returns:
- A normalised java.lang.String domain name.
-
normalisePath
protected static java.lang.String normalisePath(java.lang.String path)
Accept the 'path' part of a URL and convert it to a format for use in NUM Protocol Queries. I.e. split by '/' and '.', reverse the results and join with '.', prefix with an underscore and replace all spaces by underscores.- Parameters:
path- java.lang.String the path part of the URL - i.e. the result of URL.getPath()- Returns:
- java.lang.String the normalised path.
-
parseNumUriString
public static LookupGenerator.NumUriComponents parseNumUriString(@NonNull @NonNull java.lang.String possibleNumUri)
Attempt to parse a NUM URI String into its components.- Parameters:
possibleNumUri- a String- Returns:
- NumUriComponents
-
getIndependentLocation
public java.lang.String getIndependentLocation(int moduleNumber) throws NumInvalidParameterException- Specified by:
getIndependentLocationin interfaceLookupGenerator- Throws:
NumInvalidParameterException
-
getHostedLocation
public java.lang.String getHostedLocation(int moduleNumber) throws NumInvalidParameterException- Specified by:
getHostedLocationin interfaceLookupGenerator- Throws:
NumInvalidParameterException
-
isDomainRoot
public boolean isDomainRoot()
- Specified by:
isDomainRootin interfaceLookupGenerator
-
transformBranch
protected java.lang.String transformBranch(java.lang.String s)
Convert "foo/bar" into "bar.foo"- Parameters:
s- the branch part of a location specifier- Returns:
- the transformed branch part
-
getPopulatorLocation
public java.lang.String getPopulatorLocation(int moduleNumber) throws NumInvalidParameterException- Specified by:
getPopulatorLocationin interfaceLookupGenerator- Throws:
NumInvalidParameterException
-
getRootIndependentLocation
public java.lang.String getRootIndependentLocation(int moduleNumber) throws NumInvalidParameterException- Specified by:
getRootIndependentLocationin interfaceLookupGenerator- Throws:
NumInvalidParameterException
-
getRootHostedLocation
public java.lang.String getRootHostedLocation(int moduleNumber) throws NumInvalidParameterException- Specified by:
getRootHostedLocationin interfaceLookupGenerator- Throws:
NumInvalidParameterException
-
getRootIndependentLocationNoModuleNumber
public java.lang.String getRootIndependentLocationNoModuleNumber(LookupGenerator.TrailingDot addTrailingDot)
Note - this method does not return a trailing dot- Specified by:
getRootIndependentLocationNoModuleNumberin interfaceLookupGenerator- Returns:
- String
-
getRootHostedLocationNoModuleNumber
public java.lang.String getRootHostedLocationNoModuleNumber(LookupGenerator.TrailingDot addTrailingDot)
Note - this method does not return a trailing dot- Specified by:
getRootHostedLocationNoModuleNumberin interfaceLookupGenerator- Returns:
- String
-
-