public class IPv4AddrIV<V extends BigdataLiteral> extends AbstractLiteralIV<V,IPv4Address> implements Serializable, org.openrdf.model.Literal
byte[]
, which is then used directly in the IV key (after the
flags).
Note: Binary compatibility for this class was broken by BLZG-1507.
(Implement support for DTE extension types for URIs)
,
Serialized Formflags
Constructor and Description |
---|
IPv4AddrIV(IPv4Address value)
Ctor with internal value specified.
|
IPv4AddrIV(String hostAddress)
Ctor with host address specified.
|
Modifier and Type | Method and Description |
---|---|
int |
_compareTo(IV o)
Compare two
IV s having the same intrinsic datatype. |
V |
asValue(LexiconRelation lex)
If the value is not already cached, then inflate an inline RDF value to a
BigdataValue and cache it on a private field. |
int |
byteLength()
The byte length of the encoded
IV . |
IV<V,IPv4Address> |
clone(boolean clearCache)
Return a copy of this
IV . |
boolean |
equals(Object o)
Two
IPv4AddrIV are equal if their InetAddresses are equal. |
DTEExtension |
getDTEX()
IFF
IV.getDTE() returns DTE.Extension then this method will
report the DTEExtension value that specifies the intrinsic
datatype for this IV. |
IPv4Address |
getInlineValue()
Return the Java
Object corresponding to the inline value. |
static Matcher |
getIPv4Matcher(String addr) |
String |
getLabel()
Implement
Literal.getLabel() . |
int |
hashCode()
Return a hash code based on the value of the point in the value space.
|
String |
toString() |
booleanValue, byteValue, calendarValue, decimalValue, doubleValue, floatValue, getDatatype, getLanguage, integerValue, intValue, longValue, needsMaterialization, shortValue, stringValue
isInline
compareTo, encode, flags, getDTE, getDTE, getInternalValueTypeEnum, getValue, getValueCache, getVTE, getVTE, hasValue, isBigNumeric, isBNode, isExtension, isExtension, isFixedNumeric, isFloatingPointNumeric, isInline, isLiteral, isNullIV, isNumeric, isResource, isSignedNumeric, isStatement, isUnsignedNumeric, isURI, isVocabulary, setValue, toFlags
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
booleanValue, byteValue, calendarValue, decimalValue, doubleValue, floatValue, getDatatype, getLanguage, integerValue, intValue, longValue, shortValue
encode, flags, getDTE, getVTE, isBigNumeric, isBNode, isExtension, isFixedNumeric, isFloatingPointNumeric, isInline, isLiteral, isNullIV, isNumeric, isResource, isSignedNumeric, isStatement, isUnsignedNumeric, isURI, isVocabulary
compareTo
public IPv4AddrIV(IPv4Address value)
public IPv4AddrIV(String hostAddress) throws UnknownHostException
UnknownHostException
- if not parsable as an IPv4 address.public IV<V,IPv4Address> clone(boolean clearCache)
IVCache
IV
.
Note: This method exists to defeat the hard reference from the IV
to the cached BigdataValue
in order to avoid a memory leak when
the IV
is used as the key in a weak value cache whose value is
the BigdataValue
. Therefore, certain IV
implementations
MAY return this when they are used for limited collections. The
vocabulary IVs are the primary example. For the same reason, we do not
need to recursively break the link from the IV
to the
BigdataValue
for IV
s which embed other IV
s.
clone
in interface IVCache<V extends BigdataLiteral,IPv4Address>
clearCache
- When true
the cached reference (if any) will NOT
be set on the copy.(Thread-local
cache combined with unbounded thread pools causes effective memory
leak)
public DTEExtension getDTEX()
IV
IV.getDTE()
returns DTE.Extension
then this method will
report the DTEExtension
value that specifies the intrinsic
datatype for this IV.getDTEX
in interface IV<V extends BigdataLiteral,IPv4Address>
getDTEX
in class AbstractIV<V extends BigdataLiteral,IPv4Address>
(Implement support for DTE extension types for URIs)
,
( DTEExtension for compressed timestamp)
public IPv4Address getInlineValue() throws UnsupportedOperationException
IV
Object
corresponding to the inline value.getInlineValue
in interface IV<V extends BigdataLiteral,IPv4Address>
Object
.UnsupportedOperationException
- unless the RDF value is inline.public V asValue(LexiconRelation lex)
IVCache
BigdataValue
and cache it on a private field.
Note: Query plans are responsible for ensuring that IV
s have been
materialized before operators are evaluated which invoke this method.
This pattern ensures that efficient batch operators are used to
materialize Value
s, and thereby avoids heavy RMI overhead in
scale-out, and provides operators which use IVCache.getValue()
with a
simple method signature which does not require access to the lexicon.
Query plans are also responsible for dropping variables once they are no
longer needed or, in the case of large values and BLOBs, dropping the
cached BigdataValue
when possible in order to avoid excess
network and heap overhead.
asValue
in interface IVCache<V extends BigdataLiteral,IPv4Address>
lex
- The lexicon relation (this is required in order to access the
BigdataValueFactory
for the namespace associated with
lexicon when we materialize an inline IV
).BigdataValue
.public int byteLength()
IV
IV
.byteLength
in interface IV<V extends BigdataLiteral,IPv4Address>
public String toString()
toString
in class AbstractLiteralIV<V extends BigdataLiteral,IPv4Address>
public int hashCode()
AbstractIV
Note: The IV
implementations typically DO NOT return hash codes
that are consistent with BigdataValue#hashCode()
. Therefore you
MUST NOT mix IV
s and BigdataValue
s in the keys of a map
or the values of a set.
hashCode
in interface org.openrdf.model.Literal
hashCode
in class AbstractIV<V extends BigdataLiteral,IPv4Address>
public String getLabel()
AbstractLiteralIV
Literal.getLabel()
.getLabel
in interface org.openrdf.model.Literal
getLabel
in class AbstractLiteralIV<V extends BigdataLiteral,IPv4Address>
public boolean equals(Object o)
IPv4AddrIV
are equal if their InetAddresses are equal.equals
in interface org.openrdf.model.Literal
equals
in class AbstractIV<V extends BigdataLiteral,IPv4Address>
public int _compareTo(IV o)
AbstractIV
IV
s having the same intrinsic datatype._compareTo
in class AbstractIV<V extends BigdataLiteral,IPv4Address>
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.