HtmlTag
class that is provided to your class in the HTMLManager
constructor and add
method. For a valid HTML page "... every opening tag that needs a closing tag has one and where every closing tag closes the most recently opened tag that requires a closing tag ..." the properties of each tag can be obtained using methods in the HtmlTag
class.
HTMLTag
class. Is it a string? How does my code find out information about a tag?
HTMLTag
is not a string; it's an object. It does contain an element that is a string, such as "p"
or "table"
. Each HTMLTag
object contains many methods for retrieving the properties of the tag. They include:
isOpening/isClosing
)isSelfClosing
)matches
)toString
)src/
subfolder.
Stack
(in addition to your manager's own queue of tags)" what do you mean?
Stack
as auxiliary storage. Construction of a Queue
or a Stack
involves use of the key word new
. This means that at any point (within any scope) in the running of your code you may have, at most (through both fields and local variables) have created one new Stack
in addition to the queue provided within the constructor (not requiring the use of new
). You may NOT use more than the specified auxiliary data structures, no additional stacks/queues, lists, arrays, or other collections.
getTags
should return this queue. If you modify the queue tags using addTag
or removeAll
then getTags
should reflect these types of modifications that happened before the call on getTag
.
asList
, class Arrays
". Why?
HTMLTag.java
won't compile due to a call on Arrays.asList()
. This is probably because you have a file called Arrays.java
in the same directory as their HTMLManager code. Either remove Arrays.java
and Arrays.class
from the folder, or move the HTMLValidator files to another folder.