code: @Override
      public CreatePublicKeyResult createPublicKey(CreatePublicKeyRequest request) {
          request = beforeClientExecution(request);
          return executeCreatePublicKey(request);
      }
docs: <p>
  Add a new public key to CloudFront to use, for example, for field-level encryption. You can add a maximum of 10
  public keys with one AWS account.
  </p>
  
  @param createPublicKeyRequest
  @return Result of the CreatePublicKey operation returned by the service.
  @throws PublicKeyAlreadyExistsException
  The specified public key already exists.
  @throws InvalidArgumentException
  The argument is invalid.
  @throws TooManyPublicKeysException
  The maximum number of public keys for field-level encryption have been created. To create a new public
  key, delete one of the existing keys.
  @sample AmazonCloudFront.CreatePublicKey
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreatePublicKey" target="_top">AWS API
  Documentation</a>