Class Scope
- java.lang.Object
-
- java.util.AbstractMap
-
- org.apache.velocity.runtime.directive.Scope
-
- All Implemented Interfaces:
java.util.Map
- Direct Known Subclasses:
ForeachScope
public class Scope extends java.util.AbstractMap
This handles context scoping and metadata for directives.- Version:
- $Id$
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Scope.Info
Class to encapsulate and provide access to info about the current scope for debugging.
-
Constructor Summary
Constructors Constructor Description Scope(java.lang.Object owner, java.lang.Object previous)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Set
entrySet()
java.lang.Object
get(java.lang.Object key)
protected int
getDepth()
Returns the number of control arguments of this type that are stacked up.Scope.Info
getInfo()
Returns info about the current scope for debugging purposes.Scope
getParent()
Returns the parent control reference overridden by the placement of this instance in the context.java.lang.Object
getReplaced()
Returns the user's context reference overridden by the placement of this instance in the context.private java.util.Map
getStorage()
Scope
getTopmost()
Returns the topmost parent control reference, retrieved by simple recursion ongetParent()
.java.lang.Object
put(java.lang.Object key, java.lang.Object value)
protected void
stop()
Allows #stop to easily trigger the proper StopCommand for this scope.-
Methods inherited from class java.util.AbstractMap
clear, clone, containsKey, containsValue, equals, hashCode, isEmpty, keySet, putAll, remove, size, toString, values
-
-
-
-
Field Detail
-
storage
private java.util.Map storage
-
replaced
private java.lang.Object replaced
-
parent
private Scope parent
-
info
private Scope.Info info
-
owner
protected final java.lang.Object owner
-
-
Method Detail
-
getStorage
private java.util.Map getStorage()
-
entrySet
public java.util.Set entrySet()
- Specified by:
entrySet
in interfacejava.util.Map
- Specified by:
entrySet
in classjava.util.AbstractMap
-
get
public java.lang.Object get(java.lang.Object key)
- Specified by:
get
in interfacejava.util.Map
- Overrides:
get
in classjava.util.AbstractMap
-
put
public java.lang.Object put(java.lang.Object key, java.lang.Object value)
- Specified by:
put
in interfacejava.util.Map
- Overrides:
put
in classjava.util.AbstractMap
-
stop
protected void stop()
Allows #stop to easily trigger the proper StopCommand for this scope.
-
getDepth
protected int getDepth()
Returns the number of control arguments of this type that are stacked up. This is the distance between this instance and the topmost instance, plus one. This value will never be negative or zero.
-
getTopmost
public Scope getTopmost()
Returns the topmost parent control reference, retrieved by simple recursion ongetParent()
.
-
getParent
public Scope getParent()
Returns the parent control reference overridden by the placement of this instance in the context.
-
getReplaced
public java.lang.Object getReplaced()
Returns the user's context reference overridden by the placement of this instance in the context. If there was none (as is hoped), then this will return null. This never returns parent controls; those are returned bygetParent()
.
-
getInfo
public Scope.Info getInfo()
Returns info about the current scope for debugging purposes.
-
-