def remove_allowed_cipher(self, ip, port, protocol, cipher_names):
        ValueChecker.is_number(port)
        ValueChecker.is_string(protocol)
        ValueChecker.is_string(ip)
        ValueChecker.is_array(cipher_names)

        config = ip + '/' + str(port) + '/' + protocol + '/' + ','.join(
            cipher_names)
        self.__allowed_ciphers.remove(config)

        return self
    def add_allowed_cipher(self, ip, port, protocol, cipher_names):
        ValueChecker.is_number(port)
        ValueChecker.is_string(ip)
        ValueChecker.is_string(protocol)
        ValueChecker.is_array(cipher_names)

        config = ip + '/' + str(port) + '/' + protocol + '/' + ','.join(
            cipher_names)
        if config not in self.__allowed_ciphers:
            self.__allowed_ciphers.append(config)

        return self
 def set_header(self, header):
     ValueChecker.is_array(header)
     self.__header = header
     return self