ProtocolBridgeCredentialExit.java interface
ProtocolBridgeCredentialExit.java
/*
* Licensed Materials - Property of IBM
*
* "Restricted Materials of IBM"
*
* 5724-H72
*
* Copyright IBM Corp. 2008, 2020. All Rights Reserved.
*
* disclosure restricted by GSA ADP Schedule Contract with
* IBM Corp.
*/
package com.ibm.wmqfte.exitroutine.api;
import java.util.Map;
/**
* An interface that is implemented by classes that are to be invoked as part of
* user exit routine processing. This interface defines methods that will
* be invoked by a protocol bridge agent to map the MQ user ID of the transfer to credentials
* that are to be used to access the protocol server.
* There will be one instance of each implementation class per protocol bridge agent. The methods
* can be called from different threads so the methods must be synchronized.
*/
public interface ProtocolBridgeCredentialExit {
/**
* Invoked once when a protocol bridge agent is started. It is intended to initialize
* any resources that are required by the exit
*
* @param bridgeProperties
* The values of properties defined for the protocol bridge.
* These values can only be read, they cannot be updated by
* the implementation.
*
*
* @return true if the initialization is successful and false if unsuccessful
* If false is returned from an exit the protocol bridge agent will not
* start
*/
public boolean initialize(final Map<String> bridgeProperties);
/**
* Invoked once for each transfer to map the MQ user ID in the transfer message to the
* credentials to be used to access the protocol server
*
* @param mqUserId The MQ user ID from which to map to the credentials to be used
* access the protocol server
* @return A credential exit result object that contains the result of the map and
* the credentials to use to access the protocol server
*/
public CredentialExitResult mapMQUserId(final String mqUserId);
/**
* Invoked once when a protocol bridge agent is shutdown. It is intended to release
* any resources that were allocated by the exit
*
* @param bridgeProperties
* The values of properties defined for the protocol bridge.
* These values can only be read, they cannot be updated by
* the implementation.
*
* @return
*/
public void shutdown(final Map<String> bridgeProperties);
}