src/main/java/org/tinyradius/packet/RadiusPacket.java
public void removeAttribute(RadiusAttribute attribute) {
        if (attribute.getVendorId() == -1) {
            if (!this.attributes.remove(attribute)) {
                throw new IllegalArgumentException("no such attribute");
            }
        }
        else {
            // remove Vendor-Specific sub-attribute
            List<VendorSpecificAttribute> vsas = getVendorAttributes(attribute.getVendorId());
            for (VendorSpecificAttribute vsa : vsas) {
                List<RadiusAttribute> sas = vsa.getSubAttributes();
                if (sas.contains(attribute)) {
                    vsa.removeSubAttribute(attribute);
                    if (sas.size() == 1)
                    // removed the last sub-attribute
                    // --> remove the whole Vendor-Specific attribute
                    {
                        removeAttribute(vsa);
                    }
                }
            }
        }
    }
/**
     * Removes the specified attribute from this packet.
     *
     * @param attribute RadiusAttribute to remove
     */
Removes the specified attribute from this packet.

@param attribute RadiusAttribute to remove
Removes the specified attribute from this packet . @param attribute RadiusAttribute to remove
public void removeAttribute(RadiusAttribute attribute) {
        if (attribute.getVendorId() == -1) {
            if (!this.attributes.remove(attribute)) {
                throw new IllegalArgumentException("no such attribute");
            }
        }
        else {
            List<VendorSpecificAttribute> vsas = getVendorAttributes(attribute.getVendorId());
            for (VendorSpecificAttribute vsa : vsas) {
                List<RadiusAttribute> sas = vsa.getSubAttributes();
                if (sas.contains(attribute)) {
                    vsa.removeSubAttribute(attribute);
                    if (sas.size() == 1)
                    {
                        removeAttribute(vsa);
                    }
                }
            }
        }
    }
public void removeAttribute ( RadiusAttribute attribute ) { if ( attribute . getVendorId ( ) == - 1 ) { if ( ! this . attributes . remove ( attribute ) ) { throw new IllegalArgumentException ( "no such attribute" ) ; } } else { List < VendorSpecificAttribute > vsas = getVendorAttributes ( attribute . getVendorId ( ) ) ; for ( VendorSpecificAttribute vsa : vsas ) { List < RadiusAttribute > sas = vsa . getSubAttributes ( ) ; if ( sas . contains ( attribute ) ) { vsa . removeSubAttribute ( attribute ) ; if ( sas . size ( ) == 1 ) { removeAttribute ( vsa ) ; } } } } }
Removes the specified attribute from this packet.
Removes the specified attribute from this packet .
// remove Vendor-Specific sub-attribute
 // removed the last sub-attribute
 // --> remove the whole Vendor-Specific attribute
