org.progeeks.graph.xml
Class GraphXmlRenderer

java.lang.Object
  extended by org.progeeks.meta.xml.AbstractXmlPropertyRenderer
      extended by org.progeeks.meta.xml.XmlMetaObjectRenderer
          extended by org.progeeks.graph.xml.GraphXmlRenderer
All Implemented Interfaces:
XmlPropertyRenderer

public class GraphXmlRenderer
extends XmlMetaObjectRenderer

A generic XML renderer that can render any plexus-based Graph object as XML, as long as it is wrapped in a MetaObject. This last part is a restriction I hope to alleviate soon.

Version:
$Revision: 1.14 $
Author:
Paul Speed

Constructor Summary
GraphXmlRenderer()
           
 
Method Summary
 boolean canRenderAsAttribute(java.lang.Object value, PropertyType type)
          Returns true if the property value can be rendered as an attribute.
 java.lang.String getAsAttribute(java.lang.Object value, PropertyType type, XmlRenderContext context)
          Throws UnsupportedOperationException.
 void render(java.lang.Object value, PropertyType type, boolean forceWrap, XmlRenderContext context)
          Renders the specified Mutator's value to the specified writer.
protected  void renderEdge(com.phoenixst.plexus.Graph.Edge edge, com.phoenixst.plexus.Graph graph, MetaClass graphClass, XmlRenderContext context)
           
protected  void renderEdgeElement(java.lang.String field, java.lang.Object value, MetaClass graphClass, XmlRenderContext context)
          Renders a nested element for the object.
protected  void renderNode(java.lang.Object node, com.phoenixst.plexus.Graph graph, MetaClass graphClass, XmlRenderContext context)
           
protected  void renderObject(java.lang.Object obj, boolean forceWrap, boolean register, MetaClassRegistry registry, XmlRenderContext context)
           
 
Methods inherited from class org.progeeks.meta.xml.XmlMetaObjectRenderer
getFields, getRenderDefaultValues, getRenderMetaClassAsAttribute, isRenderedAsAttribute, renderNestedElement, renderProperty, setRenderDefaultValues, setRenderMetaClassAsAttribute, writeAttributes, writeElements
 
Methods inherited from class org.progeeks.meta.xml.AbstractXmlPropertyRenderer
findEm
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GraphXmlRenderer

public GraphXmlRenderer()
Method Detail

canRenderAsAttribute

public boolean canRenderAsAttribute(java.lang.Object value,
                                    PropertyType type)
Returns true if the property value can be rendered as an attribute. Always returns false, graphs can never be rendered as an attribute.

Specified by:
canRenderAsAttribute in interface XmlPropertyRenderer
Overrides:
canRenderAsAttribute in class AbstractXmlPropertyRenderer

getAsAttribute

public java.lang.String getAsAttribute(java.lang.Object value,
                                       PropertyType type,
                                       XmlRenderContext context)
Throws UnsupportedOperationException.

Specified by:
getAsAttribute in interface XmlPropertyRenderer
Overrides:
getAsAttribute in class AbstractXmlPropertyRenderer

renderObject

protected void renderObject(java.lang.Object obj,
                            boolean forceWrap,
                            boolean register,
                            MetaClassRegistry registry,
                            XmlRenderContext context)

renderNode

protected void renderNode(java.lang.Object node,
                          com.phoenixst.plexus.Graph graph,
                          MetaClass graphClass,
                          XmlRenderContext context)

renderEdgeElement

protected void renderEdgeElement(java.lang.String field,
                                 java.lang.Object value,
                                 MetaClass graphClass,
                                 XmlRenderContext context)
Renders a nested element for the object.


renderEdge

protected void renderEdge(com.phoenixst.plexus.Graph.Edge edge,
                          com.phoenixst.plexus.Graph graph,
                          MetaClass graphClass,
                          XmlRenderContext context)

render

public void render(java.lang.Object value,
                   PropertyType type,
                   boolean forceWrap,
                   XmlRenderContext context)
Renders the specified Mutator's value to the specified writer.

Specified by:
render in interface XmlPropertyRenderer
Overrides:
render in class XmlMetaObjectRenderer
Parameters:
value - The value to be rendered.
type - The specific type that was used to lookup this renderer.
forceWrap - Set to true if the renderer should wrap the value in its own style of start/end tags. False indicates that the renderer can optionally leave them out. This is usually used by renderers that support types that can be defined as strings directly.
context - Contains the rendering output information for this session.


Copyright © 2002-2003 Paul Speed. All Rights Reserved.