xml
Class XmlParsedData

java.lang.Object
  extended by sidekick.SideKickParsedData
      extended by xml.XmlParsedData
Direct Known Subclasses:
AntXmlParsedData, HtmlSideKickParsedData, MvnXmlParsedData, TldXmlParsedData

public class XmlParsedData
extends sidekick.SideKickParsedData

Encapsulates the results of parsing a buffer, either using Xerces or the Swing HTML parser.


Field Summary
 boolean allNamespacesBindingsAtTop
          indicate that all xmlns: attributes appear only on the root element so there's no need to find the exact namespace context of the parent node.
 java.util.List<EntityDecl> entities
           
 java.util.Map entityHash
           
 boolean html
           
 java.util.Map<java.lang.String,IDDecl> ids
          A map of all identifiers encountered during the parse, indexed by name.
static int SORT_BY_LINE
           
static int SORT_BY_NAME
           
static int SORT_BY_TYPE
           
protected static boolean sortDown
           
 
Fields inherited from class sidekick.SideKickParsedData
expansionModel, root, tree
 
Constructor Summary
XmlParsedData(java.lang.String fileName, boolean html)
           
 
Method Summary
 void addEntity(EntityDecl entity)
           
protected  sidekick.ExpansionModel createExpansionModel()
           
 void done(org.gjt.sp.jedit.View view)
          Causes node sorting to be done.
 java.util.List<ElementDecl> getAllowedElements(org.gjt.sp.jedit.Buffer buffer, int pos)
           
 java.util.List<ElementDecl> getAllowedElements(org.gjt.sp.jedit.Buffer buffer, int startPos, int endPos)
          get allowed elements at startPos or endPos.
 CompletionInfo getCompletionInfo(java.lang.String ns)
           
 ElementDecl getElementDecl(java.lang.String name, int pos)
           
static java.lang.String getElementLocalName(java.lang.String name)
           
static java.lang.String getElementNamePrefix(java.lang.String name)
           
 IDDecl getIDDecl(java.lang.String id)
          convenience method to find an IDDecl by name
 NamespaceBindings getNamespaceBindings(int pos)
          namespace to prefix (from sidekick)
 CompletionInfo getNoNamespaceCompletionInfo()
           
 java.lang.Object[] getObjectsTo(int pos)
           
static XmlParsedData getParsedData(org.gjt.sp.jedit.View view, boolean signalError)
          get parsed data as XmlParsedData.
 int getSortBy()
           
 java.util.List<IDDecl> getSortedIds()
           
protected  java.util.Comparator<javax.swing.tree.DefaultMutableTreeNode> getSorter()
           
 java.lang.String getXPathForPosition(int pos)
           
 void setCompletionInfo(java.lang.String namespace, CompletionInfo info)
          entities are added to the noNamespaceCompletionInfo, so if a schema is used on top of DTD, the entities are lost.
 void setSortBy(int by)
           
 void setSortDirection(boolean down)
           
 void sort(org.gjt.sp.jedit.View view)
           
 
Methods inherited from class sidekick.SideKickParsedData
canAddToPath, getAsset, getAssetAtOffset, getAssetAtPosition, getFoldHandler, getNodeAt, getParsedData, getTreePathForPosition, setParsedData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SORT_BY_NAME

public static final int SORT_BY_NAME
See Also:
Constant Field Values

SORT_BY_LINE

public static final int SORT_BY_LINE
See Also:
Constant Field Values

SORT_BY_TYPE

public static final int SORT_BY_TYPE
See Also:
Constant Field Values

sortDown

protected static boolean sortDown

html

public boolean html

allNamespacesBindingsAtTop

public boolean allNamespacesBindingsAtTop
indicate that all xmlns: attributes appear only on the root element so there's no need to find the exact namespace context of the parent node. the namespace context of the root element is sufficient


ids

public java.util.Map<java.lang.String,IDDecl> ids
A map of all identifiers encountered during the parse, indexed by name. Used in XMLInsert IDs pane and for Hyperlinks navigation


entities

public java.util.List<EntityDecl> entities

entityHash

public java.util.Map entityHash
Constructor Detail

XmlParsedData

public XmlParsedData(java.lang.String fileName,
                     boolean html)
Method Detail

setCompletionInfo

public void setCompletionInfo(java.lang.String namespace,
                              CompletionInfo info)
entities are added to the noNamespaceCompletionInfo, so if a schema is used on top of DTD, the entities are lost. To prevent this, the entities are copied into the parsed data


getNoNamespaceCompletionInfo

public CompletionInfo getNoNamespaceCompletionInfo()

getCompletionInfo

public CompletionInfo getCompletionInfo(java.lang.String ns)

getElementDecl

public ElementDecl getElementDecl(java.lang.String name,
                                  int pos)

getXPathForPosition

public java.lang.String getXPathForPosition(int pos)

getAllowedElements

public java.util.List<ElementDecl> getAllowedElements(org.gjt.sp.jedit.Buffer buffer,
                                                      int pos)
Returns:
a list containing Elements or Attributes

getAllowedElements

public java.util.List<ElementDecl> getAllowedElements(org.gjt.sp.jedit.Buffer buffer,
                                                      int startPos,
                                                      int endPos)
get allowed elements at startPos or endPos. called by updateTagList only. ensures: - that startPos and endPos are not inside a tag (then returns all global elements), - that both startPos and endPos have a parent (may be different) or none has (then return startPos parent declaration's children). DO KEEP in sync with the other getAllowedElements() !!

See Also:
getAllowedElements(Buffer, int)

getNamespaceBindings

public NamespaceBindings getNamespaceBindings(int pos)
namespace to prefix (from sidekick)


done

public void done(org.gjt.sp.jedit.View view)
Causes node sorting to be done. Subclasse can override for their own purposes, for example, the TldXmlParsedData class renames nodes based on child nodes.


setSortBy

public void setSortBy(int by)

getSortBy

public int getSortBy()

setSortDirection

public void setSortDirection(boolean down)

sort

public void sort(org.gjt.sp.jedit.View view)

getSorter

protected java.util.Comparator<javax.swing.tree.DefaultMutableTreeNode> getSorter()

createExpansionModel

protected sidekick.ExpansionModel createExpansionModel()

addEntity

public void addEntity(EntityDecl entity)

getObjectsTo

public java.lang.Object[] getObjectsTo(int pos)

getIDDecl

public IDDecl getIDDecl(java.lang.String id)
convenience method to find an IDDecl by name

Returns:
found IDDecl or null

getSortedIds

public java.util.List<IDDecl> getSortedIds()

getParsedData

public static XmlParsedData getParsedData(org.gjt.sp.jedit.View view,
                                          boolean signalError)
get parsed data as XmlParsedData.

Parameters:
view - current view
signalError - shows an error dialog when not an XmlParsedData
Returns:
parsed data or null

getElementNamePrefix

public static java.lang.String getElementNamePrefix(java.lang.String name)

getElementLocalName

public static java.lang.String getElementLocalName(java.lang.String name)