Class EncryptInterceptor

    • Constructor Detail

      • EncryptInterceptor

        public EncryptInterceptor()
    • Method Detail

      • start

        public void start​(int svc)
                   throws ChannelException
        Description copied from class: ChannelInterceptorBase
        Starts up the channel. This can be called multiple times for individual services to start The svc parameter can be the logical or value of any constants
        Specified by:
        start in interface ChannelInterceptor
        Overrides:
        start in class ChannelInterceptorBase
        Parameters:
        svc - int value of
        DEFAULT - will start all services
        MBR_RX_SEQ - starts the membership receiver
        MBR_TX_SEQ - starts the membership broadcaster
        SND_TX_SEQ - starts the replication transmitter
        SND_RX_SEQ - starts the replication receiver
        Throws:
        ChannelException - if a startup error occurs or the service is already started.
        See Also:
        Channel
      • stop

        public void stop​(int svc)
                  throws ChannelException
        Description copied from class: ChannelInterceptorBase
        Shuts down the channel. This can be called multiple times for individual services to shutdown The svc parameter can be the logical or value of any constants
        Specified by:
        stop in interface ChannelInterceptor
        Overrides:
        stop in class ChannelInterceptorBase
        Parameters:
        svc - int value of
        DEFAULT - will shutdown all services
        MBR_RX_SEQ - stops the membership receiver
        MBR_TX_SEQ - stops the membership broadcaster
        SND_TX_SEQ - stops the replication transmitter
        SND_RX_SEQ - stops the replication receiver
        Throws:
        ChannelException - if a startup error occurs or the service is already started.
        See Also:
        Channel
      • sendMessage

        public void sendMessage​(Member[] destination,
                                ChannelMessage msg,
                                InterceptorPayload payload)
                         throws ChannelException
        Description copied from interface: ChannelInterceptor
        The sendMessage method is called when a message is being sent to one more destinations. The interceptor can modify any of the parameters and then pass on the message down the stack by invoking getNext().sendMessage(destination,msg,payload)
        Alternatively the interceptor can stop the message from being sent by not invoking getNext().sendMessage(destination,msg,payload)
        If the message is to be sent asynchronous the application can be notified of completion and errors by passing in an error handler attached to a payload object.
        The ChannelMessage.getAddress contains Channel.getLocalMember, and can be overwritten to simulate a message sent from another node.
        Specified by:
        sendMessage in interface ChannelInterceptor
        Overrides:
        sendMessage in class ChannelInterceptorBase
        Parameters:
        destination - Member[] - the destination for this message
        msg - ChannelMessage - the message to be sent
        payload - InterceptorPayload - the payload, carrying an error handler and future useful data, can be null
        Throws:
        ChannelException - if a serialization error happens.
        See Also:
        ErrorHandler, InterceptorPayload
      • setEncryptionAlgorithm

        public void setEncryptionAlgorithm​(java.lang.String algorithm)
        Sets the encryption algorithm to be used for encrypting and decrypting channel messages. You must specify the algorithm/mode/padding. Information on standard algorithm names may be found in the Java documentation. Default is AES/CBC/PKCS5Padding.
        Specified by:
        setEncryptionAlgorithm in interface EncryptInterceptorMBean
        Parameters:
        algorithm - The algorithm to use.
      • getEncryptionAlgorithm

        public java.lang.String getEncryptionAlgorithm()
        Gets the encryption algorithm being used to encrypt and decrypt channel messages.
        Specified by:
        getEncryptionAlgorithm in interface EncryptInterceptorMBean
        Returns:
        The algorithm being used, including the algorithm mode and padding.
      • setEncryptionKey

        public void setEncryptionKey​(byte[] key)
        Sets the encryption key for encryption and decryption. The length of the key must be appropriate for the algorithm being used.
        Specified by:
        setEncryptionKey in interface EncryptInterceptorMBean
        Parameters:
        key - The encryption key.
      • setEncryptionKey

        public void setEncryptionKey​(java.lang.String keyBytes)
        Gets the encryption key being used for encryption and decryption. The key is encoded using hex-encoding where e.g. the byte 0xab will be shown as "ab". The length of the string in characters will be twice the length of the key in bytes.
        Parameters:
        keyBytes - The encryption key.
      • getEncryptionKey

        public byte[] getEncryptionKey()
        Gets the encryption key being used for encryption and decryption.
        Specified by:
        getEncryptionKey in interface EncryptInterceptorMBean
        Returns:
        The encryption key.
      • getEncryptionKeyString

        public java.lang.String getEncryptionKeyString()
      • setEncryptionKeyString

        public void setEncryptionKeyString​(java.lang.String encryptionKeyString)
      • setProviderName

        public void setProviderName​(java.lang.String provider)
        Sets the JCA provider name used for cryptographic activities. Default is the JVM platform default.
        Specified by:
        setProviderName in interface EncryptInterceptorMBean
        Parameters:
        provider - The name of the JCA provider.
      • getProviderName

        public java.lang.String getProviderName()
        Gets the JCA provider name used for cryptographic activities. Default is the JVM platform default.
        Specified by:
        getProviderName in interface EncryptInterceptorMBean
        Returns:
        The name of the JCA provider.