/**
   * Gets the decrypted literal string value of the data using the key provided by the security
   * manager.
   *
   * @param securityManager security manager associated with parent document.
   */
  public String getDecryptedLiteralString(SecurityManager securityManager) {
    // get the security manager instance
    if (securityManager != null && reference != null) {
      // get the key
      byte[] key = securityManager.getDecryptionKey();

      // convert string to bytes.
      byte[] textBytes = Utils.convertByteCharSequenceToByteArray(stringData);

      // Decrypt String
      textBytes = securityManager.decrypt(reference, key, textBytes);

      // convert back to a string
      return Utils.convertByteArrayToByteString(textBytes);
    }
    return getLiteralString();
  }