Javolution 6.0.0 java
|
Public Member Functions | |
void | exit () |
Static Public Member Functions | |
static XMLContext | enter () |
static< T extends AbstractContext > T | enter (Class< T > custom) |
static< T > XMLFormat< T > | getFormat (Class<? extends T > type) |
static AbstractContext | current () |
static void | inherit (AbstractContext ctx) |
Protected Member Functions | |
XMLContext | inner () |
AbstractContext | enterInner () |
AbstractContext | getOuter () |
Static Protected Member Functions | |
static< T extends AbstractContext > T | current (Class< T > type) |
Package Functions | |
protected< T > XMLFormat< T > | searchFormat (Class<? extends T > type) |
public< T > void | setFormat (Class<? extends T > type, XMLFormat< T > format) |
Static Private Member Functions | |
static XMLContext | currentXMLContext () |
Private Attributes | |
final FastMap< Class<?>, XMLFormat<?> > | formats = new FastMap<Class<?>, XMLFormat<?>>() |
AbstractContext | outer |
Static Private Attributes | |
static final XMLFormat | OBJECT_XML = new XMLFormat.Default() |
static final XMLFormat | COLLECTION_XML |
static final XMLFormat | MAP_XML |
static final ThreadLocal< AbstractContext > | CURRENT = new ThreadLocal<AbstractContext>() |
Holds the default implementation of XMLContext.
Definition at line 28 of file XMLContextImpl.java.
|
staticinherited |
Returns the current context for the current thread or
if this thread has no context (default).
Definition at line 61 of file AbstractContext.java.
References javolution.context.AbstractContext.CURRENT.
Referenced by javolution.context.LogContext.currentLogContext(), javolution.context.SecurityContext.currentSecurityContext(), javolution.text.TextContext.currentTextContext(), javolution.xml.XMLContext.currentXMLContext(), javolution.context.LocalContext.enter(), javolution.context.ConcurrentContext.enter(), and javolution.context.LocalContext.Parameter< T >.get().
|
staticprotectedinherited |
Returns the current context of specified type or
if none.
Definition at line 69 of file AbstractContext.java.
References javolution.context.AbstractContext.CURRENT, and javolution.context.AbstractContext.outer.
|
staticprivateinherited |
Returns the current xml context.
Definition at line 68 of file XMLContext.java.
References javolution.context.AbstractContext.current(), and javolution.osgi.internal.OSGiServices.getXMLContext().
Referenced by javolution.xml.XMLContext.enter(), and javolution.xml.XMLContext.getFormat().
|
staticinherited |
Enters and returns a new xml context instance.
Definition at line 41 of file XMLContext.java.
References javolution.xml.XMLContext.currentXMLContext(), and javolution.context.AbstractContext.enterInner().
|
staticinherited |
Enters the scope of a custom context. This method raises a SecurityException if the permission to enter contexts of the specified class is not granted. For example, the following disallow entering any custom context. [code] SecurityContext ctx = SecurityContext.enter(); try { ctx.revoke(new SecurityContext.Permission(AbstractContext.class, "enter")); ... // Cannot enter any custom context. } finally { ctx.exit(); // Back to previous security settings. }[/code]
custom | the custom context to enter. |
IllegalArgumentException | if the specified class default constructor cannot be instantiated. |
SecurityException | if SecurityContext.Permission(custom, "enter")
is not granted. |
Definition at line 101 of file AbstractContext.java.
References javolution.context.SecurityContext.check().
|
protectedinherited |
Enters the scope of an inner context which becomes the current context; the previous current context becomes the outer of this context.
Definition at line 141 of file AbstractContext.java.
References javolution.context.AbstractContext.CURRENT, and javolution.context.AbstractContext.outer.
Referenced by javolution.xml.XMLContext.enter(), javolution.text.TextContext.enter(), javolution.context.LogContext.enter(), javolution.context.LocalContext.enter(), javolution.context.SecurityContext.enter(), and javolution.context.ConcurrentContext.enter().
|
inherited |
Exits the scope of this context; the outer of this context becomes
the current context.
IllegalStateException | if this context is not the current context. |
Reimplemented in javolution.context.ConcurrentContext, and javolution.context.internal.ConcurrentContextImpl.
Definition at line 155 of file AbstractContext.java.
References javolution.context.AbstractContext.CURRENT.
|
staticinherited |
Returns the xml format for the specified type; if none defined the default object xml format (based on TextFormat) is returned.
Definition at line 49 of file XMLContext.java.
References javolution.xml.XMLContext.currentXMLContext(), and javolution.xml.XMLContext.searchFormat().
Referenced by javolution.xml.XMLBinding.getFormat().
|
protectedinherited |
Returns the outer context of this context or
if this context has no outer context.
Definition at line 167 of file AbstractContext.java.
|
staticinherited |
Inherits the specified context which becomes the context of the current thread. This method is particularly useful when creating new threads to make them inherits from the context stack of the parent thread. [code] //Spawns a new thread inheriting the context of the current thread. MyThread myThread = new MyThread(); myThread.inherited = AbstractContext.current(); myThread.start(); ... class MyThread extends Thread { AbstractContext inherited; public void run() { AbstractContext.inherit(inherited); // Sets current context. ... } }[/code]
Definition at line 131 of file AbstractContext.java.
Referenced by javolution.context.internal.ConcurrentThreadImpl.run().
|
protected |
Returns a new inner instance of this context inheriting the properties of this context. The new instance can be configured independently from its parent.
Reimplemented from javolution.context.AbstractContext.
Definition at line 33 of file XMLContextImpl.java.
References javolution.xml.internal.XMLContextImpl.formats.
|
package |
Searches the xml format for the specified type.
Reimplemented from javolution.xml.XMLContext.
Definition at line 41 of file XMLContextImpl.java.
References javolution.util.FastMap< K, V >.get(), javolution.xml.XMLFormat< T >.newInstance(), javolution.util.FastMap< K, V >.put(), and javolution.xml.DefaultXMLFormat.value().
|
package |
Sets the xml format for the specified type (and its sub-types).
Reimplemented from javolution.xml.XMLContext.
Definition at line 68 of file XMLContextImpl.java.
References javolution.util.FastMap< K, V >.put().
|
staticprivate |
Holds the default XML representation for java.util.Collection
instances. This representation consists of nested XML elements one for each element of the collection. The elements' order is defined by the collection iterator order. Collections are deserialized using their default constructor.
Definition at line 89 of file XMLContextImpl.java.
|
staticprivateinherited |
Holds the last context entered (thread-local).
Definition at line 45 of file AbstractContext.java.
Referenced by javolution.context.AbstractContext.current(), javolution.context.AbstractContext.enterInner(), and javolution.context.AbstractContext.exit().
|
private |
Definition at line 30 of file XMLContextImpl.java.
Referenced by javolution.xml.internal.XMLContextImpl.inner().
|
staticprivate |
Holds the default XML representation for java.util.Map
instances. This representation consists of key/value pair as nested XML elements. For example:[code] <javolution.util.FastMap> <Key class="java.lang.String" value="ONE">
<Key class="java.lang.String" value="TWO">
<Key class="java.lang.String" value="THREE">
</javolution.util.FastMap>[/code]
The elements' order is defined by the map's entries iterator order. Maps are deserialized using their default constructor.
Definition at line 126 of file XMLContextImpl.java.
|
staticprivate |
Holds the static XML format for java.lang.Object.class
instances. The XML representation consists of the text representation of the object as a "value" attribute.
Definition at line 80 of file XMLContextImpl.java.
|
privateinherited |
Holds the outer context or
if none (top context).
Definition at line 50 of file AbstractContext.java.
Referenced by javolution.context.AbstractContext.current(), and javolution.context.AbstractContext.enterInner().