Interface DelayedMulticastAnnouncementDecoder

All Superinterfaces:
DiscoveryFormatProvider, MulticastAnnouncementDecoder

public interface DelayedMulticastAnnouncementDecoder extends MulticastAnnouncementDecoder
Interface implemented by classes which decode multicast announcement data and additionally support delayed constraint checking.
Since:
2.1
Author:
Sun Microsystems, Inc.
  • Method Details

    • decodeMulticastAnnouncement

      MulticastAnnouncement decodeMulticastAnnouncement(ByteBuffer buf, InvocationConstraints constraints, boolean delayConstraintCheck) throws IOException
      Decodes the multicast announcement data contained in the given buffer in a manner that satisfies the specified absolute constraints, returning a MulticastAnnouncement instance that contains the decoded data, with constraint checking optionally delayed. null constraints are considered equivalent to empty constraints. Constraint checking may be delayed using the delayConstraintCheck flag.

      If the delayConstraintCheck flag is true, the method behaves as follows:

      • Some of the specified constraints may not be checked before this method returns; the returned MulticastAnnouncement's checkConstraints method must be invoked to complete checking of all the constraints.
      • Constraints which must be checked before accessor methods of the returned MulticastAnnouncement can be invoked are always checked before this method returns.
      If delayConstraintCheck is false, all the specified constraints are checked before this method returns.
      Parameters:
      buf - a buffer containing the packet data to decode. The contents of buf may be used on subsequent invocations of the returned MulticastAnnouncement instance's checkConstraints method. The caller must ensure that the contents of buf are not modified before invocation of the checkConstraints method. Additionally, multicast announcement data must begin at position zero of buf.
      constraints - the constraints to apply when decoding the data, or null
      delayConstraintCheck - flag to control delayed constraint checking
      Returns:
      the decoded multicast announcement data
      Throws:
      IOException - if an error occurs in interpreting the data
      UnsupportedConstraintException - if unable to satisfy the specified constraints
      SecurityException - if the given constraints cannot be satisfied due to insufficient caller permissions
      NullPointerException - if buf is null