SSF.OS.BGP4.Path
Class Aggregator

java.lang.Object
  |
  +--SSF.OS.BGP4.Path.Attribute
        |
        +--SSF.OS.BGP4.Path.Aggregator
All Implemented Interfaces:
java.io.Externalizable, java.io.Serializable

public class Aggregator
extends Attribute

The aggregator path attribute. It can only be used with routes which are aggregates, and it indicates the AS number and IP address of the BGP speaker that formed the aggregate route. It is optional and transitive.

See Also:
Serialized Form

Field Summary
 java.lang.String asnh
          The NHI address prefix of the AS of the BGP speaker that formed the aggregate route.
static java.lang.String dmlname
          The name of the path attribute as a DML attribute.
 IPaddress ipaddr
          The IP address of the BGP speaker that formed the aggregate route.
static java.lang.String name
          The name of the attribute as a string.
static java.lang.String nhidmlname
          The name of the NHI form of the path attribute as a DML attribute.
static int TYPECODE
          The aggregator path attribute type code.
 
Fields inherited from class SSF.OS.BGP4.Path.Attribute
dmlnames, MAX_TYPECODE, MIN_TYPECODE, names, nhidmlnames, undefined
 
Constructor Summary
Aggregator()
          Empty constructor.
Aggregator(java.lang.String nh, IPaddress ipa)
          Constructs an aggregator path attribute with the AS and IP address of the aggregating BGP speaker.
 
Method Summary
 int bytecount()
          Returns the number of octets (bytes) needed to represent this aggregator path attribute in an update message.
 Attribute copy()
          Constructs and returns a copy of the attribute.
 boolean equals(Attribute attrib)
          Determines whether or not this path attribute is equivalent to another.
 boolean opt()
          Returns whether the path attribute is optional (true) or well-known (false).
 boolean partial()
          Returns whether or not the information contained in the optional transitive attribute is partial (true) or complete (false).
 void readExternal(java.io.DataInput in)
          Reads the contents of this object from a serialization stream.
 void readExternal(java.io.ObjectInput in)
           
 java.lang.String toString()
          Returns this path attribute as a string.
 boolean trans()
          Returns whether an optional attribute is transitive (true) or non-transitive (false).
 void writeExternal(java.io.DataOutput out)
          Writes the contents of this object to a serialization stream.
 void writeExternal(java.io.ObjectOutput out)
          Writes the contents of this object to a data stream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

TYPECODE

public static final int TYPECODE
The aggregator path attribute type code.

See Also:
Constant Field Values

name

public static final java.lang.String name
The name of the attribute as a string.

See Also:
Constant Field Values

dmlname

public static final java.lang.String dmlname
The name of the path attribute as a DML attribute.

See Also:
Constant Field Values

nhidmlname

public static final java.lang.String nhidmlname
The name of the NHI form of the path attribute as a DML attribute.

See Also:
Constant Field Values

asnh

public java.lang.String asnh
The NHI address prefix of the AS of the BGP speaker that formed the aggregate route.


ipaddr

public IPaddress ipaddr
The IP address of the BGP speaker that formed the aggregate route.

Constructor Detail

Aggregator

public Aggregator()
Empty constructor. Used to deserialize this object.


Aggregator

public Aggregator(java.lang.String nh,
                  IPaddress ipa)
Constructs an aggregator path attribute with the AS and IP address of the aggregating BGP speaker.

Parameters:
nh - The AS NHI address prefix of the aggregating BGP speaker.
ipa - The IP address of the aggregating BGP speaker.
Method Detail

copy

public Attribute copy()
Constructs and returns a copy of the attribute.

Specified by:
copy in class Attribute
Returns:
a copy of the attribute

opt

public final boolean opt()
Description copied from class: Attribute
Returns whether the path attribute is optional (true) or well-known (false).

Specified by:
opt in class Attribute

trans

public final boolean trans()
Description copied from class: Attribute
Returns whether an optional attribute is transitive (true) or non-transitive (false). For well-known attributes it must be true.

Specified by:
trans in class Attribute

partial

public final boolean partial()
Description copied from class: Attribute
Returns whether or not the information contained in the optional transitive attribute is partial (true) or complete (false). For well-known attributes and for optional non-transitive attributes, it must be false.

Specified by:
partial in class Attribute

bytecount

public int bytecount()
Returns the number of octets (bytes) needed to represent this aggregator path attribute in an update message. The number is the sum of the two octets needed for the attribute type (which contains attribute flags and the attribute type code), the one octet needed for the attribute length, and the six octets needed for the attribute value.

Specified by:
bytecount in class Attribute
Returns:
the number of octets (bytes) needed to represent this aggregator discriminator path attribute in an update message

equals

public boolean equals(Attribute attrib)
Determines whether or not this path attribute is equivalent to another.

Specified by:
equals in class Attribute
Parameters:
attrib - A path attribute to compare to this one.
Returns:
true only if the two attributes are equivalent

toString

public final java.lang.String toString()
Returns this path attribute as a string.

Overrides:
toString in class java.lang.Object
Returns:
the attribute as a string

writeExternal

public void writeExternal(java.io.ObjectOutput out)
                   throws java.io.IOException
Description copied from class: Attribute
Writes the contents of this object to a data stream.

Specified by:
writeExternal in interface java.io.Externalizable
Overrides:
writeExternal in class Attribute
Throws:
java.io.IOException - if there's an error writing the data

writeExternal

public void writeExternal(java.io.DataOutput out)
                   throws java.io.IOException
Writes the contents of this object to a serialization stream.

Overrides:
writeExternal in class Attribute
Throws:
java.io.IOException - if there's an error writing the data

readExternal

public void readExternal(java.io.ObjectInput in)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException
Specified by:
readExternal in interface java.io.Externalizable
Overrides:
readExternal in class Attribute
java.io.IOException
java.lang.ClassNotFoundException

readExternal

public void readExternal(java.io.DataInput in)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException
Reads the contents of this object from a serialization stream.

Overrides:
readExternal in class Attribute
Throws:
java.io.IOException - if there's an error reading in the data
java.lang.ClassNotFoundException - if a class name is unrecognized