You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ki...@apache.org on 2020/09/03 23:18:23 UTC
svn commit: r1881423 [2/4] - in /xmlbeans/trunk/src/main:
java/org/apache/xmlbeans/ java/org/apache/xmlbeans/impl/common/
java/org/apache/xmlbeans/impl/schema/ java/org/apache/xmlbeans/impl/store/
java/org/apache/xmlbeans/impl/xpath/ java/org/apache/xm...
Modified: xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/XQuerySchemaTypeSystem.java
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/XQuerySchemaTypeSystem.java?rev=1881423&r1=1881422&r2=1881423&view=diff
==============================================================================
--- xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/XQuerySchemaTypeSystem.java (original)
+++ xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/schema/XQuerySchemaTypeSystem.java Thu Sep 3 23:18:22 2020
@@ -15,6 +15,13 @@
package org.apache.xmlbeans.impl.schema;
+import org.apache.xmlbeans.*;
+import org.apache.xmlbeans.impl.common.QNameHelper;
+import org.apache.xmlbeans.impl.values.XmlIntegerImpl;
+import org.apache.xmlbeans.impl.values.XmlStringImpl;
+import org.apache.xmlbeans.impl.values.XmlValueOutOfRangeException;
+
+import javax.xml.namespace.QName;
import java.io.File;
import java.io.InputStream;
import java.math.BigInteger;
@@ -22,40 +29,20 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
-import javax.xml.namespace.QName;
-
-import org.apache.xmlbeans.Filer;
-import org.apache.xmlbeans.QNameSet;
-import org.apache.xmlbeans.SchemaAnnotation;
-import org.apache.xmlbeans.SchemaAttributeGroup;
-import org.apache.xmlbeans.SchemaAttributeModel;
-import org.apache.xmlbeans.SchemaComponent;
-import org.apache.xmlbeans.SchemaGlobalAttribute;
-import org.apache.xmlbeans.SchemaGlobalElement;
-import org.apache.xmlbeans.SchemaIdentityConstraint;
-import org.apache.xmlbeans.SchemaModelGroup;
-import org.apache.xmlbeans.SchemaParticle;
-import org.apache.xmlbeans.SchemaType;
-import org.apache.xmlbeans.SchemaTypeSystem;
-import org.apache.xmlbeans.impl.common.QNameHelper;
-import org.apache.xmlbeans.impl.values.XmlIntegerImpl;
-import org.apache.xmlbeans.impl.values.XmlStringImpl;
-import org.apache.xmlbeans.impl.values.XmlValueOutOfRangeException;
-
/**
* Same as {@link BuiltinSchemaTypeSystem} but adds three extra types
- * (<i>dayTimeDuration</i>, <i>yearMonthDuration</i> and <i>anyAtomicType</i>)
+ * (<i>dayTimeDuration</i>, <i>yearMonthDuration</i> and <i>anyAtomicType</i>)
* and makes all the primitives extend <i>anyAtomicType</i>.
- *
- * @author Radu Preotiuc
*
+ * @author Radu Preotiuc
*/
+@SuppressWarnings("unused")
public class XQuerySchemaTypeSystem extends SchemaTypeLoaderBase implements
- SchemaTypeSystem
-{
+ SchemaTypeSystem {
// The global builtin type system
- public static SchemaTypeSystem get()
- { return _global; }
+ public static SchemaTypeSystem get() {
+ return _global;
+ }
// Extra constants; since the extra types are going to be part of XMLSchema 1.1
// we will want to eventually move these to SchemaType
@@ -74,7 +61,7 @@ public class XQuerySchemaTypeSystem exte
private static final SchemaAttributeGroup[] EMPTY_SCHEMAATTRIBUTEGROUP_ARRAY = new SchemaAttributeGroup[0];
private static final SchemaAnnotation[] EMPTY_SCHEMAANNOTATION_ARRAY = new SchemaAnnotation[0];
- private static XQuerySchemaTypeSystem _global = new XQuerySchemaTypeSystem();
+ private static final XQuerySchemaTypeSystem _global = new XQuerySchemaTypeSystem();
// UR types
public static final SchemaTypeImpl ST_ANY_TYPE = _global.getBuiltinType(SchemaType.BTC_ANY_TYPE);
@@ -144,88 +131,88 @@ public class XQuerySchemaTypeSystem exte
private final static XmlValueRef XMLSTR_COLLAPSE = buildString("preserve");
private final static XmlValueRef[] FACETS_NONE = new XmlValueRef[]
- { null, null, null, null, null, null, null, null, null,
- null, null, null };
+ {null, null, null, null, null, null, null, null, null,
+ null, null, null};
private final static boolean[] FIXED_FACETS_NONE = new boolean[]
- { false, false, false, false, false, false, false, false, false,
- false, false, false };
+ {false, false, false, false, false, false, false, false, false,
+ false, false, false};
private final static XmlValueRef[] FACETS_WS_COLLAPSE = new XmlValueRef[]
- { null, null, null, null, null, null, null, null, null,
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, null, null, null, null, null,
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_WS_REPLACE = new XmlValueRef[]
- { null, null, null, null, null, null, null, null, null,
- build_wsstring(SchemaType.WS_REPLACE), null, null };
+ {null, null, null, null, null, null, null, null, null,
+ build_wsstring(SchemaType.WS_REPLACE), null, null};
private final static XmlValueRef[] FACETS_WS_PRESERVE = new XmlValueRef[]
- { null, null, null, null, null, null, null, null, null,
- build_wsstring(SchemaType.WS_PRESERVE), null, null };
+ {null, null, null, null, null, null, null, null, null,
+ build_wsstring(SchemaType.WS_PRESERVE), null, null};
private final static XmlValueRef[] FACETS_INTEGER = new XmlValueRef[]
- { null, null, null, null, null, null, null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, null, null, null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_LONG = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.valueOf(Long.MIN_VALUE)), buildInteger(BigInteger.valueOf(Long.MAX_VALUE)), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.valueOf(Long.MIN_VALUE)), buildInteger(BigInteger.valueOf(Long.MAX_VALUE)), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_INT = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.valueOf(Integer.MIN_VALUE)), buildInteger(BigInteger.valueOf(Integer.MAX_VALUE)), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.valueOf(Integer.MIN_VALUE)), buildInteger(BigInteger.valueOf(Integer.MAX_VALUE)), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_SHORT = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.valueOf(Short.MIN_VALUE)), buildInteger(BigInteger.valueOf(Short.MAX_VALUE)), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.valueOf(Short.MIN_VALUE)), buildInteger(BigInteger.valueOf(Short.MAX_VALUE)), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_BYTE = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.valueOf(Byte.MIN_VALUE)), buildInteger(BigInteger.valueOf(Byte.MAX_VALUE)), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.valueOf(Byte.MIN_VALUE)), buildInteger(BigInteger.valueOf(Byte.MAX_VALUE)), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_NONNEGATIVE = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.ZERO), null, null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.ZERO), null, null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_POSITIVE = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.ONE), null, null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.ONE), null, null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_NONPOSITIVE = new XmlValueRef[]
- { null, null, null, null, null, buildInteger(BigInteger.ZERO), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, null, buildInteger(BigInteger.ZERO), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_NEGATIVE = new XmlValueRef[]
- { null, null, null, null, null, buildInteger(BigInteger.ONE.negate()), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, null, buildInteger(BigInteger.ONE.negate()), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_UNSIGNED_LONG = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.ZERO), buildInteger(new BigInteger("18446744073709551615")), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.ZERO), buildInteger(new BigInteger("18446744073709551615")), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_UNSIGNED_INT = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.ZERO), buildInteger(BigInteger.valueOf(4294967295L)), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.ZERO), buildInteger(BigInteger.valueOf(4294967295L)), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_UNSIGNED_SHORT = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.ZERO), buildInteger(BigInteger.valueOf(65535)), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.ZERO), buildInteger(BigInteger.valueOf(65535)), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_UNSIGNED_BYTE = new XmlValueRef[]
- { null, null, null, null, buildInteger(BigInteger.ZERO), buildInteger(BigInteger.valueOf(255)), null, null, buildNnInteger(BigInteger.ZERO),
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, null, null, null, buildInteger(BigInteger.ZERO), buildInteger(BigInteger.valueOf(255)), null, null, buildNnInteger(BigInteger.ZERO),
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static XmlValueRef[] FACETS_BUILTIN_LIST = new XmlValueRef[]
- { null, buildNnInteger(BigInteger.ONE), null, null, null, null, null, null, null,
- build_wsstring(SchemaType.WS_COLLAPSE), null, null };
+ {null, buildNnInteger(BigInteger.ONE), null, null, null, null, null, null, null,
+ build_wsstring(SchemaType.WS_COLLAPSE), null, null};
private final static boolean[] FIXED_FACETS_WS = new boolean[]
- { false, false, false, false, false, false, false, false, false,
- true, false, false };
+ {false, false, false, false, false, false, false, false, false,
+ true, false, false};
private final static boolean[] FIXED_FACETS_INTEGER = new boolean[]
- { false, false, false, false, false, false, false, false, true,
- true, false, false };
+ {false, false, false, false, false, false, false, false, true,
+ true, false, false};
final static XmlValueRef[] FACETS_UNION = FACETS_NONE;
final static boolean[] FIXED_FACETS_UNION = FIXED_FACETS_NONE;
@@ -238,31 +225,27 @@ public class XQuerySchemaTypeSystem exte
* LAST Static initializer
*/
static {
- for (int i = SchemaType.BTC_NOT_BUILTIN; i <= SchemaType.BTC_LAST_BUILTIN; i++)
- {
+ for (int i = SchemaType.BTC_NOT_BUILTIN; i <= SchemaType.BTC_LAST_BUILTIN; i++) {
_global.fillInType(i);
}
- for (int i = BTC_FIRST_XQUERY; i <= BTC_LAST_XQUERY; i++)
- {
+ for (int i = BTC_FIRST_XQUERY; i <= BTC_LAST_XQUERY; i++) {
_global.fillInType(i);
}
}
- private Map _typeMap = new HashMap();
- private SchemaTypeImpl[] _typeArray = new SchemaTypeImpl[SchemaType.BTC_LAST_BUILTIN + 1 +
- BTC_LAST_XQUERY - BTC_FIRST_XQUERY + 1];
- private Map _handlesToObjects = new HashMap();
- private Map _objectsToHandles = new HashMap();
- private Map _typesByClassname = new HashMap();
- private SchemaContainer _container = new SchemaContainer("http://www.w3.org/2001/XMLSchema");
+ private final Map<QName, SchemaType> _typeMap = new HashMap<>();
+ private final SchemaTypeImpl[] _typeArray = new SchemaTypeImpl[SchemaType.BTC_LAST_BUILTIN + 1 +
+ BTC_LAST_XQUERY - BTC_FIRST_XQUERY + 1];
+ private final Map<String, SchemaType> _handlesToObjects = new HashMap<>();
+ private final Map<SchemaType, String> _objectsToHandles = new HashMap<>();
+ private final Map<String, SchemaType> _typesByClassname = new HashMap<>();
+ private final SchemaContainer _container = new SchemaContainer("http://www.w3.org/2001/XMLSchema");
- private SchemaTypeImpl getBuiltinType(int btc)
- {
+ private SchemaTypeImpl getBuiltinType(int btc) {
return _typeArray[arrayIndexForBtc(btc)];
}
- private XQuerySchemaTypeSystem()
- {
+ private XQuerySchemaTypeSystem() {
_container.setTypeSystem(this);
// UR types
setupType(SchemaType.BTC_ANY_TYPE, "anyType", "org.apache.xmlbeans.XmlObject");
@@ -333,98 +316,80 @@ public class XQuerySchemaTypeSystem exte
/**
* Returns the name of this loader.
*/
- public String getName()
- {
+ public String getName() {
return "xquery.typesystem.builtin";
}
- public boolean isNamespaceDefined(String namespace)
- {
+ public boolean isNamespaceDefined(String namespace) {
return namespace.equals("http://www.w3.org/2001/XMLSchema");
}
- public SchemaType findType(QName name)
- {
- return (SchemaType)_typeMap.get(name);
+ public SchemaType findType(QName name) {
+ return _typeMap.get(name);
}
- public SchemaType findDocumentType(QName name)
- {
+ public SchemaType findDocumentType(QName name) {
return null;
}
- public SchemaType findAttributeType(QName name)
- {
+ public SchemaType findAttributeType(QName name) {
return null;
}
- public SchemaGlobalElement findElement(QName name)
- {
+ public SchemaGlobalElement findElement(QName name) {
return null;
}
- public SchemaGlobalAttribute findAttribute(QName name)
- {
+ public SchemaGlobalAttribute findAttribute(QName name) {
return null;
}
- public SchemaType.Ref findTypeRef(QName name)
- {
+ public SchemaType.Ref findTypeRef(QName name) {
SchemaType type = findType(name);
return (type == null ? null : type.getRef());
}
- public SchemaType.Ref findDocumentTypeRef(QName name)
- {
+ public SchemaType.Ref findDocumentTypeRef(QName name) {
return null;
}
- public SchemaType.Ref findAttributeTypeRef(QName name)
- {
+ public SchemaType.Ref findAttributeTypeRef(QName name) {
return null;
}
- public SchemaGlobalElement.Ref findElementRef(QName name)
- {
+ public SchemaGlobalElement.Ref findElementRef(QName name) {
return null;
}
- public SchemaGlobalAttribute.Ref findAttributeRef(QName name)
- {
+ public SchemaGlobalAttribute.Ref findAttributeRef(QName name) {
return null;
}
- public SchemaModelGroup.Ref findModelGroupRef(QName name)
- {
+ public SchemaModelGroup.Ref findModelGroupRef(QName name) {
return null;
}
- public SchemaAttributeGroup.Ref findAttributeGroupRef(QName name)
- {
+ public SchemaAttributeGroup.Ref findAttributeGroupRef(QName name) {
return null;
}
- public SchemaIdentityConstraint.Ref findIdentityConstraintRef(QName name)
- {
+ public SchemaIdentityConstraint.Ref findIdentityConstraintRef(QName name) {
return null;
}
- public SchemaType typeForClassname(String classname)
- {
- return (SchemaType)_typesByClassname.get(classname);
+ public SchemaType typeForClassname(String classname) {
+ return _typesByClassname.get(classname);
}
- public InputStream getSourceAsStream(String sourceName)
- {
+ public InputStream getSourceAsStream(String sourceName) {
return null; // builtin schema type system has no source.
}
/**
* Returns the global types defined in this loader.
*/
- public SchemaType[] globalTypes()
- {
+ public SchemaType[] globalTypes() {
SchemaType[] result = new SchemaType[_typeArray.length - 1];
System.arraycopy(_typeArray, 1, result, 0, result.length);
return result;
@@ -433,101 +398,87 @@ public class XQuerySchemaTypeSystem exte
/**
* Returns the document types defined in this loader.
*/
- public SchemaType[] documentTypes()
- {
+ public SchemaType[] documentTypes() {
return EMPTY_SCHEMATYPE_ARRAY;
}
/**
* Returns the attribute types defined in this loader.
*/
- public SchemaType[] attributeTypes()
- {
+ public SchemaType[] attributeTypes() {
return EMPTY_SCHEMATYPE_ARRAY;
}
/**
* Returns the global elements defined in this loader.
*/
- public SchemaGlobalElement[] globalElements()
- {
+ public SchemaGlobalElement[] globalElements() {
return EMPTY_SCHEMAELEMENT_ARRAY;
}
/**
* Returns the global attributes defined in this loader.
*/
- public SchemaGlobalAttribute[] globalAttributes()
- {
+ public SchemaGlobalAttribute[] globalAttributes() {
return EMPTY_SCHEMAATTRIBUTE_ARRAY;
}
/**
* Returns the model groups defined in this loader.
*/
- public SchemaModelGroup[] modelGroups()
- {
+ public SchemaModelGroup[] modelGroups() {
return EMPTY_SCHEMAMODELGROUP_ARRAY;
}
/**
* Returns the attribute groups defined in this loader.
*/
- public SchemaAttributeGroup[] attributeGroups()
- {
+ public SchemaAttributeGroup[] attributeGroups() {
return EMPTY_SCHEMAATTRIBUTEGROUP_ARRAY;
}
/*
* Returns the top-level annotations.
*/
- public SchemaAnnotation[] annotations()
- {
+ public SchemaAnnotation[] annotations() {
return EMPTY_SCHEMAANNOTATION_ARRAY;
}
/**
* Returns the handle for the given type within this loader.
*/
- public String handleForType(SchemaType type)
- {
- return (String)_objectsToHandles.get(type);
+ public String handleForType(SchemaType type) {
+ return _objectsToHandles.get(type);
}
/**
* Returns the classloader used by this loader for resolving types.
*/
- public ClassLoader getClassLoader()
- {
+ public ClassLoader getClassLoader() {
return BuiltinSchemaTypeSystem.class.getClassLoader();
}
/**
* Saves this type to a directory.
*/
- public void saveToDirectory(File classDir)
- {
+ public void saveToDirectory(File classDir) {
throw new UnsupportedOperationException("The builtin schema type system cannot be saved.");
}
/**
* Saves this type system using a Filer
*/
- public void save(Filer filer)
- {
+ public void save(Filer filer) {
throw new UnsupportedOperationException("The builtin schema type system cannot be saved.");
}
- private int arrayIndexForBtc(int btc)
- {
+ private int arrayIndexForBtc(int btc) {
return btc > SchemaType.BTC_LAST_BUILTIN ?
btc - BTC_FIRST_XQUERY + SchemaType.BTC_LAST_BUILTIN + 1 : btc;
}
- private static XmlValueRef build_wsstring(int wsr)
- {
- switch (wsr)
- {
+ private static XmlValueRef build_wsstring(int wsr) {
+ switch (wsr) {
case SchemaType.WS_PRESERVE:
return XMLSTR_PRESERVE;
case SchemaType.WS_REPLACE:
@@ -538,107 +489,95 @@ public class XQuerySchemaTypeSystem exte
return null;
}
- private static XmlValueRef buildNnInteger(BigInteger bigInt)
- {
- if (bigInt == null)
+ private static XmlValueRef buildNnInteger(BigInteger bigInt) {
+ if (bigInt == null) {
return null;
- if (bigInt.signum() < 0)
+ }
+ if (bigInt.signum() < 0) {
return null;
- try
- {
+ }
+ try {
XmlIntegerImpl i = new XmlIntegerImpl();
i.setBigIntegerValue(bigInt);
i.setImmutable();
return new XmlValueRef(i);
- }
- catch (XmlValueOutOfRangeException e)
- {
+ } catch (XmlValueOutOfRangeException e) {
return null;
}
}
- private static XmlValueRef buildInteger(BigInteger bigInt)
- {
- if (bigInt == null)
+ private static XmlValueRef buildInteger(BigInteger bigInt) {
+ if (bigInt == null) {
return null;
- try
- {
+ }
+ try {
XmlIntegerImpl i = new XmlIntegerImpl();
i.setBigIntegerValue(bigInt);
i.setImmutable();
return new XmlValueRef(i);
- }
- catch (XmlValueOutOfRangeException e)
- {
+ } catch (XmlValueOutOfRangeException e) {
return null;
}
}
- private static XmlValueRef buildString(String str)
- {
- if (str == null)
+ private static XmlValueRef buildString(String str) {
+ if (str == null) {
return null;
+ }
- try
- {
+ try {
XmlStringImpl i = new XmlStringImpl();
i.setStringValue(str);
i.setImmutable();
return new XmlValueRef(i);
- }
- catch (XmlValueOutOfRangeException e)
- {
+ } catch (XmlValueOutOfRangeException e) {
return null;
}
}
- private void setupType(int btc, String localname, String classname)
- {
+ private void setupType(int btc, String localname, String classname) {
SchemaTypeImpl result = new SchemaTypeImpl(_container, true);
_container.addGlobalType(result.getRef());
QName name = localname == null ? null : QNameHelper.forLNS(localname, "http://www.w3.org/2001/XMLSchema");
String handle = "_BI_" + (localname == null ? "NO_TYPE" : localname);
result.setName(name);
result.setBuiltinTypeCode(btc);
- if (classname != null)
+ if (classname != null) {
result.setFullJavaName(classname);
+ }
_typeArray[arrayIndexForBtc(btc)] = result;
_typeMap.put(name, result);
_handlesToObjects.put(handle, result);
_objectsToHandles.put(result, handle);
- if (classname != null)
+ if (classname != null) {
_typesByClassname.put(classname, result);
+ }
}
- public void resolve()
- {
+ public void resolve() {
// we're born resolved and don't need to do anything.
}
- public SchemaType typeForHandle(String handle)
- {
- return (SchemaType)_handlesToObjects.get(handle);
+ public SchemaType typeForHandle(String handle) {
+ return _handlesToObjects.get(handle);
}
- public SchemaComponent resolveHandle(String handle)
- {
- return (SchemaComponent)_handlesToObjects.get(handle);
+ public SchemaComponent resolveHandle(String handle) {
+ return _handlesToObjects.get(handle);
}
/**
* Links a type.
*/
- public void fillInType(int btc)
- {
+ public void fillInType(int btc) {
SchemaTypeImpl result = getBuiltinType(btc);
SchemaType base;
SchemaType item = null;
int variety = SchemaType.ATOMIC;
int derivationType = SchemaType.DT_RESTRICTION;
- switch (btc)
- {
+ switch (btc) {
case SchemaType.BTC_NOT_BUILTIN:
variety = SchemaType.NOT_SIMPLE;
base = ST_ANY_TYPE;
@@ -651,13 +590,15 @@ public class XQuerySchemaTypeSystem exte
break;
default:
- assert(false);
+ assert (false);
case SchemaType.BTC_ANY_SIMPLE:
- base = ST_ANY_TYPE; break;
+ base = ST_ANY_TYPE;
+ break;
case BTC_ANY_ATOMIC:
base = ST_ANY_SIMPLE;
+ break;
case SchemaType.BTC_BOOLEAN:
case SchemaType.BTC_BASE_64_BINARY:
@@ -678,81 +619,102 @@ public class XQuerySchemaTypeSystem exte
case SchemaType.BTC_G_MONTH_DAY:
case SchemaType.BTC_G_DAY:
case SchemaType.BTC_G_MONTH:
- base = ST_ANY_ATOMIC; break;
+ base = ST_ANY_ATOMIC;
+ break;
// derived numerics
case SchemaType.BTC_INTEGER:
- base = ST_DECIMAL; break;
+ base = ST_DECIMAL;
+ break;
case SchemaType.BTC_LONG:
- base = ST_INTEGER; break;
+ base = ST_INTEGER;
+ break;
case SchemaType.BTC_INT:
- base = ST_LONG; break;
+ base = ST_LONG;
+ break;
case SchemaType.BTC_SHORT:
- base = ST_INT; break;
+ base = ST_INT;
+ break;
case SchemaType.BTC_BYTE:
- base = ST_SHORT; break;
+ base = ST_SHORT;
+ break;
case SchemaType.BTC_NON_POSITIVE_INTEGER:
- base = ST_INTEGER; break;
+ base = ST_INTEGER;
+ break;
case SchemaType.BTC_NEGATIVE_INTEGER:
- base = ST_NON_POSITIVE_INTEGER; break;
+ base = ST_NON_POSITIVE_INTEGER;
+ break;
case SchemaType.BTC_NON_NEGATIVE_INTEGER:
- base = ST_INTEGER; break;
+ base = ST_INTEGER;
+ break;
case SchemaType.BTC_POSITIVE_INTEGER:
- base = ST_NON_NEGATIVE_INTEGER; break;
+ base = ST_NON_NEGATIVE_INTEGER;
+ break;
case SchemaType.BTC_UNSIGNED_LONG:
- base = ST_NON_NEGATIVE_INTEGER; break;
+ base = ST_NON_NEGATIVE_INTEGER;
+ break;
case SchemaType.BTC_UNSIGNED_INT:
- base = ST_UNSIGNED_LONG; break;
+ base = ST_UNSIGNED_LONG;
+ break;
case SchemaType.BTC_UNSIGNED_SHORT:
- base = ST_UNSIGNED_INT; break;
+ base = ST_UNSIGNED_INT;
+ break;
case SchemaType.BTC_UNSIGNED_BYTE:
- base = ST_UNSIGNED_SHORT; break;
+ base = ST_UNSIGNED_SHORT;
+ break;
// derived strings
case SchemaType.BTC_NORMALIZED_STRING:
- base = ST_STRING; break;
+ base = ST_STRING;
+ break;
case SchemaType.BTC_TOKEN:
- base = ST_NORMALIZED_STRING; break;
+ base = ST_NORMALIZED_STRING;
+ break;
case SchemaType.BTC_NAME:
- base = ST_TOKEN; break;
+ base = ST_TOKEN;
+ break;
case SchemaType.BTC_NCNAME:
- base = ST_NAME; break;
+ base = ST_NAME;
+ break;
case SchemaType.BTC_ID:
case SchemaType.BTC_IDREF:
case SchemaType.BTC_ENTITY:
- base = ST_NCNAME; break;
+ base = ST_NCNAME;
+ break;
case SchemaType.BTC_LANGUAGE:
case SchemaType.BTC_NMTOKEN:
- base = ST_TOKEN; break;
+ base = ST_TOKEN;
+ break;
case SchemaType.BTC_IDREFS:
case SchemaType.BTC_ENTITIES:
case SchemaType.BTC_NMTOKENS:
variety = SchemaType.LIST;
base = ST_ANY_SIMPLE;
- if (btc == SchemaType.BTC_IDREFS)
+ if (btc == SchemaType.BTC_IDREFS) {
item = ST_IDREF;
- else if (btc == SchemaType.BTC_ENTITIES)
+ } else if (btc == SchemaType.BTC_ENTITIES) {
item = ST_ENTITY;
- else
+ } else {
item = ST_NMTOKEN;
+ }
break;
// derived durations
@@ -765,26 +727,24 @@ public class XQuerySchemaTypeSystem exte
result.setDerivationType(derivationType);
result.setSimpleTypeVariety(variety);
- if (variety != SchemaType.NOT_SIMPLE)
- {
+ if (variety != SchemaType.NOT_SIMPLE) {
result.setSimpleType(true);
- }
- else
- {
+ } else {
assert (btc == SchemaType.BTC_ANY_TYPE || btc == SchemaType.BTC_NOT_BUILTIN);
}
result.setBaseTypeRef(base == null ? null : base.getRef());
- result.setBaseDepth(base == null ? 0 : ((SchemaTypeImpl)base).getBaseDepth() + 1);
+ result.setBaseDepth(base == null ? 0 : ((SchemaTypeImpl) base).getBaseDepth() + 1);
result.setListItemTypeRef(item == null ? null : item.getRef());
if (btc >= SchemaType.BTC_FIRST_PRIMITIVE && btc <= SchemaType.BTC_LAST_PRIMITIVE ||
- btc == BTC_ANY_ATOMIC)
+ btc == BTC_ANY_ATOMIC) {
result.setPrimitiveTypeRef(result.getRef());
- else if (variety == SchemaType.ATOMIC)
- {
- if (base == null)
+ } else if (variety == SchemaType.ATOMIC) {
+ if (base == null) {
throw new IllegalStateException("Base was null for " + btc);
- if (base.getPrimitiveType() == null)
+ }
+ if (base.getPrimitiveType() == null) {
throw new IllegalStateException("Base.gpt was null for " + btc);
+ }
result.setPrimitiveTypeRef(base.getPrimitiveType().getRef());
}
@@ -794,10 +754,9 @@ public class XQuerySchemaTypeSystem exte
int decimalSize = SchemaType.NOT_DECIMAL;
// now set up facets
- switch (btc)
- {
+ switch (btc) {
default:
- assert(false);
+ assert (false);
case SchemaType.BTC_ANY_TYPE:
case SchemaType.BTC_ANY_SIMPLE:
@@ -955,7 +914,7 @@ public class XQuerySchemaTypeSystem exte
fixedf = FIXED_FACETS_WS;
wsr = SchemaType.WS_COLLAPSE;
break;
-
+
}
// fundamental facets
@@ -964,10 +923,9 @@ public class XQuerySchemaTypeSystem exte
boolean isFinite = false;
boolean isBounded = false;
- switch (btc)
- {
+ switch (btc) {
default:
- assert(false);
+ assert (false);
case SchemaType.BTC_ANY_TYPE:
case SchemaType.BTC_NOT_BUILTIN:
@@ -1051,14 +1009,13 @@ public class XQuerySchemaTypeSystem exte
String pattern = null;
boolean hasPattern = false;
- switch (btc)
- {
+ switch (btc) {
case SchemaType.BTC_LANGUAGE:
- pattern = "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*"; // we used to have ([a-zA-Z]{2}|[iI]-[a-zA-Z]+|[xX]-[a-zA-Z]{1,8})(-[a-zA-Z]{1,8})*", but s4s uses the more lenient pattern to the left.
+ pattern = "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*"; // we used to have ([a-zA-Z]{2}|[iI]-[a-zA-Z]+|[xX]-[a-zA-Z]{1,8})(-[a-zA-Z]{1,8})*", but s4s uses the more lenient pattern to the left.
hasPattern = true;
break;
case SchemaType.BTC_NMTOKEN:
- pattern = "\\c+";
+ pattern = "\\c+";
hasPattern = true;
break;
case SchemaType.BTC_NAME:
@@ -1086,20 +1043,20 @@ public class XQuerySchemaTypeSystem exte
break;
}
- if (pattern != null)
- {
+ if (pattern != null) {
org.apache.xmlbeans.impl.regex.RegularExpression p = null;
- try { p = org.apache.xmlbeans.impl.regex.SchemaRegularExpression.forPattern(pattern); }
- catch (org.apache.xmlbeans.impl.regex.ParseException e) { assert false; }
- result.setPatterns(new org.apache.xmlbeans.impl.regex.RegularExpression[] {p});
+ try {
+ p = org.apache.xmlbeans.impl.regex.SchemaRegularExpression.forPattern(pattern);
+ } catch (org.apache.xmlbeans.impl.regex.ParseException e) {
+ assert false;
+ }
+ result.setPatterns(new org.apache.xmlbeans.impl.regex.RegularExpression[]{p});
}
result.setPatternFacet(hasPattern);
-
// ANY_TYPE has to be able to act like a complex type
- if (btc == SchemaType.BTC_ANY_TYPE)
- {
+ if (btc == SchemaType.BTC_ANY_TYPE) {
SchemaParticleImpl contentModel = new SchemaParticleImpl();
contentModel.setParticleType(SchemaParticle.WILDCARD);
contentModel.setWildcardSet(QNameSet.ALL);
@@ -1117,9 +1074,7 @@ public class XQuerySchemaTypeSystem exte
result.setContentModel(contentModel, attrModel, Collections.EMPTY_MAP, Collections.EMPTY_MAP, false);
result.setAnonymousTypeRefs(EMPTY_SCHEMATYPEREF_ARRAY);
result.setWildcardSummary(QNameSet.ALL, true, QNameSet.ALL, true);
- }
- else if (btc == SchemaType.BTC_NOT_BUILTIN)
- {
+ } else if (btc == SchemaType.BTC_NOT_BUILTIN) {
// so does the no_type : it permits no contents (and even empty contents is invalid, but that's special-cased)
SchemaParticleImpl contentModel = null; // empty
SchemaAttributeModelImpl attrModel = new SchemaAttributeModelImpl(); // empty
@@ -1132,8 +1087,7 @@ public class XQuerySchemaTypeSystem exte
result.setOrderSensitive(false);
}
- public static SchemaType getNoType()
- {
+ public static SchemaType getNoType() {
return ST_NO_TYPE;
}
}
Modified: xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/store/Cur.java
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/store/Cur.java?rev=1881423&r1=1881422&r2=1881423&view=diff
==============================================================================
--- xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/store/Cur.java (original)
+++ xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/store/Cur.java Thu Sep 3 23:18:22 2020
@@ -31,7 +31,7 @@ import java.util.Map;
// DOM Level 3
-final class Cur {
+public final class Cur {
static final int TEXT = 0; // Must be 0
static final int ROOT = 1;
static final int ELEM = 2;
@@ -47,6 +47,37 @@ final class Cur {
static final int END_POS = -1;
static final int NO_POS = -2;
+ Locale _locale;
+
+ Xobj _xobj;
+ int _pos;
+
+ int _state;
+
+ String _id;
+
+ Cur _nextTemp;
+ Cur _prevTemp;
+ int _tempFrame;
+
+ Cur _next;
+ Cur _prev;
+
+ Locale.Ref _ref;
+
+ int _stackTop;
+
+ int _selectionFirst;
+ int _selectionN;
+ int _selectionLoc;
+ int _selectionCount;
+
+ private int _posTemp;
+
+ int _offSrc;
+ int _cchSrc;
+
+
Cur(Locale l) {
_locale = l;
_pos = NO_POS;
@@ -62,7 +93,7 @@ final class Cur {
_selectionCount = 0;
}
- boolean isPositioned() {
+ public boolean isPositioned() {
assert isNormal();
return _xobj != null;
}
@@ -75,74 +106,74 @@ final class Cur {
return k == -ELEM || k == -ROOT;
}
- int kind() {
+ public int kind() {
assert isPositioned();
int kind = _xobj.kind();
return _pos == 0 ? kind : (_pos == END_POS ? -kind : TEXT);
}
- boolean isRoot() {
+ public boolean isRoot() {
assert isPositioned();
return _pos == 0 && _xobj.kind() == ROOT;
}
- boolean isElem() {
+ public boolean isElem() {
assert isPositioned();
return _pos == 0 && _xobj.kind() == ELEM;
}
- boolean isAttr() {
+ public boolean isAttr() {
assert isPositioned();
return _pos == 0 && _xobj.kind() == ATTR;
}
- boolean isComment() {
+ public boolean isComment() {
assert isPositioned();
return _pos == 0 && _xobj.kind() == COMMENT;
}
- boolean isProcinst() {
+ public boolean isProcinst() {
assert isPositioned();
return _pos == 0 && _xobj.kind() == PROCINST;
}
- boolean isText() {
+ public boolean isText() {
assert isPositioned();
return _pos > 0;
}
- boolean isEnd() {
+ public boolean isEnd() {
assert isPositioned();
return _pos == END_POS && _xobj.kind() == ELEM;
}
- boolean isEndRoot() {
+ public boolean isEndRoot() {
assert isPositioned();
return _pos == END_POS && _xobj.kind() == ROOT;
}
- boolean isNode() {
+ public boolean isNode() {
assert isPositioned();
return _pos == 0;
}
- boolean isContainer() {
+ public boolean isContainer() {
assert isPositioned();
return _pos == 0 && kindIsContainer(_xobj.kind());
}
- boolean isFinish() {
+ public boolean isFinish() {
assert isPositioned();
return _pos == END_POS && kindIsContainer(_xobj.kind());
}
- boolean isUserNode() {
+ public boolean isUserNode() {
assert isPositioned();
int k = kind();
return k == ELEM || k == ROOT || (k == ATTR && !isXmlns());
}
- boolean isContainerOrFinish() {
+ public boolean isContainerOrFinish() {
assert isPositioned();
if (_pos != 0 && _pos != END_POS) {
@@ -153,55 +184,55 @@ final class Cur {
return kind == ELEM || kind == -ELEM || kind == ROOT || kind == -ROOT;
}
- boolean isNormalAttr() {
+ public boolean isNormalAttr() {
return isNode() && _xobj.isNormalAttr();
}
- boolean isXmlns() {
+ public boolean isXmlns() {
return isNode() && _xobj.isXmlns();
}
- boolean isTextCData() {
+ public boolean isTextCData() {
return _xobj.hasBookmark(CDataBookmark.class, _pos);
}
- QName getName() {
+ public QName getName() {
assert isNode() || isEnd();
return _xobj._name;
}
- String getLocal() {
+ public String getLocal() {
return getName().getLocalPart();
}
- String getUri() {
+ public String getUri() {
return getName().getNamespaceURI();
}
- String getXmlnsPrefix() {
+ public String getXmlnsPrefix() {
assert isXmlns();
return _xobj.getXmlnsPrefix();
}
- String getXmlnsUri() {
+ public String getXmlnsUri() {
assert isXmlns();
return _xobj.getXmlnsUri();
}
- boolean isDomDocRoot() {
+ public boolean isDomDocRoot() {
return isRoot() && _xobj.getDom() instanceof Document;
}
- boolean isDomFragRoot() {
+ public boolean isDomFragRoot() {
return isRoot() && _xobj.getDom() instanceof DocumentFragment;
}
- int cchRight() {
+ public int cchRight() {
assert isPositioned();
return _xobj.cchRight(_pos);
}
- int cchLeft() {
+ public int cchLeft() {
assert isPositioned();
return _xobj.cchLeft(_pos);
}
@@ -758,7 +789,7 @@ final class Cur {
private int _naked; // Entries without Curs
}
- void push() {
+ public void push() {
assert isPositioned();
int i = _locale._locations.allocate(this);
@@ -788,13 +819,13 @@ final class Cur {
return _locale._locations.isSamePos(_stackTop, this);
}
- boolean isAtEndOfLastPush() {
+ public boolean isAtEndOfLastPush() {
assert _stackTop != Locations.NULL;
return _locale._locations.isAtEndOf(_stackTop, this);
}
- void addToSelection(Cur that) {
+ public void addToSelection(Cur that) {
assert that != null && that.isNormal();
assert isPositioned() && that.isPositioned();
@@ -804,7 +835,7 @@ final class Cur {
_selectionCount++;
}
- void addToSelection() {
+ public void addToSelection() {
assert isPositioned();
int i = _locale._locations.allocate(this);
@@ -854,17 +885,17 @@ final class Cur {
_selectionCount--;
}
- int selectionCount() {
+ public int selectionCount() {
return _selectionCount;
}
- void moveToSelection(int i) {
+ public void moveToSelection(int i) {
assert i >= 0 && i < _selectionCount;
_locale._locations.moveTo(selectionIndex(i), this);
}
- void clearSelection() {
+ public void clearSelection() {
assert _selectionCount >= 0;
while (_selectionCount > 0) {
@@ -872,23 +903,23 @@ final class Cur {
}
}
- boolean toParent() {
+ public boolean toParent() {
return toParent(false);
}
- boolean toParentRaw() {
+ public boolean toParentRaw() {
return toParent(true);
}
- Xobj getParent() {
+ public Xobj getParent() {
return getParent(false);
}
- Xobj getParentRaw() {
+ public Xobj getParentRaw() {
return getParent(true);
}
- boolean hasParent() {
+ public boolean hasParent() {
assert isPositioned();
if (_pos == END_POS || (_pos >= 1 && _pos < _xobj.posAfter())) {
@@ -900,7 +931,7 @@ final class Cur {
return _xobj._parent != null;
}
- Xobj getParentNoRoot() {
+ public Xobj getParentNoRoot() {
assert isPositioned();
if (_pos == END_POS || (_pos >= 1 && _pos < _xobj.posAfter())) {
@@ -916,7 +947,7 @@ final class Cur {
return null;
}
- Xobj getParent(boolean raw) {
+ public Xobj getParent(boolean raw) {
assert isPositioned();
if (_pos == END_POS || (_pos >= 1 && _pos < _xobj.posAfter())) {
@@ -946,7 +977,7 @@ final class Cur {
return root;
}
- boolean toParent(boolean raw) {
+ public boolean toParent(boolean raw) {
Xobj parent = getParent(raw);
if (parent == null) {
@@ -958,7 +989,7 @@ final class Cur {
return true;
}
- void toRoot() {
+ public void toRoot() {
Xobj xobj = _xobj;
while (!xobj.isRoot()) {
if (xobj._parent == null) {
@@ -980,25 +1011,25 @@ final class Cur {
moveTo(xobj);
}
- boolean hasText() {
+ public boolean hasText() {
assert isNode();
return _xobj.hasTextEnsureOccupancy();
}
- boolean hasAttrs() {
+ public boolean hasAttrs() {
assert isNode();
return _xobj.hasAttrs();
}
- boolean hasChildren() {
+ public boolean hasChildren() {
assert isNode();
return _xobj.hasChildren();
}
- boolean toFirstChild() {
+ public boolean toFirstChild() {
assert isNode();
if (!_xobj.hasChildren()) {
@@ -1013,7 +1044,7 @@ final class Cur {
}
}
- protected boolean toLastChild() {
+ public boolean toLastChild() {
assert isNode();
if (!_xobj.hasChildren()) {
@@ -1025,7 +1056,7 @@ final class Cur {
return true;
}
- boolean toNextSibling() {
+ public boolean toNextSibling() {
assert isNode();
if (_xobj.isAttr()) {
@@ -1041,7 +1072,7 @@ final class Cur {
return false;
}
- void setValueAsQName(QName qname) {
+ public void setValueAsQName(QName qname) {
assert isNode();
String value = qname.getLocalPart();
@@ -1058,7 +1089,7 @@ final class Cur {
setValue(value);
}
- void setValue(String value) {
+ public void setValue(String value) {
assert isNode();
moveNodeContents(null, false);
@@ -1070,7 +1101,7 @@ final class Cur {
toParent();
}
- void removeFollowingAttrs() {
+ public void removeFollowingAttrs() {
assert isAttr();
QName attrName = getName();
@@ -1090,7 +1121,7 @@ final class Cur {
pop();
}
- String getAttrValue(QName name) {
+ public String getAttrValue(QName name) {
String s = null;
push();
@@ -1104,7 +1135,7 @@ final class Cur {
return s;
}
- void setAttrValueAsQName(QName value) {
+ public void setAttrValueAsQName(QName value) {
assert isContainer();
final QName name = Locale._xsiType;
@@ -1124,19 +1155,19 @@ final class Cur {
toParent();
}
- boolean removeAttr(QName name) {
+ public boolean removeAttr(QName name) {
assert isContainer();
return _xobj.removeAttr(name);
}
- void setAttrValue(QName name, String value) {
+ public void setAttrValue(QName name, String value) {
assert isContainer();
_xobj.setAttr(name, value);
}
- boolean toAttr(QName name) {
+ public boolean toAttr(QName name) {
assert isNode();
Xobj a = _xobj.getAttr(name);
@@ -1150,7 +1181,7 @@ final class Cur {
return true;
}
- boolean toFirstAttr() {
+ public boolean toFirstAttr() {
assert isNode();
Xobj firstAttr = _xobj.firstAttr();
@@ -1164,7 +1195,7 @@ final class Cur {
return true;
}
- boolean toLastAttr() {
+ public boolean toLastAttr() {
assert isNode();
if (!toFirstAttr()) {
@@ -1179,7 +1210,7 @@ final class Cur {
return true;
}
- boolean toNextAttr() {
+ public boolean toNextAttr() {
assert isAttr() || isContainer();
Xobj nextAttr = _xobj.nextAttr();
@@ -1194,7 +1225,7 @@ final class Cur {
}
@SuppressWarnings("UnusedReturnValue")
- boolean toPrevAttr() {
+ public boolean toPrevAttr() {
if (isAttr()) {
if (_xobj._prevSibling == null) {
moveTo(_xobj.ensureParent());
@@ -1216,7 +1247,7 @@ final class Cur {
}
@SuppressWarnings("UnusedReturnValue")
- boolean skipWithAttrs() {
+ public boolean skipWithAttrs() {
assert isNode();
if (skip()) {
@@ -1236,7 +1267,7 @@ final class Cur {
return true;
}
- boolean skip() {
+ public boolean skip() {
assert isNode();
if (_xobj.isRoot()) {
@@ -1256,13 +1287,13 @@ final class Cur {
return true;
}
- void toEnd() {
+ public void toEnd() {
assert isNode();
moveTo(_xobj, END_POS);
}
- void moveToCharNode(CharNode node) {
+ public void moveToCharNode(CharNode node) {
assert node.getDom() != null && node.getDom().locale() == _locale;
moveToDom(node.getDom());
@@ -1295,7 +1326,7 @@ final class Cur {
}
@SuppressWarnings("UnusedReturnValue")
- boolean prevWithAttrs() {
+ public boolean prevWithAttrs() {
if (prev()) {
return true;
}
@@ -1309,7 +1340,7 @@ final class Cur {
return true;
}
- boolean prev() {
+ public boolean prev() {
assert isPositioned();
if (_xobj.isRoot() && _pos == 0) {
@@ -1360,11 +1391,11 @@ final class Cur {
}
@SuppressWarnings("UnusedReturnValue")
- boolean next(boolean withAttrs) {
+ public boolean next(boolean withAttrs) {
return withAttrs ? nextWithAttrs() : next();
}
- boolean nextWithAttrs() {
+ public boolean nextWithAttrs() {
int k = kind();
if (kindIsContainer(k)) {
@@ -1386,7 +1417,7 @@ final class Cur {
return next();
}
- boolean next() {
+ public boolean next() {
assert isNormal();
Xobj x = _xobj;
@@ -2325,7 +2356,7 @@ final class Cur {
}
}
- Cur weakCur(Object o) {
+ public Cur weakCur(Object o) {
Cur c = _locale.weakCur(o);
c.moveToCur(this);
return c;
@@ -2529,7 +2560,7 @@ final class Cur {
return _xobj._user;
}
- XmlObject getObject() {
+ public XmlObject getObject() {
return isUserNode() ? (XmlObject) getUser() : null;
}
@@ -2539,7 +2570,7 @@ final class Cur {
return _xobj.getUser();
}
- Dom getDom() {
+ public Dom getDom() {
assert isNormal();
assert isPositioned();
@@ -2556,7 +2587,7 @@ final class Cur {
return _xobj.getDom();
}
- void release() {
+ public void release() {
if (_tempFrame >= 0) {
if (_nextTemp != null) {
_nextTemp._prevTemp = _prevTemp;
@@ -2695,8 +2726,8 @@ final class Cur {
return isOnList(_locale._registered);
}
- static final class CurLoadContext extends LoadContext {
- CurLoadContext(Locale l, XmlOptions options) {
+ public static final class CurLoadContext extends LoadContext {
+ public CurLoadContext(Locale l, XmlOptions options) {
options = XmlOptions.maskNull(options);
_locale = l;
@@ -2876,7 +2907,7 @@ final class Cur {
_lastPos = 0;
}
- protected void attr(QName name, String value) {
+ public void attr(QName name, String value) {
assert parent().isContainer();
// BUGBUG - should assert there that there is no text before this attr
@@ -3019,7 +3050,7 @@ final class Cur {
finish().release();
}
- protected Cur finish() {
+ public Cur finish() {
flushText();
if (_after) {
@@ -3391,37 +3422,7 @@ final class Cur {
_id = id;
}
- //
- //
- //
-
- Locale _locale;
-
- Xobj _xobj;
- int _pos;
-
- int _state;
-
- String _id;
-
- Cur _nextTemp;
- Cur _prevTemp;
- int _tempFrame;
-
- Cur _next;
- Cur _prev;
-
- Locale.Ref _ref;
-
- int _stackTop;
-
- int _selectionFirst;
- int _selectionN;
- int _selectionLoc;
- int _selectionCount;
-
- private int _posTemp;
-
- int _offSrc;
- int _cchSrc;
+ public Locale getLocale() {
+ return _locale;
+ }
}
\ No newline at end of file
Modified: xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/store/Cursor.java
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/store/Cursor.java?rev=1881423&r1=1881422&r2=1881423&view=diff
==============================================================================
--- xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/store/Cursor.java (original)
+++ xmlbeans/trunk/src/main/java/org/apache/xmlbeans/impl/store/Cursor.java Thu Sep 3 23:18:22 2020
@@ -22,8 +22,9 @@ import org.apache.xmlbeans.XmlOptions;
import org.apache.xmlbeans.impl.common.GlobalLock;
import org.apache.xmlbeans.impl.common.XMLChar;
import org.apache.xmlbeans.impl.store.Locale.ChangeListener;
-import org.apache.xmlbeans.impl.store.Path.PathEngine;
import org.apache.xmlbeans.impl.store.Saver.TextSaver;
+import org.apache.xmlbeans.impl.xpath.XPathEngine;
+import org.apache.xmlbeans.impl.xpath.XPathFactory;
import org.apache.xmlbeans.xml.stream.XMLInputStream;
import org.w3c.dom.Node;
import org.xml.sax.ContentHandler;
@@ -46,7 +47,7 @@ public final class Cursor implements Xml
static final int TEXT = Cur.TEXT;
private Cur _cur;
- private PathEngine _pathEngine;
+ private XPathEngine _pathEngine;
private int _currentSelection;
private ChangeListener _nextChangeListener;
@@ -57,7 +58,7 @@ public final class Cursor implements Xml
_currentSelection = -1;
}
- Cursor(Cur c) {
+ public Cursor(Cur c) {
this(c._xobj, c._pos);
}
@@ -728,7 +729,7 @@ public final class Cursor implements Xml
assert _pathEngine == null;
- _pathEngine = Path.getCompiledPath(pathExpr, options).execute(_cur, options);
+ _pathEngine = XPathFactory.getCompiledPath(pathExpr, options).execute(_cur, options);
_cur._locale.registerForChange(this);
}
@@ -816,7 +817,7 @@ public final class Cursor implements Xml
return _cur.prefixForNamespace(ns, null, true);
}
- public void _getAllNamespaces(Map<String,String> addToThis) {
+ public void _getAllNamespaces(Map<String, String> addToThis) {
if (!_cur.isContainer()) {
throw new IllegalStateException("Not on a container");
}
@@ -1192,7 +1193,7 @@ public final class Cursor implements Xml
public XmlCursor _execQuery(String query, XmlOptions options) {
checkThisCursor();
- return Query.cursorExecQuery(_cur, query, options);
+ return XPathFactory.cursorExecQuery(_cur, query, options);
}
@@ -2097,7 +2098,7 @@ public final class Cursor implements Xml
return syncWrap(() -> _prefixForNamespace(namespaceURI));
}
- public void getAllNamespaces(Map<String,String> addToThis) {
+ public void getAllNamespaces(Map<String, String> addToThis) {
syncWrap(() -> _getAllNamespaces(addToThis));
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org