From: <mrp...@us...> - 2010-07-26 19:13:59
|
Revision: 3297 http://bigdata.svn.sourceforge.net/bigdata/?rev=3297&view=rev Author: mrpersonick Date: 2010-07-26 19:13:50 +0000 (Mon, 26 Jul 2010) Log Message: ----------- fixing bnodes, moving extensions to samples Modified Paths: -------------- branches/LEXICON_REFACTOR_BRANCH/.classpath branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/DefaultExtensionFactory.java branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/IExtensionFactory.java branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/LexiconConfiguration.java branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/NumericBNodeIV.java branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/UUIDBNodeIV.java branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/lexicon/LexiconRelation.java Removed Paths: ------------- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/ColorsEnumExtension.java branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/EpochExtension.java Modified: branches/LEXICON_REFACTOR_BRANCH/.classpath =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/.classpath 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/.classpath 2010-07-26 19:13:50 UTC (rev 3297) @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry path="bigdata-rdf/src/java" kind="src"/> + <classpathentry path="bigdata-rdf/src/samples" kind="src"/> <classpathentry path="bigdata-bsbm/src/test" kind="src"/> <classpathentry path="dsi-utils/src/java" kind="src"/> <classpathentry path="bigdata-bsbm/src/java" kind="src"/> Deleted: branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/ColorsEnumExtension.java =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/ColorsEnumExtension.java 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/ColorsEnumExtension.java 2010-07-26 19:13:50 UTC (rev 3297) @@ -1,169 +0,0 @@ -/** - -Copyright (C) SYSTAP, LLC 2006-2010. All rights reserved. - -Contact: - SYSTAP, LLC - 4501 Tower Road - Greensboro, NC 27410 - lic...@bi... - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; version 2 of the License. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -*/ - -package com.bigdata.rdf.internal; - -import org.openrdf.model.Literal; -import org.openrdf.model.URI; -import org.openrdf.model.Value; -import org.openrdf.model.impl.URIImpl; -import com.bigdata.rdf.model.BigdataURI; -import com.bigdata.rdf.model.BigdataValue; -import com.bigdata.rdf.model.BigdataValueFactory; -import com.bigdata.rdf.store.BD; - -/** - * Example of how to do a custom enum and map that enum over a byte using a - * native inline {@link XSDByteIV}. - */ -public class ColorsEnumExtension<V extends BigdataValue> implements IExtension<V> { - - /** - * The datatype URI for the colors enum extension. - */ - public static final URI COLOR = new URIImpl(BD.NAMESPACE + "Color"); - - private BigdataURI color; - - public ColorsEnumExtension() { - - } - - public void resolveDatatype(final IDatatypeURIResolver resolver) { - - this.color = resolver.resolve(COLOR); - - } - - public BigdataURI getDatatype() { - - return color; - - } - - /** - * Attempts to convert the supplied RDF value into a colors enum - * representation. Tests for a literal value with the correct datatype - * that can be converted to one of the colors in the {@link Color} enum - * based on the string value of the literal's label. Each {@link Color} - * in the enum maps to a particular byte. This byte is encoded in a - * delegate {@link XSDByteIV}, and an {@link ExtensionIV} is returned that - * wraps the native type. - */ - public ExtensionIV createIV(final Value value) { - - if (value instanceof Literal == false) - throw new IllegalArgumentException(); - - final Literal l = (Literal) value; - - if (l.getDatatype() == null || !color.equals(l.getDatatype())) - throw new IllegalArgumentException(); - - final String s = value.stringValue(); - - final Color c = Enum.valueOf(Color.class, s); - - // not a valid color - if (c == null) - return null; - - final AbstractLiteralIV delegate = new XSDByteIV(c.getByte()); - - return new ExtensionIV(delegate, (TermId) getDatatype().getIV()); - - } - - /** - * Attempt to convert the {@link AbstractLiteralIV#byteValue()} back into - * a {@link Color}, and then use the string value of the {@link Color} to - * create an RDF literal. - */ - public V asValue(final ExtensionIV iv, final BigdataValueFactory vf) { - - final byte b = iv.getDelegate().byteValue(); - - final Color c = Color.valueOf(b); - - if (c == null) - throw new RuntimeException("bad color got encoded somehow"); - - return (V) vf.createLiteral(c.toString(), color); - - } - - /** - * Simple demonstration enum for some common colors. Can fit up to 256 enum - * values into an enum projected onto a byte. - */ - public enum Color { - - Red((byte) 0), - Blue((byte) 1), - Green((byte) 2), - Yellow((byte) 3), - Orange((byte) 4), - Purple((byte) 5), - Black((byte) 6), - White((byte) 7), - Brown((byte) 8); - - private Color(final byte b) { - this.b = b; - } - - static final public Color valueOf(final byte b) { - switch (b) { - case 0: - return Red; - case 1: - return Blue; - case 2: - return Green; - case 3: - return Yellow; - case 4: - return Orange; - case 5: - return Purple; - case 6: - return Black; - case 7: - return White; - case 8: - return Brown; - default: - throw new IllegalArgumentException(Byte.toString(b)); - } - } - - private final byte b; - - public byte getByte() { - return b; - } - - } - -} Modified: branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/DefaultExtensionFactory.java =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/DefaultExtensionFactory.java 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/DefaultExtensionFactory.java 2010-07-26 19:13:50 UTC (rev 3297) @@ -1,9 +1,7 @@ package com.bigdata.rdf.internal; /** - * Simple {@link IExtensionFactory} implementation that creates two - * {@link IExtension}s - the {@link EpochExtension} and the - * {@link ColorsEnumExtension}. + * Empty {@link IExtensionFactory}. */ public class DefaultExtensionFactory implements IExtensionFactory { @@ -12,8 +10,6 @@ public DefaultExtensionFactory() { extensions = new IExtension[] { - new EpochExtension(), - new ColorsEnumExtension() }; } Deleted: branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/EpochExtension.java =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/EpochExtension.java 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/EpochExtension.java 2010-07-26 19:13:50 UTC (rev 3297) @@ -1,110 +0,0 @@ -/** - -Copyright (C) SYSTAP, LLC 2006-2010. All rights reserved. - -Contact: - SYSTAP, LLC - 4501 Tower Road - Greensboro, NC 27410 - lic...@bi... - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; version 2 of the License. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -*/ - -package com.bigdata.rdf.internal; - -import org.openrdf.model.Literal; -import org.openrdf.model.URI; -import org.openrdf.model.Value; -import org.openrdf.model.datatypes.XMLDatatypeUtil; -import org.openrdf.model.impl.URIImpl; -import com.bigdata.rdf.model.BigdataURI; -import com.bigdata.rdf.model.BigdataValue; -import com.bigdata.rdf.model.BigdataValueFactory; -import com.bigdata.rdf.store.BD; - -/** - * This implementation of {@link IExtension} implements inlining for literals - * that represent time in milliseconds since the epoch. The milliseconds are - * encoded as an inline long. - */ -public class EpochExtension<V extends BigdataValue> implements IExtension<V> { - - /** - * The datatype URI for the epoch extension. - */ - public static final transient URI EPOCH = new URIImpl(BD.NAMESPACE + "Epoch"); - - private BigdataURI epoch; - - public EpochExtension() { - } - - public void resolveDatatype(final IDatatypeURIResolver resolver) { - - this.epoch = resolver.resolve(EPOCH); - - } - - public BigdataURI getDatatype() { - - return epoch; - - } - - /** - * Attempts to convert the supplied value into an epoch representation. - * Tests for a literal value with the correct datatype that can be converted - * to a positive long integer. Encodes the long in a delegate - * {@link XSDLongIV}, and returns an {@link ExtensionIV} to wrap the native - * type. - */ - public ExtensionIV createIV(final Value value) { - - if (value instanceof Literal == false) - throw new IllegalArgumentException(); - - final Literal lit = (Literal) value; - - final URI dt = lit.getDatatype(); - - if (dt == null || !EPOCH.stringValue().equals(dt.stringValue())) - throw new IllegalArgumentException(); - - final String s = value.stringValue(); - - final long l = XMLDatatypeUtil.parseLong(s); - - // can't have negative epoch values - if (l < 0) - return null; - - final AbstractLiteralIV delegate = new XSDLongIV(l); - - return new ExtensionIV(delegate, (TermId) getDatatype().getIV()); - - } - - /** - * Use the string value of the {@link ExtensionIV} (which defers to the - * string value of the native type) to create a literal with the epoch - * datatype. - */ - public V asValue(final ExtensionIV iv, final BigdataValueFactory vf) { - - return (V) vf.createLiteral(iv.stringValue(), epoch); - - } - -} Modified: branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/IExtensionFactory.java =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/IExtensionFactory.java 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/IExtensionFactory.java 2010-07-26 19:13:50 UTC (rev 3297) @@ -27,7 +27,7 @@ /** * IExtensionFactories are responsible for enumerating what extensions are * supported for a particular database configuration. Bigdata comes packaged - * with a {@link DefaultExtensionFactory} that supplies two starter extensions - + * with a {@link SampleExtensionFactory} that supplies two starter extensions - * the {@link EpochExtension} (for representing time since the epoch as a long * integer) and the {@link ColorsEnumExtension} (a sample extension for how to * represent an enumeration via inline literals). Modified: branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/LexiconConfiguration.java =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/LexiconConfiguration.java 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/LexiconConfiguration.java 2010-07-26 19:13:50 UTC (rev 3297) @@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -*/ + */ /* * Created July 10, 2010 */ @@ -39,10 +39,8 @@ import com.bigdata.rdf.model.BigdataValue; import com.bigdata.rdf.model.BigdataValueFactory; - /** - * An object which describes which kinds of RDF Values are inlined into the - * statement indices and how other RDF Values are coded into the lexicon. + * An object which describes which kinds of RDF Values are inlined into the statement indices and how other RDF Values are coded into the lexicon. * * @author <a href="mailto:tho...@us...">Bryan Thompson</a> * @version $Id$ @@ -50,21 +48,18 @@ * @todo large literal size boundary. * @todo other configuration options. */ -public class LexiconConfiguration<V extends BigdataValue> - implements ILexiconConfiguration { - +public class LexiconConfiguration<V extends BigdataValue> implements ILexiconConfiguration { + private boolean inlineLiterals, inlineBNodes; - + private Map<TermId, IExtension> termIds; - + private Map<String, IExtension> datatypes; - - public LexiconConfiguration(final boolean inlineLiterals, - final boolean inlineBNodes, - final IExtensionFactory xFactory) { + + public LexiconConfiguration(final boolean inlineLiterals, final boolean inlineBNodes, final IExtensionFactory xFactory) { this.inlineLiterals = inlineLiterals; this.inlineBNodes = inlineBNodes; - + termIds = new HashMap<TermId, IExtension>(); datatypes = new HashMap<String, IExtension>(); for (IExtension extension : xFactory.getExtensions()) { @@ -74,59 +69,58 @@ termIds.put((TermId) datatype.getIV(), extension); datatypes.put(datatype.stringValue(), extension); } - + } - + public V asValue(final ExtensionIV iv, final BigdataValueFactory vf) { final TermId datatype = iv.getExtensionDatatype(); return (V) termIds.get(datatype).asValue(iv, vf); } - + public IV createInlineIV(final Value value) { // we know right away we can't handle URIs if (value instanceof URI) return null; - + if (value instanceof Literal) { - + final Literal l = (Literal) value; - + final URI datatype = l.getDatatype(); - + // not a datatyped literal if (datatype == null) return null; if (datatypes.containsKey(datatype.stringValue())) { - + try { - - final IExtension xFactory = - datatypes.get(datatype.stringValue()); - + + final IExtension xFactory = datatypes.get(datatype.stringValue()); + final IV iv = xFactory.createIV(value); - + if (iv != null && value instanceof BigdataValue) ((BigdataValue) value).setIV(iv); - + return iv; - + } catch (Exception ex) { - + /* * Some sort of parse error in the literal value most * likely. Resort to term identifiers. */ return null; - + } - + } - + // get the native DTE final DTE dte = DTE.valueOf(datatype); - + // no native DTE for this datatype if (dte == null) return null; @@ -134,159 +128,165 @@ // check to see if we are inlining literals of this type if (!isInline(VTE.LITERAL, dte)) return null; - + final String v = value.stringValue(); - + IV iv = null; - + try { - - switch(dte) { - case XSDBoolean: - iv = new XSDBooleanIV(XMLDatatypeUtil.parseBoolean(v)); - break; - case XSDByte: - iv = new XSDByteIV(XMLDatatypeUtil.parseByte(v)); - break; - case XSDShort: - iv = new XSDShortIV(XMLDatatypeUtil.parseShort(v)); - break; - case XSDInt: - iv = new XSDIntIV(XMLDatatypeUtil.parseInt(v)); - break; - case XSDLong: - iv = new XSDLongIV(XMLDatatypeUtil.parseLong(v)); - break; - case XSDFloat: - iv = new XSDFloatIV(XMLDatatypeUtil.parseFloat(v)); - break; - case XSDDouble: - iv = new XSDDoubleIV(XMLDatatypeUtil.parseDouble(v)); - break; - case XSDInteger: - iv = new XSDIntegerIV(XMLDatatypeUtil.parseInteger(v)); - break; - case XSDDecimal: - iv = new XSDDecimalIV(XMLDatatypeUtil.parseDecimal(v)); - break; - case UUID: - iv = new UUIDLiteralIV(UUID.fromString(v)); - break; - default: - iv = null; + + switch (dte) { + case XSDBoolean: + iv = new XSDBooleanIV(XMLDatatypeUtil.parseBoolean(v)); + break; + case XSDByte: + iv = new XSDByteIV(XMLDatatypeUtil.parseByte(v)); + break; + case XSDShort: + iv = new XSDShortIV(XMLDatatypeUtil.parseShort(v)); + break; + case XSDInt: + iv = new XSDIntIV(XMLDatatypeUtil.parseInt(v)); + break; + case XSDLong: + iv = new XSDLongIV(XMLDatatypeUtil.parseLong(v)); + break; + case XSDFloat: + iv = new XSDFloatIV(XMLDatatypeUtil.parseFloat(v)); + break; + case XSDDouble: + iv = new XSDDoubleIV(XMLDatatypeUtil.parseDouble(v)); + break; + case XSDInteger: + iv = new XSDIntegerIV(XMLDatatypeUtil.parseInteger(v)); + break; + case XSDDecimal: + iv = new XSDDecimalIV(XMLDatatypeUtil.parseDecimal(v)); + break; + case UUID: + iv = new UUIDLiteralIV(UUID.fromString(v)); + break; + default: + iv = null; } - + } catch (NumberFormatException ex) { - + // some dummy doesn't know how to format a number // default to term identifier for this term - + } - + if (iv != null && value instanceof BigdataValue) ((BigdataValue) value).setIV(iv); - + return iv; - + } else if (value instanceof BNode) { - + final BNode b = (BNode) value; - + final String id = b.getID(); - + final char c = id.charAt(0); - try { + if (c == 'u') { + + try { - final UUID uuid = UUID.fromString(id); + final UUID uuid = UUID.fromString(id.substring(1)); + + if (!uuid.toString().equals(id.substring(1))) + return null; + + if (!isInline(VTE.BNODE, DTE.UUID)) + return null; + + final IV iv = new UUIDBNodeIV(uuid); + + if (value instanceof BigdataValue) + ((BigdataValue) value).setIV(iv); + + return iv; + + } catch (Exception ex) { + + // string id could not be converted to a UUID + + } - if (!uuid.toString().equals(id)) - return null; + } else if (c == 'i') { - if (!isInline(VTE.BNODE, DTE.UUID)) - return null; - - final IV iv = new UUIDBNodeIV(uuid); - - if (value instanceof BigdataValue) - ((BigdataValue) value).setIV(iv); - - return iv; - - } catch (Exception ex) { - - // string id could not be converted to a UUID - - } - - try { + try { - final Integer i = Integer.valueOf(id); + final Integer i = Integer.valueOf(id.substring(1)); + + // cannot normalize id, needs to remain syntactically identical + if (!i.toString().equals(id.substring(1))) + return null; + + if (!isInline(VTE.BNODE, DTE.XSDInt)) + return null; + + final IV iv = new NumericBNodeIV(i); + + if (value instanceof BigdataValue) + ((BigdataValue) value).setIV(iv); + + return iv; + + } catch (Exception ex) { + + // string id could not be converted to an Integer + + } - // cannot normalize id, needs to remain syntactically identical - if (!i.toString().equals(id)) - return null; - - if (!isInline(VTE.BNODE, DTE.XSDInt)) - return null; - - final IV iv = new NumericBNodeIV(i); - - if (value instanceof BigdataValue) - ((BigdataValue) value).setIV(iv); - - return iv; - - } catch (Exception ex) { - - // string id could not be converted to an Integer - } } - + return null; - + } - + /** * See {@link ILexiconConfiguration#isInline(VTE, DTE)}. */ public boolean isInline(final VTE vte, final DTE dte) { - - switch(vte) { - case BNODE: - return inlineBNodes && isSupported(dte); - case LITERAL: - return inlineLiterals && isSupported(dte); - default: - return false; + + switch (vte) { + case BNODE: + return inlineBNodes && isSupported(dte); + case LITERAL: + return inlineLiterals && isSupported(dte); + default: + return false; } - + } - + private boolean isSupported(DTE dte) { - + switch (dte) { - case XSDBoolean: - case XSDByte: - case XSDShort: - case XSDInt: - case XSDLong: - case XSDFloat: - case XSDDouble: - case XSDInteger: - case XSDDecimal: - case UUID: - return true; - case XSDUnsignedByte: // none of the unsigneds are tested yet - case XSDUnsignedShort: // none of the unsigneds are tested yet - case XSDUnsignedInt: // none of the unsigneds are tested yet - case XSDUnsignedLong: // none of the unsigneds are tested yet - default: - return false; + case XSDBoolean: + case XSDByte: + case XSDShort: + case XSDInt: + case XSDLong: + case XSDFloat: + case XSDDouble: + case XSDInteger: + case XSDDecimal: + case UUID: + return true; + case XSDUnsignedByte: // none of the unsigneds are tested yet + case XSDUnsignedShort: // none of the unsigneds are tested yet + case XSDUnsignedInt: // none of the unsigneds are tested yet + case XSDUnsignedLong: // none of the unsigneds are tested yet + default: + return false; } - + } } Modified: branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/NumericBNodeIV.java =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/NumericBNodeIV.java 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/NumericBNodeIV.java 2010-07-26 19:13:50 UTC (rev 3297) @@ -60,7 +60,7 @@ @Override public String stringValue() { - return String.valueOf(id); + return 'i'+String.valueOf(id); } final public Integer getInlineValue() { Modified: branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/UUIDBNodeIV.java =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/UUIDBNodeIV.java 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/internal/UUIDBNodeIV.java 2010-07-26 19:13:50 UTC (rev 3297) @@ -64,7 +64,7 @@ @Override public String stringValue() { - return id.toString(); + return 'u'+id.toString(); } final public UUID getInlineValue() { Modified: branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/lexicon/LexiconRelation.java =================================================================== --- branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/lexicon/LexiconRelation.java 2010-07-26 18:16:07 UTC (rev 3296) +++ branches/LEXICON_REFACTOR_BRANCH/bigdata-rdf/src/java/com/bigdata/rdf/lexicon/LexiconRelation.java 2010-07-26 19:13:50 UTC (rev 3297) @@ -75,9 +75,6 @@ import com.bigdata.journal.IIndexManager; import com.bigdata.journal.IResourceLock; import com.bigdata.rawstore.Bytes; -import com.bigdata.rdf.internal.ColorsEnumExtension; -import com.bigdata.rdf.internal.DefaultExtensionFactory; -import com.bigdata.rdf.internal.EpochExtension; import com.bigdata.rdf.internal.IExtension; import com.bigdata.rdf.internal.IDatatypeURIResolver; import com.bigdata.rdf.internal.IExtensionFactory; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |