fipaos.parser.acl.bitefficient
Class ACLInputStream

java.lang.Object
  |
  +--java.io.InputStream
        |
        +--java.io.FilterInputStream
              |
              +--java.io.BufferedInputStream
                    |
                    +--fipaos.parser.acl.bitefficient.ACLInputStream
All Implemented Interfaces:
ACLConstants

public class ACLInputStream
extends java.io.BufferedInputStream
implements ACLConstants

InputStream that reads fipa-bitefficient-std coded ACL messages from given InputStream.

Author:
Heikki Helin, Mikko Laukkanen

Fields inherited from class java.io.BufferedInputStream
buf, count, marklimit, markpos, pos
 
Fields inherited from class java.io.FilterInputStream
in
 
Fields inherited from interface fipaos.parser.acl.bitefficient.ACLConstants
ACL_ABS_DATE_FOLLOWS, ACL_ABS_DATET_FOLLOWS, ACL_ACCEPTPROPOSAL, ACL_AGREE, ACL_AID_ADDRESSES, ACL_AID_FOLLOWS, ACL_AID_RESOLVERS, ACL_AID_USERDEFINED, ACL_BITEFFICIENT, ACL_BITEFFICIENT_CODETABLE, ACL_BITEFFICIENT_NO_CODETABLE, ACL_CANCEL, ACL_CFP, ACL_CONFIRM, ACL_CT_BLE_STR_FOLLOWS, ACL_CT_STRING_FOLLOWS, ACL_CT_WORD_FOLLOWS, ACL_DATE_FOLLOWS, ACL_DATE_LEN, ACL_DECNUM_FOLLOWS, ACL_DISCONFIRM, ACL_END_OF_COLLECTION, ACL_END_OF_MSG, ACL_END_OF_PARAM, ACL_EXPR_LEVEL_DOWN, ACL_EXPR_LEVEL_UP, ACL_FAILURE, ACL_HEXNUM_FOLLOWS, ACL_INFORM, ACL_INFORMIF, ACL_INFORMREF, ACL_MSG_CONTENT_TYPE_OBJECT, ACL_MSG_CONTENT_TYPE_STRING, ACL_MSG_PARAM_CONTENT, ACL_MSG_PARAM_CONVERSATION_ID, ACL_MSG_PARAM_ENCODING, ACL_MSG_PARAM_IN_REPLY_TO, ACL_MSG_PARAM_LANGUAGE, ACL_MSG_PARAM_ONTOLOGY, ACL_MSG_PARAM_PROTOCOL, ACL_MSG_PARAM_RECEIVER, ACL_MSG_PARAM_REPLY_BY, ACL_MSG_PARAM_REPLY_TO, ACL_MSG_PARAM_REPLY_WITH, ACL_MSG_PARAM_SENDER, ACL_NEW_BLE_STR16_FOLLOWS, ACL_NEW_BLE_STR32_FOLLOWS, ACL_NEW_BLE_STR8_FOLLOWS, ACL_NEW_MSGPARAM_FOLLOWS, ACL_NEW_MSGTYPE_FOLLOWS, ACL_NEW_STRING_FOLLOWS, ACL_NEW_WORD_FOLLOWS, ACL_NOTUNDERSTOOD, ACL_PROPAGATE, ACL_PROPOSE, ACL_PROXY, ACL_QUERYIF, ACL_QUERYREF, ACL_REFUSE, ACL_REJECTPROPOSAL, ACL_REQUEST, ACL_REQUESTWHEN, ACL_REQUESTWHENEVER, ACL_SUBSCRIBE, ACL_VERSION
 
Constructor Summary
ACLInputStream(java.io.InputStream i)
          Initialize the ACLInputStream.
ACLInputStream(java.io.InputStream i, int sz)
          Initialize the ACLInputStream and associated codetable.
ACLInputStream(java.io.InputStream i, int sz, DecoderCodetable ct)
          FIXME: Remove size and add getSize to DecoderCodetable!
 
Method Summary
 DecoderCodetable getCodeTable()
           
 void initialize(int sz)
           
 ACL readMsg()
          Reads an ACL message from the input stream.
 
Methods inherited from class java.io.BufferedInputStream
available, close, mark, markSupported, read, read, reset, skip
 
Methods inherited from class java.io.FilterInputStream
read
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ACLInputStream

public ACLInputStream(java.io.InputStream i)
Initialize the ACLInputStream. If this constructor is used, the stream assumes that all messages are coded without codetables.
Parameters:
i - The InputStream from where the messages are read.

ACLInputStream

public ACLInputStream(java.io.InputStream i,
                      int sz)
Initialize the ACLInputStream and associated codetable.
Parameters:
i - The InputStream from where the messages are read.
sz - The size of the codetable (in bits)

ACLInputStream

public ACLInputStream(java.io.InputStream i,
                      int sz,
                      DecoderCodetable ct)
FIXME: Remove size and add getSize to DecoderCodetable!
Method Detail

initialize

public void initialize(int sz)

getCodeTable

public DecoderCodetable getCodeTable()

readMsg

public ACL readMsg()
            throws java.io.IOException,
                   BEParseException
Reads an ACL message from the input stream.