public SLPDAAdvMessage(ServiceURL url, Vector scopes, Vector attributes, int ts, Locale lang) { super(FUNCTION, lang);
public SLPDAAdvMessage() { super(FUNCTION);
    public SLPDAAdvMessage(ServiceURL url, Vector scopes, Vector attributes, int ts, Locale lang) {        super(FUNCTION, lang);        errorCode = 0;        timestamp = ts;        this.url = url;        this.scopes = scopes;        this.attributes = attributes;        authBlocks = new Vector();                // strings...        urlStr = url.toString();        scopeStr = scopes.toString().substring(1, scopes.toString().length()-1);        // create a String representation of the attributes...        attributeStr = SLPUtil.createAttributeString(attributes);                // calculate length...        length += 6; // error + timestamp        length += 2 + urlStr.length(); // url        length += 2 + scopeStr.length(); // scope list        length += 2 + attributeStr.length(); // attribute list        length += 2; // SPI length (allways 0)        length += 1; // # auth blocks.        for(Iterator iter=authBlocks.iterator(); iter.hasNext(); ) {            length += ((AuthBlock)iter.next()).getLength();        }    }