Package org.apache.jmeter.protocol.http.parser

# Class URLCollection

java.lang.Object
org.apache.jmeter.protocol.http.parser.URLCollection

All Implemented Interfaces:
  `Iterable<URL>`

public class URLCollection extends Object implements Iterable<URL>
Collection class designed for handling URLs

Before a URL is added to the collection, it is wrapped in a URLString class. The iterator unwraps the URL before return.

N.B. Designed for use by HTMLParser, so is not a full implementation - e.g. does not support remove()

## Constructor Summary

Constructors
Constructor
Description
`URLCollection(Collection<URLString> c)`
Creates a new URLCollection from an existing Collection

## Method Summary

Modifier and Type
Method
Description
`boolean`
`add(URL u)`
Adds the URL to the Collection, first wrapping it in the URLString class
`boolean`
`addURL(String url, URL baseUrl)`
Convenience method for adding URLs to the collection.
`Iterator<URL>`
`iterator()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

## Constructor Details

### URLCollection

public URLCollection(Collection<URLString> c)
Creates a new URLCollection from an existing Collection

Parameters:
  `c` - collection to start with (Must not be `null`)

## Method Details

### add

public boolean add(URL u)
Adds the URL to the Collection, first wrapping it in the URLString class

Parameters:
  `u` - URL to add
Returns:
  boolean condition returned by the add() method of the underlying collection

### addURL

public boolean addURL(String url, URL baseUrl)
Convenience method for adding URLs to the collection. If the url parameter is `null`, empty or URL is malformed, nothing is done

Parameters:
  `url` - String, may be null or empty
  `baseUrl` - base for `url` to add information, which might be missing in `url`
Returns:
  boolean condition returned by the add() method of the underlying collection

### iterator

public Iterator<URL> iterator()

Specified by:
  `iterator` in interface `Iterable<URL>`