javoids
Class ItemLoader

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by javoids.ItemLoader
All Implemented Interfaces:
java.io.Serializable, org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public class ItemLoader
extends org.xml.sax.helpers.DefaultHandler
implements java.io.Serializable

A class to load and store the original item list.

Author:
mallette
See Also:
Serialized Form

Field Summary
private  java.lang.String fileName
          the file name to load
private  boolean isBulletImage
          is an item bullet image being processed?
private  boolean isDamage
          is an item damage being processed?
private  boolean isDefaultCount
          is an item default count being processed?
private  boolean isDefaultImage
          is an item default image being processed?
private  boolean isDirections
          is an item directions being processed?
private  boolean isHomingImage
          is an item homing image being processed?
private  boolean isImage
          is an item image being processed?
private  boolean isImmortal
          is an item immortality being processed?
private  boolean isMaximumCount
          is an item maximum count being processed?
private  boolean isMaximumFired
          is an item maximum firred being processed?
private  boolean isName
          is an item name being processed?
private  boolean isRange
          is an item range being processed?
private  boolean isShieldedHomingImage
          is an item shielded homing image being processed?
private  boolean isShieldedImage
          is an item shielded image being processed?
private  boolean isSize
          is an item size being processed?
private  boolean isSound
          is an item sound being processed?
private  boolean isType
          is an item type being processed?
private  boolean isVelocity
          is an item velocity being processed?
private  Item item
          a built item
private  java.util.HashMap<Item.Type,Item> items
          a mapping of item names to items
private static long serialVersionUID
          This is the version used for serializing/deserializing (storing/retrieving) this object
 
Constructor Summary
ItemLoader(java.lang.String _fileName)
          Load the item properties from an xml file.
 
Method Summary
 void characters(char[] characters, int start, int length)
           
 java.util.HashMap<Item.Type,Item> copyItems()
           
 void endDocument()
          End processing an XML document.
 void endElement(java.lang.String uri, java.lang.String name, java.lang.String itemName)
           
 java.util.HashMap<Item.Type,Item> getItems()
           
 void run()
          run the code needed to load the items from the file in a separate thread.
 void startDocument()
          Start processing an XML document.
 void startElement(java.lang.String uri, java.lang.String name, java.lang.String itemName, org.xml.sax.Attributes attributes)
           
 java.lang.String toString()
          Provide a String representation of this object.
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
This is the version used for serializing/deserializing (storing/retrieving) this object

See Also:
Constant Field Values

fileName

private java.lang.String fileName
the file name to load


items

private java.util.HashMap<Item.Type,Item> items
a mapping of item names to items


item

private Item item
a built item


isType

private boolean isType
is an item type being processed?


isName

private boolean isName
is an item name being processed?


isImmortal

private boolean isImmortal
is an item immortality being processed?


isDefaultImage

private boolean isDefaultImage
is an item default image being processed?


isImage

private boolean isImage
is an item image being processed?


isSound

private boolean isSound
is an item sound being processed?


isDefaultCount

private boolean isDefaultCount
is an item default count being processed?


isMaximumCount

private boolean isMaximumCount
is an item maximum count being processed?


isSize

private boolean isSize
is an item size being processed?


isBulletImage

private boolean isBulletImage
is an item bullet image being processed?


isShieldedImage

private boolean isShieldedImage
is an item shielded image being processed?


isHomingImage

private boolean isHomingImage
is an item homing image being processed?


isShieldedHomingImage

private boolean isShieldedHomingImage
is an item shielded homing image being processed?


isDamage

private boolean isDamage
is an item damage being processed?


isMaximumFired

private boolean isMaximumFired
is an item maximum firred being processed?


isRange

private boolean isRange
is an item range being processed?


isVelocity

private boolean isVelocity
is an item velocity being processed?


isDirections

private boolean isDirections
is an item directions being processed?

Constructor Detail

ItemLoader

public ItemLoader(java.lang.String _fileName)
Load the item properties from an xml file.

Parameters:
_fileName - the file to use to load the item properties
Method Detail

getItems

public java.util.HashMap<Item.Type,Item> getItems()
Returns:
a mapping of the item type to the item

copyItems

public java.util.HashMap<Item.Type,Item> copyItems()
Returns:
a copy of the items that were loaded

run

public void run()
run the code needed to load the items from the file in a separate thread.


startDocument

public void startDocument()
Start processing an XML document.

Specified by:
startDocument in interface org.xml.sax.ContentHandler
Overrides:
startDocument in class org.xml.sax.helpers.DefaultHandler

endDocument

public void endDocument()
End processing an XML document.

Specified by:
endDocument in interface org.xml.sax.ContentHandler
Overrides:
endDocument in class org.xml.sax.helpers.DefaultHandler

startElement

public void startElement(java.lang.String uri,
                         java.lang.String name,
                         java.lang.String itemName,
                         org.xml.sax.Attributes attributes)
Specified by:
startElement in interface org.xml.sax.ContentHandler
Overrides:
startElement in class org.xml.sax.helpers.DefaultHandler
Parameters:
uri - the uri to parse
name - the element name to parse
itemName - the qualified element name
attributes - the attributes for the element

endElement

public void endElement(java.lang.String uri,
                       java.lang.String name,
                       java.lang.String itemName)
Specified by:
endElement in interface org.xml.sax.ContentHandler
Overrides:
endElement in class org.xml.sax.helpers.DefaultHandler
Parameters:
uri - the uri to parse
name - the element name to parse
itemName - the qualified element name

characters

public void characters(char[] characters,
                       int start,
                       int length)
Specified by:
characters in interface org.xml.sax.ContentHandler
Overrides:
characters in class org.xml.sax.helpers.DefaultHandler
Parameters:
characters - the PCDATA between the tags
start - The start position
length - the length of the data

toString

public java.lang.String toString()
Provide a String representation of this object.

Overrides:
toString in class java.lang.Object
Returns:
String A representation of the object for debugging.