_propDict)) { if (is_a($this->_propDict["authenticationTransformConstants"], "\Beta\Microsoft\Graph\Model\AuthenticationTransformConstant") || is_null($this->_propDict["authenticationTransformConstants"])) { return $this->_propDict["authenticationTransformConstants"]; } else { $this->_propDict["authenticationTransformConstants"] = new AuthenticationTransformConstant($this->_propDict["authenticationTransformConstants"]); return $this->_propDict["authenticationTransformConstants"]; } } return null; } /** * Sets the authenticationTransformConstants * Authentication Transform Constants. Possible values are: md596, sha196, sha256128, aes128Gcm, aes192Gcm, aes256Gcm. * * @param AuthenticationTransformConstant $val The value to assign to the authenticationTransformConstants * * @return CryptographySuite The CryptographySuite */ public function setAuthenticationTransformConstants($val) { $this->_propDict["authenticationTransformConstants"] = $val; return $this; } /** * Gets the cipherTransformConstants * Cipher Transform Constants. Possible values are: aes256, des, tripleDes, aes128, aes128Gcm, aes256Gcm, aes192, aes192Gcm, chaCha20Poly1305. * * @return VpnEncryptionAlgorithmType|null The cipherTransformConstants */ public function getCipherTransformConstants() { if (array_key_exists("cipherTransformConstants", $this->_propDict)) { if (is_a($this->_propDict["cipherTransformConstants"], "\Beta\Microsoft\Graph\Model\VpnEncryptionAlgorithmType") || is_null($this->_propDict["cipherTransformConstants"])) { return $this->_propDict["cipherTransformConstants"]; } else { $this->_propDict["cipherTransformConstants"] = new VpnEncryptionAlgorithmType($this->_propDict["cipherTransformConstants"]); return $this->_propDict["cipherTransformConstants"]; } } return null; } /** * Sets the cipherTransformConstants * Cipher Transform Constants. Possible values are: aes256, des, tripleDes, aes128, aes128Gcm, aes256Gcm, aes192, aes192Gcm, chaCha20Poly1305. * * @param VpnEncryptionAlgorithmType $val The value to assign to the cipherTransformConstants * * @return CryptographySuite The CryptographySuite */ public function setCipherTransformConstants($val) { $this->_propDict["cipherTransformConstants"] = $val; return $this; } /** * Gets the dhGroup * Diffie Hellman Group. Possible values are: group1, group2, group14, ecp256, ecp384, group24. * * @return DiffieHellmanGroup|null The dhGroup */ public function getDhGroup() { if (array_key_exists("dhGroup", $this->_propDict)) { if (is_a($this->_propDict["dhGroup"], "\Beta\Microsoft\Graph\Model\DiffieHellmanGroup") || is_null($this->_propDict["dhGroup"])) { return $this->_propDict["dhGroup"]; } else { $this->_propDict["dhGroup"] = new DiffieHellmanGroup($this->_propDict["dhGroup"]); return $this->_propDict["dhGroup"]; } } return null; } /** * Sets the dhGroup * Diffie Hellman Group. Possible values are: group1, group2, group14, ecp256, ecp384, group24. * * @param DiffieHellmanGroup $val The value to assign to the dhGroup * * @return CryptographySuite The CryptographySuite */ public function setDhGroup($val) { $this->_propDict["dhGroup"] = $val; return $this; } /** * Gets the encryptionMethod * Encryption Method. Possible values are: aes256, des, tripleDes, aes128, aes128Gcm, aes256Gcm, aes192, aes192Gcm, chaCha20Poly1305. * * @return VpnEncryptionAlgorithmType|null The encryptionMethod */ public function getEncryptionMethod() { if (array_key_exists("encryptionMethod", $this->_propDict)) { if (is_a($this->_propDict["encryptionMethod"], "\Beta\Microsoft\Graph\Model\VpnEncryptionAlgorithmType") || is_null($this->_propDict["encryptionMethod"])) { return $this->_propDict["encryptionMethod"]; } else { $this->_propDict["encryptionMethod"] = new VpnEncryptionAlgorithmType($this->_propDict["encryptionMethod"]); return $this->_propDict["encryptionMethod"]; } } return null; } /** * Sets the encryptionMethod * Encryption Method. Possible values are: aes256, des, tripleDes, aes128, aes128Gcm, aes256Gcm, aes192, aes192Gcm, chaCha20Poly1305. * * @param VpnEncryptionAlgorithmType $val The value to assign to the encryptionMethod * * @return CryptographySuite The CryptographySuite */ public function setEncryptionMethod($val) { $this->_propDict["encryptionMethod"] = $val; return $this; } /** * Gets the integrityCheckMethod * Integrity Check Method. Possible values are: sha2256, sha196, sha1160, sha2384, sha2_512, md5. * * @return VpnIntegrityAlgorithmType|null The integrityCheckMethod */ public function getIntegrityCheckMethod() { if (array_key_exists("integrityCheckMethod", $this->_propDict)) { if (is_a($this->_propDict["integrityCheckMethod"], "\Beta\Microsoft\Graph\Model\VpnIntegrityAlgorithmType") || is_null($this->_propDict["integrityCheckMethod"])) { return $this->_propDict["integrityCheckMethod"]; } else { $this->_propDict["integrityCheckMethod"] = new VpnIntegrityAlgorithmType($this->_propDict["integrityCheckMethod"]); return $this->_propDict["integrityCheckMethod"]; } } return null; } /** * Sets the integrityCheckMethod * Integrity Check Method. Possible values are: sha2256, sha196, sha1160, sha2384, sha2_512, md5. * * @param VpnIntegrityAlgorithmType $val The value to assign to the integrityCheckMethod * * @return CryptographySuite The CryptographySuite */ public function setIntegrityCheckMethod($val) { $this->_propDict["integrityCheckMethod"] = $val; return $this; } /** * Gets the pfsGroup * Perfect Forward Secrecy Group. Possible values are: pfs1, pfs2, pfs2048, ecp256, ecp384, pfsMM, pfs24. * * @return PerfectForwardSecrecyGroup|null The pfsGroup */ public function getPfsGroup() { if (array_key_exists("pfsGroup", $this->_propDict)) { if (is_a($this->_propDict["pfsGroup"], "\Beta\Microsoft\Graph\Model\PerfectForwardSecrecyGroup") || is_null($this->_propDict["pfsGroup"])) { return $this->_propDict["pfsGroup"]; } else { $this->_propDict["pfsGroup"] = new PerfectForwardSecrecyGroup($this->_propDict["pfsGroup"]); return $this->_propDict["pfsGroup"]; } } return null; } /** * Sets the pfsGroup * Perfect Forward Secrecy Group. Possible values are: pfs1, pfs2, pfs2048, ecp256, ecp384, pfsMM, pfs24. * * @param PerfectForwardSecrecyGroup $val The value to assign to the pfsGroup * * @return CryptographySuite The CryptographySuite */ public function setPfsGroup($val) { $this->_propDict["pfsGroup"] = $val; return $this; } }