Package org.eclipse.emf.common.util
Class URI.URIPool.URIComponentsAccessUnit
java.lang.Object
org.eclipse.emf.common.util.Pool.AccessUnit<URI>
org.eclipse.emf.common.util.URI.URIPool.URIPoolAccessUnitBase
org.eclipse.emf.common.util.URI.URIPool.URIComponentsAccessUnit
- Enclosing class:
- URI.URIPool
protected static class URI.URIPool.URIComponentsAccessUnit
extends URI.URIPool.URIPoolAccessUnitBase
An Access unit for component-based access.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final intA value forvalidatethat implies all components need to be validated.protected static final intA value forvalidatethat implies no checking or interning of components is required.protected static final intA value forvalidatethat implies only the query componet needs validating.Fields inherited from class org.eclipse.emf.common.util.URI.URIPool.URIPoolAccessUnitBase
charactersAccessUnit, stringAccessUnit, stringArraySegmentsAndSegmentCountAccessUnit, stringPoolEntry, substringAccessUnitFields inherited from class org.eclipse.emf.common.util.Pool.AccessUnit
createdEntry, entries, hashCode, matchingIndex, next, queue, values, valuesLength -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCreates an instance managed by the given queue. -
Method Summary
Modifier and TypeMethodDescriptionGets the value that should be added to the pool.protected String[]internArray(String[] segments, int count) protected booleanUsed to determine whether the given value from the pool is equal to the value being accessed.voidreset(boolean isExclusive) Prepare the access unit for reuse.protected voidsetValue(boolean hierarchical, String scheme, String authority, String device, boolean absolutePath, String[] segments, String query, int hashCode) Caches the parameters.protected voidsetValue(int validate, boolean hierarchical, String scheme, String authority, String device, boolean absolutePath, String[] segments, String query) Caches the parameters and computes the hash code.Methods inherited from class org.eclipse.emf.common.util.URI.URIPool.URIPoolAccessUnitBase
getValue, intern, intern, intern, intern, intern, intern, internArray, setArbitraryValue, setValueMethods inherited from class org.eclipse.emf.common.util.Pool.AccessUnit
add, getEntry, match, rematches
-
Field Details
-
VALIDATE_NONE
protected static final int VALIDATE_NONEA value forvalidatethat implies no checking or interning of components is required.- See Also:
-
VALIDATE_ALL
protected static final int VALIDATE_ALLA value forvalidatethat implies all components need to be validated.- See Also:
-
VALIDATE_QUERY
protected static final int VALIDATE_QUERYA value forvalidatethat implies only the query componet needs validating.- See Also:
-
-
Constructor Details
-
URIComponentsAccessUnit
Creates an instance managed by the given queue.
-
-
Method Details
-
internArray
-
setValue
protected void setValue(boolean hierarchical, String scheme, String authority, String device, boolean absolutePath, String[] segments, String query, int hashCode) Caches the parameters. -
setValue
protected void setValue(int validate, boolean hierarchical, String scheme, String authority, String device, boolean absolutePath, String[] segments, String query) Caches the parameters and computes the hash code. -
matches
Description copied from class:Pool.AccessUnitUsed to determine whether the given value from the pool is equal to the value being accessed. The default implementation usesObject.equals(Object).- Overrides:
matchesin classPool.AccessUnit<URI>
-
getInternalizedValue
Description copied from class:Pool.AccessUnitGets the value that should be added to the pool. This can be specialized to internalized the value, e.g., to make a copy that uses minimal storage or is read only.- Overrides:
getInternalizedValuein classPool.AccessUnit<URI>
-
reset
public void reset(boolean isExclusive) Description copied from class:Pool.AccessUnitPrepare the access unit for reuse. In particular remove the hard references to each element in both thePool.AccessUnit.valuesandPool.AccessUnit.entriesand then reset thePool.AccessUnit.valuesLengthto 0- Overrides:
resetin classURI.URIPool.URIPoolAccessUnitBase
-