/* * Copyright Aduna (http://www.aduna-software.com/) (c) 2008. * * Licensed under the Aduna BSD-style license. */ package org.openrdf.sail.rdbms.model; import java.math.BigDecimal; import java.math.BigInteger; import javax.xml.datatype.XMLGregorianCalendar; import org.openrdf.model.Literal; import org.openrdf.model.URI; import org.openrdf.model.impl.LiteralImpl; /** * Wraps a {@link LiteralImpl} providing an internal id and version. * * @author James Leigh * */ public class RdbmsLiteral extends RdbmsValue implements Literal { private static final long serialVersionUID = -8213249522968522279L; private Literal lit; private URI predicate = null; public RdbmsLiteral(Literal lit, URI predicate) { this.lit = lit; this.predicate = predicate; } public RdbmsLiteral(Number id, Integer version, Literal lit, URI predicate) { super(id, version); this.lit = lit; this.predicate = predicate; } public boolean booleanValue() { return lit.booleanValue(); } public byte byteValue() { return lit.byteValue(); } public XMLGregorianCalendar calendarValue() { return lit.calendarValue(); } public BigDecimal decimalValue() { return lit.decimalValue(); } public double doubleValue() { return lit.doubleValue(); } public float floatValue() { return lit.floatValue(); } public URI getDatatype() { return lit.getDatatype(); } public URI getPredicate() { return predicate; } public void setPredicate(URI predicate) { this.predicate = predicate; } public String getLabel() { return lit.getLabel(); } public String getLanguage() { return lit.getLanguage(); } public BigInteger integerValue() { return lit.integerValue(); } public int intValue() { return lit.intValue(); } public long longValue() { return lit.longValue(); } public short shortValue() { return lit.shortValue(); } public String stringValue() { return lit.stringValue(); } @Override public String toString() { return lit.toString(); } @Override public boolean equals(Object other) { return lit.equals(other); } @Override public int hashCode() { return lit.hashCode(); } }