Die [ProtocolFactory] ist ein einheitliches Werkzeug zum Registrieren von URL-Protokollen (wie z.B. HTTP, FTP). Die [ProtocolFactory] ist Bestandteil der [Design-Utils].

!!!Anwendung
Mit der [ProtocolFactory] können bestehende Protokolle ersetzt oder neue Protokolle registriert. Dies kann zum Testen von Software nützlich sein. Es können Protokolle registriert werden, die HTTP umleiten auf [HTTP-Unit|http://en.wikipedia.org/wiki/HttpUnit], auf einen [MockServer], den [Java-Classpath|JavaProtocol] oder neue Protokolle wie zum Beispiel [DAV|http://en.wikipedia.org/wiki/WebDAV] implementieren.

Die Anwendung erfolgt dabei völlig transparent. Erzeugte URL-Objekte mit einem bestimmten Protocol, also nach dem Schema "<protocol>:/..." werden zu dem entsprechenden Handler geleitet. Dies ist Bestandteil der [Java]-Technologie und daher sehr Systemverträglich.

!Beispiel
Folgende Zeile registriert das Protocol "unit", um alle mit "unit://" beginnenden URL-Verbindungen auf die HTTP-Unit umzuleiten:

{{{
    ProtocolFactory.register(new HttpUnitProtocol());
}}}

!!!Integration
Die [ProtocolFactory] wird bereits von einigen Produkten unterstützt, wie [Abraxas]. Damit ist es möglich, Klassen aus XSD- (XML-Schema) und WSDL-URLs generieren zu lassen, wenn diese auf ein eigenes Protokoll zurückgreifen.

Mit dem [HttpUnitProtocol] lassen sich Web-Services direkt im Build-Durchgang ohne Öffnen von Ports testen.