* The <code>SCP81Connection</code> interface represents an SCP81 connection to
* a remote entity.
*
* Objects implementing <code>SCP81Connection</code>interface and returned by the
* <code>ConnectionServer.getConnection</code> method are <b>Permanent Entry Point Objects</b>.
*
*
*/
publicinterfaceSCP8XConnectionextendsObservable{
/**
* Request to open the SCP81 connection.
* <p>
* The associated (directly or indirectly) Security Domain of the calling application will handle the PSK TLS security of the communication.
* <p>
* The calling application will be notified once the connection is opened or once the setup failed. This method is non-blocking.
*
* Note:
* <ul>
* <li><em>On invocation of this method, the Security Domain shall register this request.
* Once resources are available, the RTE/OPEN tries to open the connection, manage
* the underlying protocol layers and performs the TLS handshake. The observer is then notified with
* the </em><code>SCP81ConnectionStatus</code><em> event.
* </ul>
* <p>
*
* @param triggeringParameters this buffer contains the administration session triggering parameters
* as defined in table 4-3 of Amendment B of Global Platform Card Specification version 2.2. Tag '81' and
* Length shall be present. Connection parameters defined in Tag '84' may be used if TCP/IP transport is
* provided by the Bearer Independent Protocol of TS 102 223 [4]. Note: If a direct IP connection as specified in TS 102 483 [YY] is used these parameters will be ignored.
* @param parameterOffset the starting offset of the parameters in the <code>triggeringParameters</code> byte array
* @param parameterLength the length of the parameters
* @param contentType this buffer contains the Content-Type header value to be used
* when sending an HTTP POST request through this connection.
* @param contentTypeOffset the starting offset of the content-type in the <code>contentType</code> byte array
* @param contentTypeLength the length of the content-type
*
* @throws ConnectionException with the following reason code:
* <ul>
* <li><code>INVALID_STATE</code> if the connection is already opened.
* <li><code>INVALID_PARAMETERS</code> if the triggering parameters are not correct or if
* the Content-Type header value defined in the parameters is reserved (for example for
* RAM/RFM over HTTP or for SCWS remote administration).
* <li><code>SCP81_KEY_NOT_FOUND</code>if this requested SCP81 key could no be found
* in the associated (directly or indirectly) Security Domain of the calling application. </li>
* <li><code>INVALID_HEADER_FIELD</code>if Content-Type header field does not conform
* with the rules defined in this specification. </li>
* </ul>
*
* @throws ArrayIndexOutOfBoundsException if <code>parameterOffset</code> and <code>parameterLength</code> are causing access
* outside of <code>triggeringParameters</code> array bounds or
* if <code>contentTypeOffset</code> and <code>contentTypeLength</code> are causing access
* outside of <code>contentType</code> array bounds.
*
* @throws NullPointerException if <code>triggeringParameters</code>
* or <code>contentType</code> are equal to <code>null</code>