de.mguennewig.pobjects.metadata
Class IPv4NetworkType

java.lang.Object
  extended by de.mguennewig.pobjects.metadata.AbstractType
      extended by de.mguennewig.pobjects.metadata.ScalarType
          extended by de.mguennewig.pobjects.metadata.StringType
              extended by de.mguennewig.pobjects.metadata.IPv4NetworkType
All Implemented Interfaces:
Type

public class IPv4NetworkType
extends StringType

An IPv4 network of the form `d.d.d.d/n'.

Author:
Michael Günnewig
See Also:
IPv4Type

Field Summary
static int IPV4_NETWORK_LENGTH
           
static java.lang.String IPV4_NETWORK_PATTERN
           
 
Fields inherited from class de.mguennewig.pobjects.metadata.StringType
RESTRICT_TO_ALPHANUM, RESTRICT_TO_ANYTHING, RESTRICT_TO_CHARSET, RESTRICT_TO_NUMERIC, RESTRICT_TO_REGEXP
 
Fields inherited from interface de.mguennewig.pobjects.metadata.Type
CLASS_NAME, TYPE_NAME
 
Constructor Summary
IPv4NetworkType()
          Creates a new IPv4NetworkType.
IPv4NetworkType(int size)
          Creates a new IPv4NetworkType.
IPv4NetworkType(int size, int restrictTo, java.lang.String pattern, int minLength)
          Creates a new IPv4NetworkType.
 
Method Summary
 void checkSyntax(java.lang.String value)
          
 java.lang.String getIPv4Address(java.lang.String network)
          Returns the IPv4 address of the network.
 java.lang.String getNetmask(java.lang.String network)
          Returns the IPv4 network mask.
 
Methods inherited from class de.mguennewig.pobjects.metadata.StringType
checkConstraints, getErrorMsgKey, getJavaClass, getMaxFieldSize, getMinimumLength, getPattern, getRestrictTo, getSize, parseNative, setParam
 
Methods inherited from class de.mguennewig.pobjects.metadata.ScalarType
addMap, expand, getMap, getResult, getResultInc, isScalar, labelToValue, valueToLabel
 
Methods inherited from class de.mguennewig.pobjects.metadata.AbstractType
format, formatNative, getDescription, getTypeClass, name, parse, setDescription, setTypeClass
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

IPV4_NETWORK_PATTERN

public static final java.lang.String IPV4_NETWORK_PATTERN
See Also:
Constant Field Values

IPV4_NETWORK_LENGTH

public static final int IPV4_NETWORK_LENGTH
See Also:
Constant Field Values
Constructor Detail

IPv4NetworkType

public IPv4NetworkType()
Creates a new IPv4NetworkType.


IPv4NetworkType

public IPv4NetworkType(int size)
Creates a new IPv4NetworkType.


IPv4NetworkType

public IPv4NetworkType(int size,
                       int restrictTo,
                       java.lang.String pattern,
                       int minLength)
Creates a new IPv4NetworkType.

Method Detail

checkSyntax

public void checkSyntax(java.lang.String value)
                 throws PObjSyntaxException

Specified by:
checkSyntax in interface Type
Overrides:
checkSyntax in class StringType
Throws:
PObjSyntaxException

getIPv4Address

public final java.lang.String getIPv4Address(java.lang.String network)
Returns the IPv4 address of the network.

For the network 192.168.25.0/24 the returned IPv4 address is 192.168.25.0.

Throws:
java.lang.IllegalArgumentException - if the string is null, empty or does not represent a valid network.

getNetmask

public final java.lang.String getNetmask(java.lang.String network)
Returns the IPv4 network mask.

For the network 192.168.25.0/24 the returned network mask is 255.255.255.0.

Throws:
java.lang.IllegalArgumentException - if the string is null, empty or does not represent a valid network.