private static void printEndpoint (int indent, Endpoint e)
    {
	if (e == null) {
	    indentLine (indent, "<!-- endpoint not available -->");
	    return;
	}

	indentLine (indent, "<endpoint addr='"
	    + e.getEndpointAddress ()
	    + "' direction='"
	    + (e.isInput () ? "in" : "out")
	    + "' type='"
	    + e.getType ()
	    + "'");
	indentLine (indent + 4, "attributes='"
	    + Integer.toHexString (e.getAttributes ())
	    + "' maxpacket='"
	    + e.getMaxPacketSize ()
	    + "' interval='"
	    + e.getInterval ()
	    // XXX two "extra" bytes in audio endpoints ...
	    + "'/>");
	maybePrintDescriptors (indent, e.nextDescriptor ());
    }