Package com.opensymphony.module.sitemesh.html

# Interface Tag

All Known Implementing Classes:
  `CustomTag`, `Parser.ReusableToken`

public interface Tag
Tag returned by HTMLTagTokenizer. Allows easy access to element name and attributes. This interface supports read-only operations on the tag. To change a tag, use `CustomTag`.

Author:
  Joe Walnes
See Also:
  - `TokenHandler`
  - `TagTokenizer`
  - `CustomTag`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`CLOSE`
`static final int`
`CLOSE_MAGIC_COMMENT`
`static final int`
`EMPTY`
`static final int`
`OPEN`
`static final int`
`OPEN_MAGIC_COMMENT`

## Method Summary

Modifier and Type
Method
Description
`int`
`getAttributeCount()`
Number of attributes in tag.
`int`
`getAttributeIndex(String name, boolean caseSensitive)`
Determine which attribute has the specified name.
`String`
`getAttributeName(int index)`
Get name of attribute.
`String`
`getAttributeValue(int index)`
Get value of an attribute.
`String`
`getAttributeValue(String name, boolean caseSensitive)`
Get value of an attribute.
`String`
`getContents()`
Get the complete tag in its original form, preserving original formatting.
`String`
`getName()`
Name of tag (ie.
`int`
`getType()`
Type of tag:
<blah> - Tag.OPEN
</blah> - Tag.CLOSE
<blah/> - Tag.EMPTY
`boolean`
`hasAttribute(String name, boolean caseSensitive)`
Determine if an attribute is present.
`void`
`writeTo(CharArray out)`
Write out the complete tag in its original form, preserving original formatting.

## Field Details

### OPEN

static final int OPEN

See Also:
  - Constant Field Values

### CLOSE

static final int CLOSE

See Also:
  - Constant Field Values

### EMPTY

static final int EMPTY

See Also:
  - Constant Field Values

### OPEN_MAGIC_COMMENT

static final int OPEN_MAGIC_COMMENT

See Also:
  - Constant Field Values

### CLOSE_MAGIC_COMMENT

static final int CLOSE_MAGIC_COMMENT

See Also:
  - Constant Field Values

## Method Details

### getContents

String getContents()
Get the complete tag in its original form, preserving original formatting. This has a slight overhead in that it needs to construct a String. For improved performance, use writeTo() instead.

See Also:
  - `writeTo(com.opensymphony.module.sitemesh.html.util.CharArray)`

### writeTo

void writeTo(CharArray out)
Write out the complete tag in its original form, preserving original formatting.

### getName

String getName()
Name of tag (ie. element name).

### getType

int getType()
Type of tag:
<blah> - Tag.OPEN
</blah> - Tag.CLOSE
<blah/> - Tag.EMPTY

### getAttributeCount

int getAttributeCount()
Number of attributes in tag.

### getAttributeIndex

int getAttributeIndex(String name, boolean caseSensitive)
Determine which attribute has the specified name.

### getAttributeName

String getAttributeName(int index)
Get name of attribute.

### getAttributeValue

String getAttributeValue(int index)
Get value of an attribute. If this is an empty attribute (i.e. just a name, without a value), null is returned.

### getAttributeValue

String getAttributeValue(String name, boolean caseSensitive)
Get value of an attribute. If this is an empty attribute (i.e. just a name, without a value), null is returned.

### hasAttribute

boolean hasAttribute(String name, boolean caseSensitive)
Determine if an attribute is present.