You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vxquery.apache.org by vi...@apache.org on 2012/06/11 12:50:53 UTC
svn commit: r1348792 [2/2] - in
/incubator/vxquery/branches/vxquery_algebricks: ./ vxquery-cli/
vxquery-cli/src/ vxquery-cli/src/main/ vxquery-cli/src/main/java/
vxquery-cli/src/main/java/org/ vxquery-cli/src/main/java/org/apache/
vxquery-cli/src/main/...
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AbstractNodeType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AbstractNodeType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AbstractNodeType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AbstractNodeType.java Mon Jun 11 10:50:49 2012
@@ -16,17 +16,9 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.types.processors.NotCastableCastProcessor;
-
abstract class AbstractNodeType implements NodeType {
@Override
public final boolean isAtomicType() {
return false;
}
-
- @Override
- public final CastProcessor getCastProcessor(XQType inputBaseType) {
- return NotCastableCastProcessor.INSTANCE_XPST0051;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyItemType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyItemType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyItemType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyItemType.java Mon Jun 11 10:50:49 2012
@@ -16,22 +16,9 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.types.processors.NotCastableCastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class AnyItemType implements ItemType {
public static final AnyItemType INSTANCE = new AnyItemType();
- private static final Filter<XDMValue> INSTANCE_OF_FILTER = new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- return value != null && value.getDMOKind().isItem();
- }
- };
-
private AnyItemType() {
}
@@ -39,14 +26,4 @@ public final class AnyItemType implement
public boolean isAtomicType() {
return false;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return INSTANCE_OF_FILTER;
- }
-
- @Override
- public CastProcessor getCastProcessor(XQType inputBaseType) {
- return NotCastableCastProcessor.INSTANCE_XPST0051;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyNodeType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyNodeType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyNodeType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyNodeType.java Mon Jun 11 10:50:49 2012
@@ -16,23 +16,9 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class AnyNodeType extends AbstractNodeType {
public static final AnyNodeType INSTANCE = new AnyNodeType();
- private static final Filter<XDMValue> INSTANCE_OF_FILTER = new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- if (value == null) {
- return false;
- }
- return value.getDMOKind().isNode();
- }
- };
-
private AnyNodeType() {
}
@@ -40,9 +26,4 @@ public final class AnyNodeType extends A
public NodeKind getNodeKind() {
return NodeKind.ANY;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return INSTANCE_OF_FILTER;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnySimpleType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnySimpleType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnySimpleType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnySimpleType.java Mon Jun 11 10:50:49 2012
@@ -16,25 +16,9 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.types.processors.NotCastableCastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class AnySimpleType implements SimpleType {
public static final SimpleType INSTANCE = new AnySimpleType();
- private static final Filter<XDMValue> INSTANCE_OF_FILTER = new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- if (value == null) {
- return true;
- }
- throw new UnsupportedOperationException();
- }
- };
-
private AnySimpleType() {
}
@@ -67,14 +51,4 @@ public final class AnySimpleType impleme
public boolean isSimpleType() {
return true;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return INSTANCE_OF_FILTER;
- }
-
- @Override
- public CastProcessor getCastProcessor(XQType inputBaseType) {
- return NotCastableCastProcessor.INSTANCE_XPST0051;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AnyType.java Mon Jun 11 10:50:49 2012
@@ -16,11 +16,6 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.types.processors.NotCastableCastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class AnyType implements ComplexType {
public static final SchemaType INSTANCE = new AnyType();
@@ -56,14 +51,4 @@ public final class AnyType implements Co
public boolean isSimpleType() {
return false;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return null;
- }
-
- @Override
- public CastProcessor getCastProcessor(XQType inputBaseType) {
- return NotCastableCastProcessor.INSTANCE_XPST0051;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AttributeType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AttributeType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AttributeType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/AttributeType.java Mon Jun 11 10:50:49 2012
@@ -16,12 +16,6 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.DMOKind;
-import org.apache.vxquery.v0datamodel.XDMNode;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class AttributeType extends AbstractNodeType {
public static final AttributeType ANYATTRIBUTE = new AttributeType(NameTest.STAR_NAMETEST,
BuiltinTypeRegistry.XS_ANY_ATOMIC);
@@ -46,21 +40,4 @@ public final class AttributeType extends
public SchemaType getContentType() {
return contentType;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- final Filter<XDMNode> nameTestMatchFilter = nameTest.createNameMatchFilter();
- return new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- if (value == null) {
- return false;
- }
- if (value.getDMOKind() != DMOKind.ATTRIBUTE_NODE) {
- return false;
- }
- return nameTestMatchFilter.accept((XDMNode) value);
- }
- };
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinAtomicType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinAtomicType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinAtomicType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinAtomicType.java Mon Jun 11 10:50:49 2012
@@ -16,36 +16,15 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.DMOKind;
-import org.apache.vxquery.v0datamodel.XDMAtomicValue;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
final class BuiltinAtomicType implements AtomicType {
private final int id;
private final SchemaType baseType;
private final DerivationProcess derivationProcess;
- private final CastProcessor castProcessor;
- private final Filter<XDMValue> instanceFilter;
- BuiltinAtomicType(int id, SimpleType baseType, DerivationProcess derivationProcess, CastProcessor castProcessor) {
+ BuiltinAtomicType(int id, SimpleType baseType, DerivationProcess derivationProcess) {
this.id = id;
this.baseType = baseType;
this.derivationProcess = derivationProcess;
- this.castProcessor = castProcessor;
- instanceFilter = new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- if (value.getDMOKind() != DMOKind.ATOMIC_VALUE) {
- return false;
- }
- XDMAtomicValue av = (XDMAtomicValue) value;
- AtomicType at = av.getAtomicType();
- return TypeUtils.isSubtypeTypeOf(at, BuiltinAtomicType.this);
- }
- };
}
@Override
@@ -79,16 +58,6 @@ final class BuiltinAtomicType implements
}
@Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return instanceFilter;
- }
-
- @Override
- public CastProcessor getCastProcessor(XQType inputBaseType) {
- return castProcessor;
- }
-
- @Override
public String toString() {
return String.valueOf(BuiltinTypeRegistry.INSTANCE.getTypeName(id));
}
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeRegistry.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeRegistry.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeRegistry.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeRegistry.java Mon Jun 11 10:50:49 2012
@@ -22,208 +22,147 @@ import java.util.Map;
import javax.xml.namespace.QName;
-import org.apache.vxquery.types.processors.AnyUriCastProcessor;
-import org.apache.vxquery.types.processors.Base64BinaryCastProcessor;
-import org.apache.vxquery.types.processors.BooleanCastProcessor;
-import org.apache.vxquery.types.processors.ByteCastProcessor;
-import org.apache.vxquery.types.processors.DateCastProcessor;
-import org.apache.vxquery.types.processors.DateTimeCastProcessor;
-import org.apache.vxquery.types.processors.DayTimeDurationCastProcessor;
-import org.apache.vxquery.types.processors.DecimalCastProcessor;
-import org.apache.vxquery.types.processors.DoubleCastProcessor;
-import org.apache.vxquery.types.processors.DurationCastProcessor;
-import org.apache.vxquery.types.processors.EntityCastProcessor;
-import org.apache.vxquery.types.processors.FloatCastProcessor;
-import org.apache.vxquery.types.processors.GDayCastProcessor;
-import org.apache.vxquery.types.processors.GMonthCastProcessor;
-import org.apache.vxquery.types.processors.GMonthDayCastProcessor;
-import org.apache.vxquery.types.processors.GYearCastProcessor;
-import org.apache.vxquery.types.processors.GYearMonthCastProcessor;
-import org.apache.vxquery.types.processors.HexBinaryCastProcessor;
-import org.apache.vxquery.types.processors.IntCastProcessor;
-import org.apache.vxquery.types.processors.IntegerCastProcessor;
-import org.apache.vxquery.types.processors.LanguageCastProcessor;
-import org.apache.vxquery.types.processors.LongCastProcessor;
-import org.apache.vxquery.types.processors.NCNameCastProcessor;
-import org.apache.vxquery.types.processors.NMTokenCastProcessor;
-import org.apache.vxquery.types.processors.NameCastProcessor;
-import org.apache.vxquery.types.processors.NegativeIntegerCastProcessor;
-import org.apache.vxquery.types.processors.NonNegativeIntegerCastProcessor;
-import org.apache.vxquery.types.processors.NonPositiveIntegerCastProcessor;
-import org.apache.vxquery.types.processors.NormalizedStringCastProcessor;
-import org.apache.vxquery.types.processors.NotCastableCastProcessor;
-import org.apache.vxquery.types.processors.PositiveIntegerCastProcessor;
-import org.apache.vxquery.types.processors.QNameCastProcessor;
-import org.apache.vxquery.types.processors.ShortCastProcessor;
-import org.apache.vxquery.types.processors.StringCastProcessor;
-import org.apache.vxquery.types.processors.TimeCastProcessor;
-import org.apache.vxquery.types.processors.TokenCastProcessor;
-import org.apache.vxquery.types.processors.UnsignedByteCastProcessor;
-import org.apache.vxquery.types.processors.UnsignedIntCastProcessor;
-import org.apache.vxquery.types.processors.UnsignedLongCastProcessor;
-import org.apache.vxquery.types.processors.UnsignedShortCastProcessor;
-import org.apache.vxquery.types.processors.UntypedAtomicCastProcessor;
-import org.apache.vxquery.types.processors.YearMonthDurationCastProcessor;
-
public final class BuiltinTypeRegistry {
public static final BuiltinAtomicType XS_ANY_ATOMIC = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_ANY_ATOMIC_TYPE_ID, AnySimpleType.INSTANCE, DerivationProcess.RESTRICTION,
- NotCastableCastProcessor.INSTANCE_XPST0080);
+ BuiltinTypeConstants.XS_ANY_ATOMIC_TYPE_ID, AnySimpleType.INSTANCE, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_STRING = new BuiltinAtomicType(BuiltinTypeConstants.XS_STRING_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, StringCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_NORMALIZED_STRING = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_NORMALIZED_STRING_TYPE_ID, XS_STRING, DerivationProcess.RESTRICTION,
- NormalizedStringCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_NORMALIZED_STRING_TYPE_ID, XS_STRING, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_TOKEN = new BuiltinAtomicType(BuiltinTypeConstants.XS_TOKEN_TYPE_ID,
- XS_NORMALIZED_STRING, DerivationProcess.RESTRICTION, TokenCastProcessor.INSTANCE);
+ XS_NORMALIZED_STRING, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_LANGUAGE = new BuiltinAtomicType(BuiltinTypeConstants.XS_LANGUAGE_TYPE_ID,
- XS_TOKEN, DerivationProcess.RESTRICTION, LanguageCastProcessor.INSTANCE);
+ XS_TOKEN, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_NMTOKEN = new BuiltinAtomicType(BuiltinTypeConstants.XS_NMTOKEN_TYPE_ID,
- XS_TOKEN, DerivationProcess.RESTRICTION, NMTokenCastProcessor.INSTANCE);
+ XS_TOKEN, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_NAME = new BuiltinAtomicType(BuiltinTypeConstants.XS_NAME_TYPE_ID,
- XS_TOKEN, DerivationProcess.RESTRICTION, NameCastProcessor.INSTANCE);
+ XS_TOKEN, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_NCNAME = new BuiltinAtomicType(BuiltinTypeConstants.XS_NCNAME_TYPE_ID,
- XS_NAME, DerivationProcess.RESTRICTION, NCNameCastProcessor.INSTANCE);
+ XS_NAME, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_ID = new BuiltinAtomicType(BuiltinTypeConstants.XS_ID_TYPE_ID, XS_NCNAME,
- DerivationProcess.RESTRICTION, null);
+ DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_IDREF = new BuiltinAtomicType(BuiltinTypeConstants.XS_IDREF_TYPE_ID,
- XS_NCNAME, DerivationProcess.RESTRICTION, null);
+ XS_NCNAME, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_ENTITY = new BuiltinAtomicType(BuiltinTypeConstants.XS_ENTITY_TYPE_ID,
- XS_NCNAME, DerivationProcess.RESTRICTION, EntityCastProcessor.INSTANCE);
+ XS_NCNAME, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_UNTYPED_ATOMIC = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_UNTYPED_ATOMIC_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION,
- UntypedAtomicCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_UNTYPED_ATOMIC_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_DATETIME = new BuiltinAtomicType(BuiltinTypeConstants.XS_DATETIME_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, DateTimeCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_DATE = new BuiltinAtomicType(BuiltinTypeConstants.XS_DATE_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, DateCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_TIME = new BuiltinAtomicType(BuiltinTypeConstants.XS_TIME_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, TimeCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_DURATION = new BuiltinAtomicType(BuiltinTypeConstants.XS_DURATION_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, DurationCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_YEAR_MONTH_DURATION = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_YEAR_MONTH_DURATION_TYPE_ID, XS_DURATION, DerivationProcess.RESTRICTION,
- YearMonthDurationCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_YEAR_MONTH_DURATION_TYPE_ID, XS_DURATION, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_DAY_TIME_DURATION = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_DAY_TIME_DURATION_TYPE_ID, XS_DURATION, DerivationProcess.RESTRICTION,
- DayTimeDurationCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_DAY_TIME_DURATION_TYPE_ID, XS_DURATION, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XSEXT_NUMERIC = new BuiltinAtomicType(
- BuiltinTypeConstants.XSEXT_NUMERIC_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION,
- DoubleCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XSEXT_NUMERIC_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_FLOAT = new BuiltinAtomicType(BuiltinTypeConstants.XS_FLOAT_TYPE_ID,
- XSEXT_NUMERIC, DerivationProcess.RESTRICTION, FloatCastProcessor.INSTANCE);
+ XSEXT_NUMERIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_DOUBLE = new BuiltinAtomicType(BuiltinTypeConstants.XS_DOUBLE_TYPE_ID,
- XSEXT_NUMERIC, DerivationProcess.RESTRICTION, DoubleCastProcessor.INSTANCE);
+ XSEXT_NUMERIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_DECIMAL = new BuiltinAtomicType(BuiltinTypeConstants.XS_DECIMAL_TYPE_ID,
- XSEXT_NUMERIC, DerivationProcess.RESTRICTION, DecimalCastProcessor.INSTANCE);
+ XSEXT_NUMERIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_INTEGER = new BuiltinAtomicType(BuiltinTypeConstants.XS_INTEGER_TYPE_ID,
- XS_DECIMAL, DerivationProcess.RESTRICTION, IntegerCastProcessor.INSTANCE);
+ XS_DECIMAL, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_NON_POSITIVE_INTEGER = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_NON_POSITIVE_INTEGER_TYPE_ID, XS_INTEGER, DerivationProcess.RESTRICTION,
- NonPositiveIntegerCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_NON_POSITIVE_INTEGER_TYPE_ID, XS_INTEGER, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_NEGATIVE_INTEGER = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_NEGATIVE_INTEGER_TYPE_ID, XS_NON_POSITIVE_INTEGER, DerivationProcess.RESTRICTION,
- NegativeIntegerCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_NEGATIVE_INTEGER_TYPE_ID, XS_NON_POSITIVE_INTEGER, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_LONG = new BuiltinAtomicType(BuiltinTypeConstants.XS_LONG_TYPE_ID,
- XS_INTEGER, DerivationProcess.RESTRICTION, LongCastProcessor.INSTANCE);
+ XS_INTEGER, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_INT = new BuiltinAtomicType(BuiltinTypeConstants.XS_INT_TYPE_ID, XS_LONG,
- DerivationProcess.RESTRICTION, IntCastProcessor.INSTANCE);
+ DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_SHORT = new BuiltinAtomicType(BuiltinTypeConstants.XS_SHORT_TYPE_ID,
- XS_INT, DerivationProcess.RESTRICTION, ShortCastProcessor.INSTANCE);
+ XS_INT, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_BYTE = new BuiltinAtomicType(BuiltinTypeConstants.XS_BYTE_TYPE_ID,
- XS_SHORT, DerivationProcess.RESTRICTION, ByteCastProcessor.INSTANCE);
+ XS_SHORT, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_NON_NEGATIVE_INTEGER = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_NON_NEGATIVE_INTEGER_TYPE_ID, XS_INTEGER, DerivationProcess.RESTRICTION,
- NonNegativeIntegerCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_NON_NEGATIVE_INTEGER_TYPE_ID, XS_INTEGER, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_UNSIGNED_LONG = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_UNSIGNED_LONG_TYPE_ID, XS_NON_NEGATIVE_INTEGER, DerivationProcess.RESTRICTION,
- UnsignedLongCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_UNSIGNED_LONG_TYPE_ID, XS_NON_NEGATIVE_INTEGER, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_UNSIGNED_INT = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_UNSIGNED_INT_TYPE_ID, XS_UNSIGNED_LONG, DerivationProcess.RESTRICTION,
- UnsignedIntCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_UNSIGNED_INT_TYPE_ID, XS_UNSIGNED_LONG, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_UNSIGNED_SHORT = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_UNSIGNED_SHORT_TYPE_ID, XS_UNSIGNED_INT, DerivationProcess.RESTRICTION,
- UnsignedShortCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_UNSIGNED_SHORT_TYPE_ID, XS_UNSIGNED_INT, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_UNSIGNED_BYTE = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_UNSIGNED_BYTE_TYPE_ID, XS_UNSIGNED_SHORT, DerivationProcess.RESTRICTION,
- UnsignedByteCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_UNSIGNED_BYTE_TYPE_ID, XS_UNSIGNED_SHORT, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_POSITIVE_INTEGER = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_POSITIVE_INTEGER_TYPE_ID, XS_NON_NEGATIVE_INTEGER, DerivationProcess.RESTRICTION,
- PositiveIntegerCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_POSITIVE_INTEGER_TYPE_ID, XS_NON_NEGATIVE_INTEGER, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_G_YEAR_MONTH = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_G_YEAR_MONTH_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION,
- GYearMonthCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_G_YEAR_MONTH_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_G_YEAR = new BuiltinAtomicType(BuiltinTypeConstants.XS_G_YEAR_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, GYearCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_G_MONTH_DAY = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_G_MONTH_DAY_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION,
- GMonthDayCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_G_MONTH_DAY_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_G_DAY = new BuiltinAtomicType(BuiltinTypeConstants.XS_G_DAY_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, GDayCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_G_MONTH = new BuiltinAtomicType(BuiltinTypeConstants.XS_G_MONTH_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, GMonthCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_BOOLEAN = new BuiltinAtomicType(BuiltinTypeConstants.XS_BOOLEAN_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, BooleanCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_BASE64_BINARY = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_BASE64_BINARY_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION,
- Base64BinaryCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_BASE64_BINARY_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_HEX_BINARY = new BuiltinAtomicType(
- BuiltinTypeConstants.XS_HEX_BINARY_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION,
- HexBinaryCastProcessor.INSTANCE);
+ BuiltinTypeConstants.XS_HEX_BINARY_TYPE_ID, XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_ANY_URI = new BuiltinAtomicType(BuiltinTypeConstants.XS_ANY_URI_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, AnyUriCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_QNAME = new BuiltinAtomicType(BuiltinTypeConstants.XS_QNAME_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, QNameCastProcessor.INSTANCE);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XS_NOTATION = new BuiltinAtomicType(BuiltinTypeConstants.XS_NOTATION_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, null);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinAtomicType XSEXT_TYPE = new BuiltinAtomicType(BuiltinTypeConstants.XSEXT_TYPE_TYPE_ID,
- XS_ANY_ATOMIC, DerivationProcess.RESTRICTION, null);
+ XS_ANY_ATOMIC, DerivationProcess.RESTRICTION);
public static final BuiltinTypeRegistry INSTANCE = new BuiltinTypeRegistry();
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/CommentType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/CommentType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/CommentType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/CommentType.java Mon Jun 11 10:50:49 2012
@@ -16,24 +16,9 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.DMOKind;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class CommentType extends AbstractNodeType {
public static final CommentType INSTANCE = new CommentType();
- private static final Filter<XDMValue> INSTANCE_OF_FILTER = new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- if (value == null) {
- return false;
- }
- return value.getDMOKind() == DMOKind.COMMENT_NODE;
- }
- };
-
private CommentType() {
}
@@ -41,9 +26,4 @@ public final class CommentType extends A
public NodeKind getNodeKind() {
return NodeKind.COMMENT;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return INSTANCE_OF_FILTER;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ComposedType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ComposedType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ComposedType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ComposedType.java Mon Jun 11 10:50:49 2012
@@ -18,10 +18,6 @@ package org.apache.vxquery.types;
import java.util.List;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public class ComposedType implements XQType {
private List<XQType> contentTypes;
private Composer composer;
@@ -38,14 +34,4 @@ public class ComposedType implements XQT
public Composer getComposer() {
return composer;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return null;
- }
-
- @Override
- public CastProcessor getCastProcessor(XQType inputBaseType) {
- return null;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/DocumentType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/DocumentType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/DocumentType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/DocumentType.java Mon Jun 11 10:50:49 2012
@@ -16,9 +16,6 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class DocumentType extends AbstractNodeType {
public static final DocumentType ANYDOCUMENT = new DocumentType(ElementType.ANYELEMENT);
@@ -36,9 +33,4 @@ public final class DocumentType extends
public ElementType getElementType() {
return elementType;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return null;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ElementType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ElementType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ElementType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ElementType.java Mon Jun 11 10:50:49 2012
@@ -16,12 +16,6 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.DMOKind;
-import org.apache.vxquery.v0datamodel.XDMNode;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class ElementType extends AbstractNodeType {
public static final ElementType ANYELEMENT = new ElementType(NameTest.STAR_NAMETEST, AnyType.INSTANCE, true);
@@ -53,23 +47,6 @@ public final class ElementType extends A
}
@Override
- public Filter<XDMValue> createInstanceOfFilter() {
- final Filter<XDMNode> nameTestMatchFilter = nameTest.createNameMatchFilter();
- return new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- if (value == null) {
- return false;
- }
- if (value.getDMOKind() != DMOKind.ELEMENT_NODE) {
- return false;
- }
- return nameTestMatchFilter.accept((XDMNode) value);
- }
- };
- }
-
- @Override
public String toString() {
return "NodeTest(" + nameTest + ", " + contentType + ", nilled = " + nilled + ")";
}
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/EmptySequenceType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/EmptySequenceType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/EmptySequenceType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/EmptySequenceType.java Mon Jun 11 10:50:49 2012
@@ -16,22 +16,9 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.types.processors.NotCastableCastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class EmptySequenceType implements ItemType {
public static final EmptySequenceType INSTANCE = new EmptySequenceType();
- private static final Filter<XDMValue> INSTANCE_OF_FILTER = new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- return value == null;
- }
- };
-
private EmptySequenceType() {
}
@@ -39,14 +26,4 @@ public final class EmptySequenceType imp
public boolean isAtomicType() {
return false;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return INSTANCE_OF_FILTER;
- }
-
- @Override
- public CastProcessor getCastProcessor(XQType inputBaseType) {
- return NotCastableCastProcessor.INSTANCE_XPST0051;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/NameTest.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/NameTest.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/NameTest.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/NameTest.java Mon Jun 11 10:50:49 2012
@@ -18,11 +18,6 @@ package org.apache.vxquery.types;
import javax.xml.namespace.QName;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMNode;
-import org.apache.vxquery.v0datamodel.atomic.QNameValue;
-
public final class NameTest {
public static final String WILDCARD = null;
@@ -51,39 +46,6 @@ public final class NameTest {
return new QName(uri, localName);
}
- @SuppressWarnings("unchecked")
- public Filter<XDMNode> createNameMatchFilter() {
- if (uri == null) {
- if (localName == null) {
- return (Filter<XDMNode>) Filter.TRUE_FILTER;
- } else {
- return new Filter<XDMNode>() {
- @Override
- public boolean accept(XDMNode value) throws SystemException {
- return value.getNodeName().getLocalName().equals(localName);
- }
- };
- }
- } else {
- if (localName == null) {
- return new Filter<XDMNode>() {
- @Override
- public boolean accept(XDMNode value) throws SystemException {
- return uri.equals(value.getNodeName().getUri());
- }
- };
- } else {
- return new Filter<XDMNode>() {
- @Override
- public boolean accept(XDMNode value) throws SystemException {
- QNameValue nodeName = value.getNodeName();
- return uri.equals(nodeName.getUri()) && nodeName.getLocalName().equals(localName);
- }
- };
- }
- }
- }
-
@Override
public String toString() {
return "NameTest(" + asQName() + ")";
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/NoneType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/NoneType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/NoneType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/NoneType.java Mon Jun 11 10:50:49 2012
@@ -16,11 +16,6 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.types.processors.NotCastableCastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public class NoneType implements ItemType {
public static final NoneType INSTANCE = new NoneType();
@@ -31,15 +26,4 @@ public class NoneType implements ItemTyp
public boolean isAtomicType() {
return false;
}
-
- @SuppressWarnings("unchecked")
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return (Filter<XDMValue>) Filter.FALSE_FILTER;
- }
-
- @Override
- public CastProcessor getCastProcessor(XQType inputBaseType) {
- return NotCastableCastProcessor.INSTANCE_XPST0051;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ProcessingInstructionType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ProcessingInstructionType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ProcessingInstructionType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/ProcessingInstructionType.java Mon Jun 11 10:50:49 2012
@@ -16,12 +16,6 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.DMOKind;
-import org.apache.vxquery.v0datamodel.XDMNode;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class ProcessingInstructionType extends AbstractNodeType {
public static final ProcessingInstructionType ANYPI = new ProcessingInstructionType(null);
@@ -39,21 +33,4 @@ public final class ProcessingInstruction
public String getTarget() {
return target;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- if (value == null) {
- return false;
- }
- if (value.getDMOKind() != DMOKind.PI_NODE) {
- return false;
- }
- XDMNode node = (XDMNode) value;
- return (target == null || target.equals(node.getNodeName().getLocalName()));
- }
- };
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/QuantifiedType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/QuantifiedType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/QuantifiedType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/QuantifiedType.java Mon Jun 11 10:50:49 2012
@@ -16,16 +16,6 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.context.StaticContext;
-import org.apache.vxquery.exceptions.ErrorCode;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.exceptions.SystemExceptionFactory;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.types.processors.NotCastableCastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-import org.apache.vxquery.v0datamodel.atomic.AtomicValueFactory;
-
public class QuantifiedType implements XQType {
private XQType contentType;
private Quantifier quantifier;
@@ -44,53 +34,6 @@ public class QuantifiedType implements X
}
@Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return null;
- }
-
- @Override
- public CastProcessor getCastProcessor(XQType inputBaseType) {
- final CastProcessor contentTypeProcessor = contentType.getCastProcessor(inputBaseType);
- switch (quantifier) {
- case QUANT_ONE:
- case QUANT_PLUS:
- return contentTypeProcessor;
-
- case QUANT_QUESTION:
- case QUANT_STAR:
- return new CastProcessor() {
- @Override
- public XDMValue cast(AtomicValueFactory avf, XDMValue value, SystemExceptionFactory ieFactory,
- StaticContext ctx) throws SystemException {
- if (value == null) {
- return null;
- }
- return contentTypeProcessor.cast(avf, value, ieFactory, ctx);
- }
-
- @Override
- public boolean castable(XDMValue value, StaticContext ctx) {
- if (value == null) {
- return true;
- }
- return contentTypeProcessor.castable(value, ctx);
- }
-
- @Override
- public Boolean castable(XQType type) {
- return contentTypeProcessor.castable(type);
- }
-
- @Override
- public ErrorCode getCastFailureErrorCode(XQType type) {
- return contentTypeProcessor.getCastFailureErrorCode(type);
- }
- };
- }
- return NotCastableCastProcessor.INSTANCE_XPST0051;
- }
-
- @Override
public String toString() {
return "QuantifiedType[" + contentType + ":" + quantifier + "]";
}
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/TextType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/TextType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/TextType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/TextType.java Mon Jun 11 10:50:49 2012
@@ -16,24 +16,9 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.DMOKind;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public final class TextType extends AbstractNodeType {
public static final TextType INSTANCE = new TextType();
- private static final Filter<XDMValue> TEXT_FILTER = new Filter<XDMValue>() {
- @Override
- public boolean accept(XDMValue value) throws SystemException {
- if (value == null) {
- return false;
- }
- return value.getDMOKind() == DMOKind.TEXT_NODE;
- }
- };
-
private TextType() {
}
@@ -41,9 +26,4 @@ public final class TextType extends Abst
public NodeKind getNodeKind() {
return NodeKind.TEXT;
}
-
- @Override
- public Filter<XDMValue> createInstanceOfFilter() {
- return TEXT_FILTER;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/XQType.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/XQType.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/XQType.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/types/XQType.java Mon Jun 11 10:50:49 2012
@@ -16,12 +16,5 @@
*/
package org.apache.vxquery.types;
-import org.apache.vxquery.types.processors.CastProcessor;
-import org.apache.vxquery.util.Filter;
-import org.apache.vxquery.v0datamodel.XDMValue;
-
public interface XQType {
- public Filter<XDMValue> createInstanceOfFilter();
-
- public CastProcessor getCastProcessor(XQType inputBaseType);
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/IEventAcceptor.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/IEventAcceptor.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/IEventAcceptor.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/IEventAcceptor.java Mon Jun 11 10:50:49 2012
@@ -17,7 +17,6 @@
package org.apache.vxquery.xmlparser;
import org.apache.vxquery.exceptions.SystemException;
-import org.apache.vxquery.v0datamodel.XDMItem;
public interface IEventAcceptor {
public void open() throws SystemException;
@@ -40,7 +39,5 @@ public interface IEventAcceptor {
public void pi(String target, String content) throws SystemException;
- public void item(XDMItem item) throws SystemException;
-
public void close();
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/NodeTreeBuildingEventAcceptor.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/NodeTreeBuildingEventAcceptor.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/NodeTreeBuildingEventAcceptor.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/NodeTreeBuildingEventAcceptor.java Mon Jun 11 10:50:49 2012
@@ -17,12 +17,11 @@ package org.apache.vxquery.xmlparser;
import java.io.DataOutput;
import java.util.ArrayList;
-import org.apache.vxquery.datamodel.builders.DictionaryBuilder;
-import org.apache.vxquery.datamodel.builders.ElementNodeBuilder;
import org.apache.vxquery.datamodel.builders.base.IDMBuilderPool;
+import org.apache.vxquery.datamodel.builders.nodes.DictionaryBuilder;
+import org.apache.vxquery.datamodel.builders.nodes.ElementNodeBuilder;
import org.apache.vxquery.exceptions.SystemException;
import org.apache.vxquery.types.BuiltinTypeQNames;
-import org.apache.vxquery.v0datamodel.XDMItem;
import org.apache.vxquery.xmlquery.query.XQueryConstants;
public class NodeTreeBuildingEventAcceptor implements IEventAcceptor {
@@ -109,11 +108,6 @@ public class NodeTreeBuildingEventAccept
}
@Override
- public void item(XDMItem item) throws SystemException {
-
- }
-
- @Override
public void close() {
}
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/Module.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/Module.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/Module.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/Module.java Mon Jun 11 10:50:49 2012
@@ -16,7 +16,6 @@ package org.apache.vxquery.xmlquery.quer
import org.apache.vxquery.compiler.CompilerControlBlock;
import org.apache.vxquery.context.StaticContext;
-import org.apache.vxquery.v0runtime.RegisterSet;
import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalPlan;
import edu.uci.ics.hyracks.api.job.JobSpecification;
@@ -88,8 +87,4 @@ public class Module {
public void setHyracksJobSpecification(JobSpecification jobSpec) {
this.jobSpec = jobSpec;
}
-
- public RegisterSet createGlobalRegisterSet() {
- return new RegisterSet(new Object[gVariables.length]);
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/PrologVariable.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/PrologVariable.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/PrologVariable.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/PrologVariable.java Mon Jun 11 10:50:49 2012
@@ -17,22 +17,15 @@
package org.apache.vxquery.xmlquery.query;
import org.apache.vxquery.context.XQueryVariable;
-import org.apache.vxquery.v0runtime.RuntimePlan;
public class PrologVariable {
private XQueryVariable variable;
- private RuntimePlan plan;
- public PrologVariable(XQueryVariable variable, RuntimePlan plan) {
+ public PrologVariable(XQueryVariable variable) {
this.variable = variable;
- this.plan = plan;
}
public XQueryVariable getVariable() {
return variable;
}
-
- public RuntimePlan getRuntimePlan() {
- return plan;
- }
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java Mon Jun 11 10:50:49 2012
@@ -19,8 +19,9 @@ import java.util.ArrayList;
import java.util.List;
import org.apache.vxquery.compiler.CompilerControlBlock;
-import org.apache.vxquery.compiler.algebricks.PrinterFactoryProvider;
-import org.apache.vxquery.compiler.jobgen.ExpressionJobGen;
+import org.apache.vxquery.compiler.algebricks.VXQueryConstantValue;
+import org.apache.vxquery.compiler.algebricks.VXQueryExpressionJobGen;
+import org.apache.vxquery.compiler.algebricks.VXQueryPrinterFactoryProvider;
import org.apache.vxquery.compiler.rewriter.RewriteRuleset;
import org.apache.vxquery.exceptions.ErrorCode;
import org.apache.vxquery.exceptions.SystemException;
@@ -36,6 +37,8 @@ import edu.uci.ics.hyracks.algebricks.co
import edu.uci.ics.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialFixpointRuleController;
import edu.uci.ics.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialOnceRuleController;
import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression;
+import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag;
+import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression;
import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IExpressionTypeComputer;
import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment;
import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IMetadataProvider;
@@ -70,12 +73,17 @@ public class XMLQueryCompiler {
return null;
}
});
- builder.setPrinterProvider(PrinterFactoryProvider.INSTANCE);
- builder.setExprJobGen(new ExpressionJobGen());
+ builder.setPrinterProvider(VXQueryPrinterFactoryProvider.INSTANCE);
+ builder.setExprJobGen(new VXQueryExpressionJobGen());
builder.setExpressionTypeComputer(new IExpressionTypeComputer() {
@Override
public Object getType(ILogicalExpression expr, IMetadataProvider<?, ?> metadataProvider,
IVariableTypeEnvironment env) throws AlgebricksException {
+ if (expr.getExpressionTag() == LogicalExpressionTag.CONSTANT) {
+ ConstantExpression ce = (ConstantExpression) expr;
+ VXQueryConstantValue cv = (VXQueryConstantValue) ce.getValue();
+ return cv.getType();
+ }
return null;
}
});
@@ -108,6 +116,14 @@ public class XMLQueryCompiler {
listener.notifyCodegenResult(module);
}
+ public ModuleNode getModuleNode() {
+ return moduleNode;
+ }
+
+ public Module getModule() {
+ return module;
+ }
+
private static List<Pair<AbstractRuleController, List<IAlgebraicRewriteRule>>> buildDefaultLogicalRewrites() {
List<Pair<AbstractRuleController, List<IAlgebraicRewriteRule>>> defaultLogicalRewrites = new ArrayList<Pair<AbstractRuleController, List<IAlgebraicRewriteRule>>>();
SequentialFixpointRuleController seqCtrlNoDfs = new SequentialFixpointRuleController(false);
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java Mon Jun 11 10:50:49 2012
@@ -1,6 +1,10 @@
package org.apache.vxquery.xmlquery.translator;
+import java.io.DataOutput;
+import java.io.DataOutputStream;
+import java.io.IOException;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
@@ -14,11 +18,12 @@ import org.apache.commons.lang3.mutable.
import org.apache.commons.lang3.mutable.MutableObject;
import org.apache.commons.lang3.tuple.Pair;
import org.apache.vxquery.compiler.CompilerControlBlock;
-import org.apache.vxquery.compiler.algebricks.ConstantValue;
+import org.apache.vxquery.compiler.algebricks.VXQueryConstantValue;
import org.apache.vxquery.context.StaticContext;
import org.apache.vxquery.context.StaticContextImpl;
import org.apache.vxquery.context.ThinStaticContextImpl;
import org.apache.vxquery.context.XQueryVariable;
+import org.apache.vxquery.datamodel.builders.atomic.StringValueBuilder;
import org.apache.vxquery.exceptions.ErrorCode;
import org.apache.vxquery.exceptions.SystemException;
import org.apache.vxquery.functions.BuiltinFunctions;
@@ -33,6 +38,7 @@ import org.apache.vxquery.types.AnyNodeT
import org.apache.vxquery.types.AnyType;
import org.apache.vxquery.types.AtomicType;
import org.apache.vxquery.types.AttributeType;
+import org.apache.vxquery.types.BuiltinTypeConstants;
import org.apache.vxquery.types.BuiltinTypeRegistry;
import org.apache.vxquery.types.CommentType;
import org.apache.vxquery.types.DocumentType;
@@ -152,6 +158,7 @@ import edu.uci.ics.hyracks.algebricks.co
import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator;
import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.WriteOperator;
import edu.uci.ics.hyracks.algebricks.core.algebra.plan.ALogicalPlanImpl;
+import edu.uci.ics.hyracks.dataflow.common.comm.io.ByteArrayAccessibleOutputStream;
public class XMLQueryTranslator {
private static final Pattern UNQUOTER = Pattern
@@ -169,10 +176,20 @@ public class XMLQueryTranslator {
private int varCounter;
+ private final ByteArrayAccessibleOutputStream baaos;
+
+ private final DataOutput dOut;
+
+ private final StringValueBuilder stringVB;
+
public XMLQueryTranslator(CompilerControlBlock ccb) {
this.ccb = ccb;
varCounter = 0;
rootCtx = ccb.getStaticContext();
+
+ baaos = new ByteArrayAccessibleOutputStream();
+ dOut = new DataOutputStream(baaos);
+ stringVB = new StringValueBuilder();
}
private void pushContext() {
@@ -608,7 +625,7 @@ public class XMLQueryTranslator {
LogicalVariable lVar = translateExpression(queryBody, tCtx);
List<Mutable<ILogicalExpression>> exprs = new ArrayList<Mutable<ILogicalExpression>>();
exprs.add(mutable(vre(lVar)));
- WriteOperator op = new WriteOperator(exprs, new QueryResultDataSink());
+ WriteOperator op = new WriteOperator(exprs, new QueryResultDataSink(ccb.getResultFileSplits()));
op.getInputs().add(mutable(tCtx.op));
ALogicalPlanImpl lp = new ALogicalPlanImpl(mutable(op));
@@ -835,11 +852,8 @@ public class XMLQueryTranslator {
List<Mutable<ILogicalExpression>> exprs = new ArrayList<Mutable<ILogicalExpression>>();
LogicalVariable var = newLogicalVariable();
vars.add(var);
- exprs.add(mutable(afce(
- BuiltinOperators.SEQUENCE,
- false,
- new ConstantExpression(new ConstantValue(SequenceType.create(BuiltinTypeRegistry.XS_BOOLEAN,
- Quantifier.QUANT_ONE), Boolean.TRUE)))));
+ exprs.add(mutable(afce(BuiltinOperators.SEQUENCE, false,
+ ce(SequenceType.create(BuiltinTypeRegistry.XS_BOOLEAN, Quantifier.QUANT_ONE), Boolean.TRUE))));
AggregateOperator aop = new AggregateOperator(vars, exprs);
aop.getInputs().add(mutable(tCtx.op));
tCtx.op = aop;
@@ -867,7 +881,8 @@ public class XMLQueryTranslator {
return lVar;
}
- private LogicalVariable translateCDataSectionNode(TranslationContext tCtx, CDataSectionNode cdsNode) {
+ private LogicalVariable translateCDataSectionNode(TranslationContext tCtx, CDataSectionNode cdsNode)
+ throws SystemException {
LogicalVariable lVar = createAssignment(
sfce(BuiltinOperators.TEXT_CONSTRUCTOR,
ce(SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE),
@@ -875,7 +890,7 @@ public class XMLQueryTranslator {
return lVar;
}
- private LogicalVariable translateNCNameNode(TranslationContext tCtx, NCNameNode ncnNode) {
+ private LogicalVariable translateNCNameNode(TranslationContext tCtx, NCNameNode ncnNode) throws SystemException {
LogicalVariable lVar = createAssignment(
ce(SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE), ncnNode.getName()), tCtx);
return lVar;
@@ -1174,7 +1189,7 @@ public class XMLQueryTranslator {
}
private LogicalVariable translateDirectCommentConstructorNode(TranslationContext tCtx,
- DirectCommentConstructorNode dccNode) {
+ DirectCommentConstructorNode dccNode) throws SystemException {
String content = dccNode.getContent();
LogicalVariable lVar = createAssignment(
sfce(BuiltinOperators.COMMENT_CONSTRUCTOR,
@@ -1182,7 +1197,8 @@ public class XMLQueryTranslator {
return lVar;
}
- private LogicalVariable translateDirectPIConstructorNode(TranslationContext tCtx, DirectPIConstructorNode dpicNode) {
+ private LogicalVariable translateDirectPIConstructorNode(TranslationContext tCtx, DirectPIConstructorNode dpicNode)
+ throws SystemException {
String target = dpicNode.getTarget();
String content = dpicNode.getContent();
LogicalVariable lVar = createAssignment(
@@ -1196,24 +1212,27 @@ public class XMLQueryTranslator {
String image = lNode.getImage();
LiteralNode.LiteralType lType = lNode.getType();
SequenceType t = null;
+ Object value = null;
switch (lType) {
case DECIMAL:
t = SequenceType.create(BuiltinTypeRegistry.XS_DECIMAL, Quantifier.QUANT_ONE);
break;
case DOUBLE:
t = SequenceType.create(BuiltinTypeRegistry.XS_DOUBLE, Quantifier.QUANT_ONE);
+ Double.parseDouble(image);
break;
case INTEGER:
t = SequenceType.create(BuiltinTypeRegistry.XS_INTEGER, Quantifier.QUANT_ONE);
+ value = Long.parseLong(image);
break;
case STRING:
t = SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE);
- image = unquote(image);
+ value = unquote(image);
break;
default:
throw new IllegalStateException("Unknown type: " + lType);
}
- LogicalVariable lVar = createAssignment(ce(t, image), tCtx);
+ LogicalVariable lVar = createAssignment(ce(t, value), tCtx);
return lVar;
}
@@ -1776,8 +1795,62 @@ public class XMLQueryTranslator {
throw new IllegalStateException("Unknown operator: " + operator);
}
- private static ILogicalExpression ce(SequenceType type, Object value) {
- return new ConstantExpression(new ConstantValue(type, value));
+ private ILogicalExpression ce(SequenceType type, Object value) throws SystemException {
+ ItemType it = type.getItemType();
+ if (it.isAtomicType()) {
+ AtomicType at = (AtomicType) it;
+ byte[] bytes = null;
+ switch (at.getTypeId()) {
+ case BuiltinTypeConstants.XS_BOOLEAN_TYPE_ID: {
+ baaos.reset();
+ try {
+ dOut.write((byte) BuiltinTypeConstants.XS_BOOLEAN_TYPE_ID);
+ dOut.writeByte(((Boolean) value).booleanValue() ? 1 : 0);
+ } catch (IOException e) {
+ throw new SystemException(ErrorCode.SYSE0001, e);
+ }
+ break;
+ }
+ case BuiltinTypeConstants.XS_INTEGER_TYPE_ID: {
+ baaos.reset();
+ try {
+ dOut.write((byte) BuiltinTypeConstants.XS_INTEGER_TYPE_ID);
+ dOut.writeLong(((Long) value).longValue());
+ } catch (IOException e) {
+ throw new SystemException(ErrorCode.SYSE0001, e);
+ }
+ break;
+ }
+ case BuiltinTypeConstants.XS_DOUBLE_TYPE_ID: {
+ baaos.reset();
+ try {
+ dOut.write((byte) BuiltinTypeConstants.XS_DOUBLE_TYPE_ID);
+ dOut.writeDouble(((Double) value).doubleValue());
+ } catch (IOException e) {
+ throw new SystemException(ErrorCode.SYSE0001, e);
+ }
+ break;
+ }
+ case BuiltinTypeConstants.XS_STRING_TYPE_ID: {
+ baaos.reset();
+ try {
+ dOut.write((byte) BuiltinTypeConstants.XS_STRING_TYPE_ID);
+ stringVB.write((CharSequence) value, dOut);
+ } catch (IOException e) {
+ throw new SystemException(ErrorCode.SYSE0001, e);
+ }
+ break;
+ }
+ case BuiltinTypeConstants.XSEXT_TYPE_TYPE_ID: {
+ throw new UnsupportedOperationException();
+ }
+ default:
+ throw new SystemException(ErrorCode.SYSE0001);
+ }
+ bytes = Arrays.copyOf(baaos.getByteArray(), baaos.size());
+ return new ConstantExpression(new VXQueryConstantValue(type, bytes));
+ }
+ throw new UnsupportedOperationException();
}
private static ILogicalExpression vre(LogicalVariable var) {
@@ -1817,7 +1890,7 @@ public class XMLQueryTranslator {
return new ScalarFunctionCallExpression(fn, args);
}
- private static ILogicalExpression normalize(ILogicalExpression expr, SequenceType type) {
+ private ILogicalExpression normalize(ILogicalExpression expr, SequenceType type) throws SystemException {
if (type.getItemType().isAtomicType()) {
ILogicalExpression atomizedExpr = new ScalarFunctionCallExpression(BuiltinFunctions.FN_DATA_1,
Collections.singletonList(mutable(expr)));
@@ -1832,44 +1905,29 @@ public class XMLQueryTranslator {
}
}
- private static ILogicalExpression promote(ILogicalExpression expr, SequenceType type) {
- return sfce(
- BuiltinOperators.PROMOTE,
- expr,
- new ConstantExpression(new ConstantValue(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE,
- Quantifier.QUANT_ONE), type)));
- }
-
- private static ILogicalExpression treat(ILogicalExpression expr, SequenceType type) {
- return sfce(
- BuiltinOperators.TREAT,
- expr,
- new ConstantExpression(new ConstantValue(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE,
- Quantifier.QUANT_ONE), type)));
- }
-
- private static ILogicalExpression cast(ILogicalExpression expr, SequenceType type) {
- return sfce(
- BuiltinOperators.CAST,
- expr,
- new ConstantExpression(new ConstantValue(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE,
- Quantifier.QUANT_ONE), type)));
- }
-
- private static ILogicalExpression castable(ILogicalExpression expr, SequenceType type) {
- return sfce(
- BuiltinOperators.CASTABLE,
- expr,
- new ConstantExpression(new ConstantValue(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE,
- Quantifier.QUANT_ONE), type)));
- }
-
- private static ILogicalExpression instanceOf(ILogicalExpression expr, SequenceType type) {
- return sfce(
- BuiltinOperators.INSTANCE_OF,
- expr,
- new ConstantExpression(new ConstantValue(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE,
- Quantifier.QUANT_ONE), type)));
+ private ILogicalExpression promote(ILogicalExpression expr, SequenceType type) throws SystemException {
+ return sfce(BuiltinOperators.PROMOTE, expr,
+ ce(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE, Quantifier.QUANT_ONE), type));
+ }
+
+ private ILogicalExpression treat(ILogicalExpression expr, SequenceType type) throws SystemException {
+ return sfce(BuiltinOperators.TREAT, expr,
+ ce(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE, Quantifier.QUANT_ONE), type));
+ }
+
+ private ILogicalExpression cast(ILogicalExpression expr, SequenceType type) throws SystemException {
+ return sfce(BuiltinOperators.CAST, expr,
+ ce(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE, Quantifier.QUANT_ONE), type));
+ }
+
+ private ILogicalExpression castable(ILogicalExpression expr, SequenceType type) throws SystemException {
+ return sfce(BuiltinOperators.CASTABLE, expr,
+ ce(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE, Quantifier.QUANT_ONE), type));
+ }
+
+ private ILogicalExpression instanceOf(ILogicalExpression expr, SequenceType type) throws SystemException {
+ return sfce(BuiltinOperators.INSTANCE_OF, expr,
+ ce(SequenceType.create(BuiltinTypeRegistry.XSEXT_TYPE, Quantifier.QUANT_ONE), type));
}
private List<LogicalVariable> translateExpressionList(List<ASTNode> expressions, TranslationContext tCtx)
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/xslt/generate-fn-defns.xsl
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/xslt/generate-fn-defns.xsl?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/xslt/generate-fn-defns.xsl (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/xslt/generate-fn-defns.xsl Mon Jun 11 10:50:49 2012
@@ -36,19 +36,6 @@
</xsl:for-each>
),
<xsl:choose>
- <xsl:when test="runtime/@class">
- new org.apache.vxquery.v0runtime.base.FunctionIteratorFactory() {
- @Override
- public org.apache.vxquery.v0runtime.base.RuntimeIterator createIterator(org.apache.vxquery.v0runtime.RegisterAllocator rAllocator, org.apache.vxquery.functions.Function fn, org.apache.vxquery.v0runtime.base.RuntimeIterator[] arguments, org.apache.vxquery.context.StaticContext ctx) {
- return new <xsl:value-of select="runtime/@class"/>(rAllocator, fn, arguments, ctx);
- }
- }
- </xsl:when>
- <xsl:otherwise>
- null
- </xsl:otherwise>
- </xsl:choose>,
- <xsl:choose>
<xsl:when test="@implicit-context = 'true'">
true
</xsl:when>
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/xslt/generate-op-defns.xsl
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/xslt/generate-op-defns.xsl?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/xslt/generate-op-defns.xsl (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/main/xslt/generate-op-defns.xsl Mon Jun 11 10:50:49 2012
@@ -34,20 +34,7 @@
createSequenceType("<xsl:value-of select="@type"/>")
)
</xsl:for-each>
- ),
- <xsl:choose>
- <xsl:when test="runtime/@class">
- new org.apache.vxquery.v0runtime.base.FunctionIteratorFactory() {
- @Override
- public org.apache.vxquery.v0runtime.base.RuntimeIterator createIterator(org.apache.vxquery.v0runtime.RegisterAllocator rAllocator, org.apache.vxquery.functions.Function fn, org.apache.vxquery.v0runtime.base.RuntimeIterator[] arguments, org.apache.vxquery.context.StaticContext ctx) {
- return new <xsl:value-of select="runtime/@class"/>(rAllocator, fn, arguments, ctx);
- }
- }
- </xsl:when>
- <xsl:otherwise>
- null
- </xsl:otherwise>
- </xsl:choose>
+ )
);
</xsl:for-each>
</xsl:template>
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java Mon Jun 11 10:50:49 2012
@@ -27,9 +27,10 @@ import junit.framework.Assert;
import org.apache.vxquery.compiler.CompilerControlBlock;
import org.apache.vxquery.context.RootStaticContextImpl;
import org.apache.vxquery.context.StaticContextImpl;
-import org.apache.vxquery.exceptions.SystemException;
import org.junit.Test;
+import edu.uci.ics.hyracks.dataflow.std.file.FileSplit;
+
public class SimpleXQueryTest {
@Test
public void simple001() {
@@ -136,7 +137,7 @@ public class SimpleXQueryTest {
private static void runTest(String testName, String query) {
try {
runTestInternal(testName, query);
- } catch (SystemException e) {
+ } catch (Exception e) {
e.printStackTrace();
Assert.fail();
}
@@ -146,14 +147,15 @@ public class SimpleXQueryTest {
try {
runTestInternal(testName, query);
Assert.fail();
- } catch (SystemException e) {
+ } catch (Exception e) {
e.printStackTrace();
}
}
- private static void runTestInternal(String testName, String query) throws SystemException {
+ private static void runTestInternal(String testName, String query) throws Exception {
XMLQueryCompiler compiler = new XMLQueryCompiler(null);
- CompilerControlBlock ccb = new CompilerControlBlock(new StaticContextImpl(RootStaticContextImpl.INSTANCE));
+ CompilerControlBlock ccb = new CompilerControlBlock(new StaticContextImpl(RootStaticContextImpl.INSTANCE),
+ new FileSplit[] { new FileSplit("CHANGE_ME", File.createTempFile("foo", ".bar").getAbsolutePath()) });
compiler.compile(testName, new StringReader(query), ccb, Integer.MAX_VALUE);
}
}
\ No newline at end of file
Modified: incubator/vxquery/branches/vxquery_algebricks/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunnerFactory.java
URL: http://svn.apache.org/viewvc/incubator/vxquery/branches/vxquery_algebricks/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunnerFactory.java?rev=1348792&r1=1348791&r2=1348792&view=diff
==============================================================================
--- incubator/vxquery/branches/vxquery_algebricks/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunnerFactory.java (original)
+++ incubator/vxquery/branches/vxquery_algebricks/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunnerFactory.java Mon Jun 11 10:50:49 2012
@@ -24,6 +24,8 @@ import org.apache.vxquery.context.RootSt
import org.apache.vxquery.context.StaticContextImpl;
import org.apache.vxquery.xmlquery.query.XMLQueryCompiler;
+import edu.uci.ics.hyracks.dataflow.std.file.FileSplit;
+
public class TestRunnerFactory {
private List<ResultReporter> reporters;
private XTestOptions opts;
@@ -50,7 +52,7 @@ public class TestRunnerFactory {
XMLQueryCompiler compiler = new XMLQueryCompiler(null);
FileReader in = new FileReader(testCase.getXQueryFile());
CompilerControlBlock ccb = new CompilerControlBlock(new StaticContextImpl(
- RootStaticContextImpl.INSTANCE));
+ RootStaticContextImpl.INSTANCE), new FileSplit[] {});
compiler.compile(testCase.getXQueryDisplayName(), in, ccb, opts.optimizationLevel);
} catch (Throwable e) {
res.error = e;