Interface DelayedMulticastRequestDecoder

All Superinterfaces:
DiscoveryFormatProvider, MulticastRequestDecoder

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

    • decodeMulticastRequest

      MulticastRequest decodeMulticastRequest(ByteBuffer buf, InvocationConstraints constraints, ClientSubjectChecker checker, boolean delayConstraintCheck) throws IOException
      Decodes the multicast request data contained in the given buffer in a manner that satisfies the specified absolute constraints and client subject checker (if any), returning a MulticastRequest 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 MulticastRequest's checkConstraints method must be invoked to complete checking of all the constraints.
      • Constraints which must be checked before accessor methods of the returned MulticastRequest 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 MulticastRequest instance's checkConstraints method. The caller must ensure that the contents of buf are not modified before invocation of the checkConstraints method. Additionally, the multicast request data must begin at position zero of buf.
      constraints - the constraints to apply when decoding the data, or null
      checker - the object to use to check the client subject, or null
      delayConstraintCheck - flag to control delayed constraint checking
      Returns:
      the decoded multicast request 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, or if the client subject check fails
      NullPointerException - if buf is null