All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP Maven / Gradle / Ivy

Go to download

IronPDF Java library offers an extensive compatibility range, making it a go-to solution for a wide array of developers. It fully supports JVM languages like Java, Scala, and Kotlin, making it incredibly versatile. This Java PDF library is also compatible with Java 8 and above, providing optimum performance across multiple platforms. It's been designed with a wide range of users in mind Here's a look at what it supports: JVM Languages: Java, Scala, Kotlin.Platforms: Java 8 and above.Operating Systems: Microsoft Windows, Linux, Docker, Azure, AWS.IDEs: Jetbrains IntelliJ IDEA, Eclipse. You can deploy IronPDF Java across various platforms, including Microsoft Windows, Linux, Docker, Azure, and AWS. It is also fully compatible with popular IDEs like Jetbrains IntelliJ IDEA and Eclipse, facilitating smooth project development and management. Your pom.xml file is essentially the backbone of your project when you're using Maven. It's here where you introduce new dependencies that you wish to include. To make IronPDF Java package a part of your Maven project, you simply need to add the following snippets to your pom.xml: Remember to replace '20xx.xx.xxxx' with the latest version of IronPDF. IronPDF Java simplifies the process of creating PDF files. Convert HTML files, HTML strings, or URLs directly to new PDF documents in a few lines of code. The variety of file formats it handles is vast, as it can even transform images into PDF documents and vice versa. Need to use base 64 encoding, base URLs, or custom file paths? No problem! IronPDF Java has got you coveredFor more detail about installing and using IronPDF Java. When you run your project for the first time post-integration, IronPDF's engine binaries will automatically be downloaded. The engine starts its journey when you call any IronPDF function for the first time and takes a breather when your application is either closed or enters an idle state. It is not an open source java PDF library but here's the best part - IronPDF Java is offering a 30-day free trial. So, why wait? Give it a go and boost your PDF operations today.

There is a newer version: 2025.1.1
Show newest version
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: pdfium_signature.proto

// Protobuf Java Version: 3.25.0
package com.ironsoftware.ironpdf.internal.proto;

/**
 * Protobuf type {@code ironpdfengineproto.PdfiumSignRequestStreamP}
 */
public final class PdfiumSignRequestStreamP extends
    com.google.protobuf.GeneratedMessageV3 implements
    // @@protoc_insertion_point(message_implements:ironpdfengineproto.PdfiumSignRequestStreamP)
    PdfiumSignRequestStreamPOrBuilder {
private static final long serialVersionUID = 0L;
  // Use PdfiumSignRequestStreamP.newBuilder() to construct.
  private PdfiumSignRequestStreamP(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    super(builder);
  }
  private PdfiumSignRequestStreamP() {
  }

  @java.lang.Override
  @SuppressWarnings({"unused"})
  protected java.lang.Object newInstance(
      UnusedPrivateParameter unused) {
    return new PdfiumSignRequestStreamP();
  }

  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_descriptor;
  }

  @java.lang.Override
  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.class, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.Builder.class);
  }

  public interface InfoPOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ironpdfengineproto.PdfiumSignRequestStreamP.InfoP)
      com.google.protobuf.MessageOrBuilder {

    /**
     * .ironpdfengineproto.PdfDocumentP document = 1;
     * @return Whether the document field is set.
     */
    boolean hasDocument();
    /**
     * .ironpdfengineproto.PdfDocumentP document = 1;
     * @return The document.
     */
    com.ironsoftware.ironpdf.internal.proto.PdfDocumentP getDocument();
    /**
     * .ironpdfengineproto.PdfDocumentP document = 1;
     */
    com.ironsoftware.ironpdf.internal.proto.PdfDocumentPOrBuilder getDocumentOrBuilder();

    /**
     * string password = 2;
     * @return The password.
     */
    java.lang.String getPassword();
    /**
     * string password = 2;
     * @return The bytes for password.
     */
    com.google.protobuf.ByteString
        getPasswordBytes();

    /**
     * optional .google.protobuf.Timestamp signature_date = 3;
     * @return Whether the signatureDate field is set.
     */
    boolean hasSignatureDate();
    /**
     * optional .google.protobuf.Timestamp signature_date = 3;
     * @return The signatureDate.
     */
    com.google.protobuf.Timestamp getSignatureDate();
    /**
     * optional .google.protobuf.Timestamp signature_date = 3;
     */
    com.google.protobuf.TimestampOrBuilder getSignatureDateOrBuilder();

    /**
     * optional string signing_contact = 4;
     * @return Whether the signingContact field is set.
     */
    boolean hasSigningContact();
    /**
     * optional string signing_contact = 4;
     * @return The signingContact.
     */
    java.lang.String getSigningContact();
    /**
     * optional string signing_contact = 4;
     * @return The bytes for signingContact.
     */
    com.google.protobuf.ByteString
        getSigningContactBytes();

    /**
     * optional string signing_location = 5;
     * @return Whether the signingLocation field is set.
     */
    boolean hasSigningLocation();
    /**
     * optional string signing_location = 5;
     * @return The signingLocation.
     */
    java.lang.String getSigningLocation();
    /**
     * optional string signing_location = 5;
     * @return The bytes for signingLocation.
     */
    com.google.protobuf.ByteString
        getSigningLocationBytes();

    /**
     * optional string signing_reason = 6;
     * @return Whether the signingReason field is set.
     */
    boolean hasSigningReason();
    /**
     * optional string signing_reason = 6;
     * @return The signingReason.
     */
    java.lang.String getSigningReason();
    /**
     * optional string signing_reason = 6;
     * @return The bytes for signingReason.
     */
    com.google.protobuf.ByteString
        getSigningReasonBytes();

    /**
     * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
     * @return Whether the signaturePermission field is set.
     */
    boolean hasSignaturePermission();
    /**
     * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
     * @return The signaturePermission.
     */
    com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP getSignaturePermission();
    /**
     * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
     */
    com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsPOrBuilder getSignaturePermissionOrBuilder();

    /**
     * optional string time_stamp_url = 8;
     * @return Whether the timeStampUrl field is set.
     */
    boolean hasTimeStampUrl();
    /**
     * optional string time_stamp_url = 8;
     * @return The timeStampUrl.
     */
    java.lang.String getTimeStampUrl();
    /**
     * optional string time_stamp_url = 8;
     * @return The bytes for timeStampUrl.
     */
    com.google.protobuf.ByteString
        getTimeStampUrlBytes();

    /**
     * optional string internal_name = 9;
     * @return Whether the internalName field is set.
     */
    boolean hasInternalName();
    /**
     * optional string internal_name = 9;
     * @return The internalName.
     */
    java.lang.String getInternalName();
    /**
     * optional string internal_name = 9;
     * @return The bytes for internalName.
     */
    com.google.protobuf.ByteString
        getInternalNameBytes();

    /**
     * optional int32 page_index = 10;
     * @return Whether the pageIndex field is set.
     */
    boolean hasPageIndex();
    /**
     * optional int32 page_index = 10;
     * @return The pageIndex.
     */
    int getPageIndex();

    /**
     * optional int32 signature_image_x = 11;
     * @return Whether the signatureImageX field is set.
     */
    boolean hasSignatureImageX();
    /**
     * optional int32 signature_image_x = 11;
     * @return The signatureImageX.
     */
    int getSignatureImageX();

    /**
     * optional int32 signature_image_y = 12;
     * @return Whether the signatureImageY field is set.
     */
    boolean hasSignatureImageY();
    /**
     * optional int32 signature_image_y = 12;
     * @return The signatureImageY.
     */
    int getSignatureImageY();

    /**
     * optional int32 signature_image_w = 13;
     * @return Whether the signatureImageW field is set.
     */
    boolean hasSignatureImageW();
    /**
     * optional int32 signature_image_w = 13;
     * @return The signatureImageW.
     */
    int getSignatureImageW();

    /**
     * optional int32 signature_image_h = 14;
     * @return Whether the signatureImageH field is set.
     */
    boolean hasSignatureImageH();
    /**
     * optional int32 signature_image_h = 14;
     * @return The signatureImageH.
     */
    int getSignatureImageH();
  }
  /**
   * Protobuf type {@code ironpdfengineproto.PdfiumSignRequestStreamP.InfoP}
   */
  public static final class InfoP extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ironpdfengineproto.PdfiumSignRequestStreamP.InfoP)
      InfoPOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use InfoP.newBuilder() to construct.
    private InfoP(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private InfoP() {
      password_ = "";
      signingContact_ = "";
      signingLocation_ = "";
      signingReason_ = "";
      timeStampUrl_ = "";
      internalName_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new InfoP();
    }

    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_InfoP_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_InfoP_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.class, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.Builder.class);
    }

    private int bitField0_;
    public static final int DOCUMENT_FIELD_NUMBER = 1;
    private com.ironsoftware.ironpdf.internal.proto.PdfDocumentP document_;
    /**
     * .ironpdfengineproto.PdfDocumentP document = 1;
     * @return Whether the document field is set.
     */
    @java.lang.Override
    public boolean hasDocument() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * .ironpdfengineproto.PdfDocumentP document = 1;
     * @return The document.
     */
    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfDocumentP getDocument() {
      return document_ == null ? com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.getDefaultInstance() : document_;
    }
    /**
     * .ironpdfengineproto.PdfDocumentP document = 1;
     */
    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfDocumentPOrBuilder getDocumentOrBuilder() {
      return document_ == null ? com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.getDefaultInstance() : document_;
    }

    public static final int PASSWORD_FIELD_NUMBER = 2;
    @SuppressWarnings("serial")
    private volatile java.lang.Object password_ = "";
    /**
     * string password = 2;
     * @return The password.
     */
    @java.lang.Override
    public java.lang.String getPassword() {
      java.lang.Object ref = password_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        password_ = s;
        return s;
      }
    }
    /**
     * string password = 2;
     * @return The bytes for password.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getPasswordBytes() {
      java.lang.Object ref = password_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        password_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SIGNATURE_DATE_FIELD_NUMBER = 3;
    private com.google.protobuf.Timestamp signatureDate_;
    /**
     * optional .google.protobuf.Timestamp signature_date = 3;
     * @return Whether the signatureDate field is set.
     */
    @java.lang.Override
    public boolean hasSignatureDate() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * optional .google.protobuf.Timestamp signature_date = 3;
     * @return The signatureDate.
     */
    @java.lang.Override
    public com.google.protobuf.Timestamp getSignatureDate() {
      return signatureDate_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : signatureDate_;
    }
    /**
     * optional .google.protobuf.Timestamp signature_date = 3;
     */
    @java.lang.Override
    public com.google.protobuf.TimestampOrBuilder getSignatureDateOrBuilder() {
      return signatureDate_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : signatureDate_;
    }

    public static final int SIGNING_CONTACT_FIELD_NUMBER = 4;
    @SuppressWarnings("serial")
    private volatile java.lang.Object signingContact_ = "";
    /**
     * optional string signing_contact = 4;
     * @return Whether the signingContact field is set.
     */
    @java.lang.Override
    public boolean hasSigningContact() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * optional string signing_contact = 4;
     * @return The signingContact.
     */
    @java.lang.Override
    public java.lang.String getSigningContact() {
      java.lang.Object ref = signingContact_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        signingContact_ = s;
        return s;
      }
    }
    /**
     * optional string signing_contact = 4;
     * @return The bytes for signingContact.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getSigningContactBytes() {
      java.lang.Object ref = signingContact_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        signingContact_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SIGNING_LOCATION_FIELD_NUMBER = 5;
    @SuppressWarnings("serial")
    private volatile java.lang.Object signingLocation_ = "";
    /**
     * optional string signing_location = 5;
     * @return Whether the signingLocation field is set.
     */
    @java.lang.Override
    public boolean hasSigningLocation() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * optional string signing_location = 5;
     * @return The signingLocation.
     */
    @java.lang.Override
    public java.lang.String getSigningLocation() {
      java.lang.Object ref = signingLocation_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        signingLocation_ = s;
        return s;
      }
    }
    /**
     * optional string signing_location = 5;
     * @return The bytes for signingLocation.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getSigningLocationBytes() {
      java.lang.Object ref = signingLocation_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        signingLocation_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SIGNING_REASON_FIELD_NUMBER = 6;
    @SuppressWarnings("serial")
    private volatile java.lang.Object signingReason_ = "";
    /**
     * optional string signing_reason = 6;
     * @return Whether the signingReason field is set.
     */
    @java.lang.Override
    public boolean hasSigningReason() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * optional string signing_reason = 6;
     * @return The signingReason.
     */
    @java.lang.Override
    public java.lang.String getSigningReason() {
      java.lang.Object ref = signingReason_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        signingReason_ = s;
        return s;
      }
    }
    /**
     * optional string signing_reason = 6;
     * @return The bytes for signingReason.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getSigningReasonBytes() {
      java.lang.Object ref = signingReason_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        signingReason_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SIGNATURE_PERMISSION_FIELD_NUMBER = 7;
    private com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP signaturePermission_;
    /**
     * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
     * @return Whether the signaturePermission field is set.
     */
    @java.lang.Override
    public boolean hasSignaturePermission() {
      return ((bitField0_ & 0x00000020) != 0);
    }
    /**
     * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
     * @return The signaturePermission.
     */
    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP getSignaturePermission() {
      return signaturePermission_ == null ? com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.getDefaultInstance() : signaturePermission_;
    }
    /**
     * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
     */
    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsPOrBuilder getSignaturePermissionOrBuilder() {
      return signaturePermission_ == null ? com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.getDefaultInstance() : signaturePermission_;
    }

    public static final int TIME_STAMP_URL_FIELD_NUMBER = 8;
    @SuppressWarnings("serial")
    private volatile java.lang.Object timeStampUrl_ = "";
    /**
     * optional string time_stamp_url = 8;
     * @return Whether the timeStampUrl field is set.
     */
    @java.lang.Override
    public boolean hasTimeStampUrl() {
      return ((bitField0_ & 0x00000040) != 0);
    }
    /**
     * optional string time_stamp_url = 8;
     * @return The timeStampUrl.
     */
    @java.lang.Override
    public java.lang.String getTimeStampUrl() {
      java.lang.Object ref = timeStampUrl_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        timeStampUrl_ = s;
        return s;
      }
    }
    /**
     * optional string time_stamp_url = 8;
     * @return The bytes for timeStampUrl.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getTimeStampUrlBytes() {
      java.lang.Object ref = timeStampUrl_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        timeStampUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int INTERNAL_NAME_FIELD_NUMBER = 9;
    @SuppressWarnings("serial")
    private volatile java.lang.Object internalName_ = "";
    /**
     * optional string internal_name = 9;
     * @return Whether the internalName field is set.
     */
    @java.lang.Override
    public boolean hasInternalName() {
      return ((bitField0_ & 0x00000080) != 0);
    }
    /**
     * optional string internal_name = 9;
     * @return The internalName.
     */
    @java.lang.Override
    public java.lang.String getInternalName() {
      java.lang.Object ref = internalName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        internalName_ = s;
        return s;
      }
    }
    /**
     * optional string internal_name = 9;
     * @return The bytes for internalName.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getInternalNameBytes() {
      java.lang.Object ref = internalName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        internalName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int PAGE_INDEX_FIELD_NUMBER = 10;
    private int pageIndex_ = 0;
    /**
     * optional int32 page_index = 10;
     * @return Whether the pageIndex field is set.
     */
    @java.lang.Override
    public boolean hasPageIndex() {
      return ((bitField0_ & 0x00000100) != 0);
    }
    /**
     * optional int32 page_index = 10;
     * @return The pageIndex.
     */
    @java.lang.Override
    public int getPageIndex() {
      return pageIndex_;
    }

    public static final int SIGNATURE_IMAGE_X_FIELD_NUMBER = 11;
    private int signatureImageX_ = 0;
    /**
     * optional int32 signature_image_x = 11;
     * @return Whether the signatureImageX field is set.
     */
    @java.lang.Override
    public boolean hasSignatureImageX() {
      return ((bitField0_ & 0x00000200) != 0);
    }
    /**
     * optional int32 signature_image_x = 11;
     * @return The signatureImageX.
     */
    @java.lang.Override
    public int getSignatureImageX() {
      return signatureImageX_;
    }

    public static final int SIGNATURE_IMAGE_Y_FIELD_NUMBER = 12;
    private int signatureImageY_ = 0;
    /**
     * optional int32 signature_image_y = 12;
     * @return Whether the signatureImageY field is set.
     */
    @java.lang.Override
    public boolean hasSignatureImageY() {
      return ((bitField0_ & 0x00000400) != 0);
    }
    /**
     * optional int32 signature_image_y = 12;
     * @return The signatureImageY.
     */
    @java.lang.Override
    public int getSignatureImageY() {
      return signatureImageY_;
    }

    public static final int SIGNATURE_IMAGE_W_FIELD_NUMBER = 13;
    private int signatureImageW_ = 0;
    /**
     * optional int32 signature_image_w = 13;
     * @return Whether the signatureImageW field is set.
     */
    @java.lang.Override
    public boolean hasSignatureImageW() {
      return ((bitField0_ & 0x00000800) != 0);
    }
    /**
     * optional int32 signature_image_w = 13;
     * @return The signatureImageW.
     */
    @java.lang.Override
    public int getSignatureImageW() {
      return signatureImageW_;
    }

    public static final int SIGNATURE_IMAGE_H_FIELD_NUMBER = 14;
    private int signatureImageH_ = 0;
    /**
     * optional int32 signature_image_h = 14;
     * @return Whether the signatureImageH field is set.
     */
    @java.lang.Override
    public boolean hasSignatureImageH() {
      return ((bitField0_ & 0x00001000) != 0);
    }
    /**
     * optional int32 signature_image_h = 14;
     * @return The signatureImageH.
     */
    @java.lang.Override
    public int getSignatureImageH() {
      return signatureImageH_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (((bitField0_ & 0x00000001) != 0)) {
        output.writeMessage(1, getDocument());
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(password_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, password_);
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeMessage(3, getSignatureDate());
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, signingContact_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, signingLocation_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, signingReason_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        output.writeMessage(7, getSignaturePermission());
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, timeStampUrl_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 9, internalName_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        output.writeInt32(10, pageIndex_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        output.writeInt32(11, signatureImageX_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        output.writeInt32(12, signatureImageY_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        output.writeInt32(13, signatureImageW_);
      }
      if (((bitField0_ & 0x00001000) != 0)) {
        output.writeInt32(14, signatureImageH_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getDocument());
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(password_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, password_);
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, getSignatureDate());
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, signingContact_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, signingLocation_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, signingReason_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, getSignaturePermission());
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, timeStampUrl_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, internalName_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(10, pageIndex_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(11, signatureImageX_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(12, signatureImageY_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(13, signatureImageW_);
      }
      if (((bitField0_ & 0x00001000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(14, signatureImageH_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP)) {
        return super.equals(obj);
      }
      com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP other = (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) obj;

      if (hasDocument() != other.hasDocument()) return false;
      if (hasDocument()) {
        if (!getDocument()
            .equals(other.getDocument())) return false;
      }
      if (!getPassword()
          .equals(other.getPassword())) return false;
      if (hasSignatureDate() != other.hasSignatureDate()) return false;
      if (hasSignatureDate()) {
        if (!getSignatureDate()
            .equals(other.getSignatureDate())) return false;
      }
      if (hasSigningContact() != other.hasSigningContact()) return false;
      if (hasSigningContact()) {
        if (!getSigningContact()
            .equals(other.getSigningContact())) return false;
      }
      if (hasSigningLocation() != other.hasSigningLocation()) return false;
      if (hasSigningLocation()) {
        if (!getSigningLocation()
            .equals(other.getSigningLocation())) return false;
      }
      if (hasSigningReason() != other.hasSigningReason()) return false;
      if (hasSigningReason()) {
        if (!getSigningReason()
            .equals(other.getSigningReason())) return false;
      }
      if (hasSignaturePermission() != other.hasSignaturePermission()) return false;
      if (hasSignaturePermission()) {
        if (!getSignaturePermission()
            .equals(other.getSignaturePermission())) return false;
      }
      if (hasTimeStampUrl() != other.hasTimeStampUrl()) return false;
      if (hasTimeStampUrl()) {
        if (!getTimeStampUrl()
            .equals(other.getTimeStampUrl())) return false;
      }
      if (hasInternalName() != other.hasInternalName()) return false;
      if (hasInternalName()) {
        if (!getInternalName()
            .equals(other.getInternalName())) return false;
      }
      if (hasPageIndex() != other.hasPageIndex()) return false;
      if (hasPageIndex()) {
        if (getPageIndex()
            != other.getPageIndex()) return false;
      }
      if (hasSignatureImageX() != other.hasSignatureImageX()) return false;
      if (hasSignatureImageX()) {
        if (getSignatureImageX()
            != other.getSignatureImageX()) return false;
      }
      if (hasSignatureImageY() != other.hasSignatureImageY()) return false;
      if (hasSignatureImageY()) {
        if (getSignatureImageY()
            != other.getSignatureImageY()) return false;
      }
      if (hasSignatureImageW() != other.hasSignatureImageW()) return false;
      if (hasSignatureImageW()) {
        if (getSignatureImageW()
            != other.getSignatureImageW()) return false;
      }
      if (hasSignatureImageH() != other.hasSignatureImageH()) return false;
      if (hasSignatureImageH()) {
        if (getSignatureImageH()
            != other.getSignatureImageH()) return false;
      }
      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasDocument()) {
        hash = (37 * hash) + DOCUMENT_FIELD_NUMBER;
        hash = (53 * hash) + getDocument().hashCode();
      }
      hash = (37 * hash) + PASSWORD_FIELD_NUMBER;
      hash = (53 * hash) + getPassword().hashCode();
      if (hasSignatureDate()) {
        hash = (37 * hash) + SIGNATURE_DATE_FIELD_NUMBER;
        hash = (53 * hash) + getSignatureDate().hashCode();
      }
      if (hasSigningContact()) {
        hash = (37 * hash) + SIGNING_CONTACT_FIELD_NUMBER;
        hash = (53 * hash) + getSigningContact().hashCode();
      }
      if (hasSigningLocation()) {
        hash = (37 * hash) + SIGNING_LOCATION_FIELD_NUMBER;
        hash = (53 * hash) + getSigningLocation().hashCode();
      }
      if (hasSigningReason()) {
        hash = (37 * hash) + SIGNING_REASON_FIELD_NUMBER;
        hash = (53 * hash) + getSigningReason().hashCode();
      }
      if (hasSignaturePermission()) {
        hash = (37 * hash) + SIGNATURE_PERMISSION_FIELD_NUMBER;
        hash = (53 * hash) + getSignaturePermission().hashCode();
      }
      if (hasTimeStampUrl()) {
        hash = (37 * hash) + TIME_STAMP_URL_FIELD_NUMBER;
        hash = (53 * hash) + getTimeStampUrl().hashCode();
      }
      if (hasInternalName()) {
        hash = (37 * hash) + INTERNAL_NAME_FIELD_NUMBER;
        hash = (53 * hash) + getInternalName().hashCode();
      }
      if (hasPageIndex()) {
        hash = (37 * hash) + PAGE_INDEX_FIELD_NUMBER;
        hash = (53 * hash) + getPageIndex();
      }
      if (hasSignatureImageX()) {
        hash = (37 * hash) + SIGNATURE_IMAGE_X_FIELD_NUMBER;
        hash = (53 * hash) + getSignatureImageX();
      }
      if (hasSignatureImageY()) {
        hash = (37 * hash) + SIGNATURE_IMAGE_Y_FIELD_NUMBER;
        hash = (53 * hash) + getSignatureImageY();
      }
      if (hasSignatureImageW()) {
        hash = (37 * hash) + SIGNATURE_IMAGE_W_FIELD_NUMBER;
        hash = (53 * hash) + getSignatureImageW();
      }
      if (hasSignatureImageH()) {
        hash = (37 * hash) + SIGNATURE_IMAGE_H_FIELD_NUMBER;
        hash = (53 * hash) + getSignatureImageH();
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }

    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code ironpdfengineproto.PdfiumSignRequestStreamP.InfoP}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:ironpdfengineproto.PdfiumSignRequestStreamP.InfoP)
        com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoPOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_InfoP_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_InfoP_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.class, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.Builder.class);
      }

      // Construct using com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getDocumentFieldBuilder();
          getSignatureDateFieldBuilder();
          getSignaturePermissionFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        bitField0_ = 0;
        document_ = null;
        if (documentBuilder_ != null) {
          documentBuilder_.dispose();
          documentBuilder_ = null;
        }
        password_ = "";
        signatureDate_ = null;
        if (signatureDateBuilder_ != null) {
          signatureDateBuilder_.dispose();
          signatureDateBuilder_ = null;
        }
        signingContact_ = "";
        signingLocation_ = "";
        signingReason_ = "";
        signaturePermission_ = null;
        if (signaturePermissionBuilder_ != null) {
          signaturePermissionBuilder_.dispose();
          signaturePermissionBuilder_ = null;
        }
        timeStampUrl_ = "";
        internalName_ = "";
        pageIndex_ = 0;
        signatureImageX_ = 0;
        signatureImageY_ = 0;
        signatureImageW_ = 0;
        signatureImageH_ = 0;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_InfoP_descriptor;
      }

      @java.lang.Override
      public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP getDefaultInstanceForType() {
        return com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance();
      }

      @java.lang.Override
      public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP build() {
        com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP buildPartial() {
        com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP result = new com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP(this);
        if (bitField0_ != 0) { buildPartial0(result); }
        onBuilt();
        return result;
      }

      private void buildPartial0(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP result) {
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          result.document_ = documentBuilder_ == null
              ? document_
              : documentBuilder_.build();
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          result.password_ = password_;
        }
        if (((from_bitField0_ & 0x00000004) != 0)) {
          result.signatureDate_ = signatureDateBuilder_ == null
              ? signatureDate_
              : signatureDateBuilder_.build();
          to_bitField0_ |= 0x00000002;
        }
        if (((from_bitField0_ & 0x00000008) != 0)) {
          result.signingContact_ = signingContact_;
          to_bitField0_ |= 0x00000004;
        }
        if (((from_bitField0_ & 0x00000010) != 0)) {
          result.signingLocation_ = signingLocation_;
          to_bitField0_ |= 0x00000008;
        }
        if (((from_bitField0_ & 0x00000020) != 0)) {
          result.signingReason_ = signingReason_;
          to_bitField0_ |= 0x00000010;
        }
        if (((from_bitField0_ & 0x00000040) != 0)) {
          result.signaturePermission_ = signaturePermissionBuilder_ == null
              ? signaturePermission_
              : signaturePermissionBuilder_.build();
          to_bitField0_ |= 0x00000020;
        }
        if (((from_bitField0_ & 0x00000080) != 0)) {
          result.timeStampUrl_ = timeStampUrl_;
          to_bitField0_ |= 0x00000040;
        }
        if (((from_bitField0_ & 0x00000100) != 0)) {
          result.internalName_ = internalName_;
          to_bitField0_ |= 0x00000080;
        }
        if (((from_bitField0_ & 0x00000200) != 0)) {
          result.pageIndex_ = pageIndex_;
          to_bitField0_ |= 0x00000100;
        }
        if (((from_bitField0_ & 0x00000400) != 0)) {
          result.signatureImageX_ = signatureImageX_;
          to_bitField0_ |= 0x00000200;
        }
        if (((from_bitField0_ & 0x00000800) != 0)) {
          result.signatureImageY_ = signatureImageY_;
          to_bitField0_ |= 0x00000400;
        }
        if (((from_bitField0_ & 0x00001000) != 0)) {
          result.signatureImageW_ = signatureImageW_;
          to_bitField0_ |= 0x00000800;
        }
        if (((from_bitField0_ & 0x00002000) != 0)) {
          result.signatureImageH_ = signatureImageH_;
          to_bitField0_ |= 0x00001000;
        }
        result.bitField0_ |= to_bitField0_;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) {
          return mergeFrom((com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP other) {
        if (other == com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance()) return this;
        if (other.hasDocument()) {
          mergeDocument(other.getDocument());
        }
        if (!other.getPassword().isEmpty()) {
          password_ = other.password_;
          bitField0_ |= 0x00000002;
          onChanged();
        }
        if (other.hasSignatureDate()) {
          mergeSignatureDate(other.getSignatureDate());
        }
        if (other.hasSigningContact()) {
          signingContact_ = other.signingContact_;
          bitField0_ |= 0x00000008;
          onChanged();
        }
        if (other.hasSigningLocation()) {
          signingLocation_ = other.signingLocation_;
          bitField0_ |= 0x00000010;
          onChanged();
        }
        if (other.hasSigningReason()) {
          signingReason_ = other.signingReason_;
          bitField0_ |= 0x00000020;
          onChanged();
        }
        if (other.hasSignaturePermission()) {
          mergeSignaturePermission(other.getSignaturePermission());
        }
        if (other.hasTimeStampUrl()) {
          timeStampUrl_ = other.timeStampUrl_;
          bitField0_ |= 0x00000080;
          onChanged();
        }
        if (other.hasInternalName()) {
          internalName_ = other.internalName_;
          bitField0_ |= 0x00000100;
          onChanged();
        }
        if (other.hasPageIndex()) {
          setPageIndex(other.getPageIndex());
        }
        if (other.hasSignatureImageX()) {
          setSignatureImageX(other.getSignatureImageX());
        }
        if (other.hasSignatureImageY()) {
          setSignatureImageY(other.getSignatureImageY());
        }
        if (other.hasSignatureImageW()) {
          setSignatureImageW(other.getSignatureImageW());
        }
        if (other.hasSignatureImageH()) {
          setSignatureImageH(other.getSignatureImageH());
        }
        this.mergeUnknownFields(other.getUnknownFields());
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                input.readMessage(
                    getDocumentFieldBuilder().getBuilder(),
                    extensionRegistry);
                bitField0_ |= 0x00000001;
                break;
              } // case 10
              case 18: {
                password_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000002;
                break;
              } // case 18
              case 26: {
                input.readMessage(
                    getSignatureDateFieldBuilder().getBuilder(),
                    extensionRegistry);
                bitField0_ |= 0x00000004;
                break;
              } // case 26
              case 34: {
                signingContact_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000008;
                break;
              } // case 34
              case 42: {
                signingLocation_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000010;
                break;
              } // case 42
              case 50: {
                signingReason_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000020;
                break;
              } // case 50
              case 58: {
                input.readMessage(
                    getSignaturePermissionFieldBuilder().getBuilder(),
                    extensionRegistry);
                bitField0_ |= 0x00000040;
                break;
              } // case 58
              case 66: {
                timeStampUrl_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000080;
                break;
              } // case 66
              case 74: {
                internalName_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000100;
                break;
              } // case 74
              case 80: {
                pageIndex_ = input.readInt32();
                bitField0_ |= 0x00000200;
                break;
              } // case 80
              case 88: {
                signatureImageX_ = input.readInt32();
                bitField0_ |= 0x00000400;
                break;
              } // case 88
              case 96: {
                signatureImageY_ = input.readInt32();
                bitField0_ |= 0x00000800;
                break;
              } // case 96
              case 104: {
                signatureImageW_ = input.readInt32();
                bitField0_ |= 0x00001000;
                break;
              } // case 104
              case 112: {
                signatureImageH_ = input.readInt32();
                bitField0_ |= 0x00002000;
                break;
              } // case 112
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }
      private int bitField0_;

      private com.ironsoftware.ironpdf.internal.proto.PdfDocumentP document_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.ironsoftware.ironpdf.internal.proto.PdfDocumentP, com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfDocumentPOrBuilder> documentBuilder_;
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       * @return Whether the document field is set.
       */
      public boolean hasDocument() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       * @return The document.
       */
      public com.ironsoftware.ironpdf.internal.proto.PdfDocumentP getDocument() {
        if (documentBuilder_ == null) {
          return document_ == null ? com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.getDefaultInstance() : document_;
        } else {
          return documentBuilder_.getMessage();
        }
      }
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       */
      public Builder setDocument(com.ironsoftware.ironpdf.internal.proto.PdfDocumentP value) {
        if (documentBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          document_ = value;
        } else {
          documentBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000001;
        onChanged();
        return this;
      }
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       */
      public Builder setDocument(
          com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.Builder builderForValue) {
        if (documentBuilder_ == null) {
          document_ = builderForValue.build();
        } else {
          documentBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000001;
        onChanged();
        return this;
      }
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       */
      public Builder mergeDocument(com.ironsoftware.ironpdf.internal.proto.PdfDocumentP value) {
        if (documentBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0) &&
            document_ != null &&
            document_ != com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.getDefaultInstance()) {
            getDocumentBuilder().mergeFrom(value);
          } else {
            document_ = value;
          }
        } else {
          documentBuilder_.mergeFrom(value);
        }
        if (document_ != null) {
          bitField0_ |= 0x00000001;
          onChanged();
        }
        return this;
      }
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       */
      public Builder clearDocument() {
        bitField0_ = (bitField0_ & ~0x00000001);
        document_ = null;
        if (documentBuilder_ != null) {
          documentBuilder_.dispose();
          documentBuilder_ = null;
        }
        onChanged();
        return this;
      }
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       */
      public com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.Builder getDocumentBuilder() {
        bitField0_ |= 0x00000001;
        onChanged();
        return getDocumentFieldBuilder().getBuilder();
      }
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       */
      public com.ironsoftware.ironpdf.internal.proto.PdfDocumentPOrBuilder getDocumentOrBuilder() {
        if (documentBuilder_ != null) {
          return documentBuilder_.getMessageOrBuilder();
        } else {
          return document_ == null ?
              com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.getDefaultInstance() : document_;
        }
      }
      /**
       * .ironpdfengineproto.PdfDocumentP document = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.ironsoftware.ironpdf.internal.proto.PdfDocumentP, com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfDocumentPOrBuilder> 
          getDocumentFieldBuilder() {
        if (documentBuilder_ == null) {
          documentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.ironsoftware.ironpdf.internal.proto.PdfDocumentP, com.ironsoftware.ironpdf.internal.proto.PdfDocumentP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfDocumentPOrBuilder>(
                  getDocument(),
                  getParentForChildren(),
                  isClean());
          document_ = null;
        }
        return documentBuilder_;
      }

      private java.lang.Object password_ = "";
      /**
       * string password = 2;
       * @return The password.
       */
      public java.lang.String getPassword() {
        java.lang.Object ref = password_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          password_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * string password = 2;
       * @return The bytes for password.
       */
      public com.google.protobuf.ByteString
          getPasswordBytes() {
        java.lang.Object ref = password_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          password_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * string password = 2;
       * @param value The password to set.
       * @return This builder for chaining.
       */
      public Builder setPassword(
          java.lang.String value) {
        if (value == null) { throw new NullPointerException(); }
        password_ = value;
        bitField0_ |= 0x00000002;
        onChanged();
        return this;
      }
      /**
       * string password = 2;
       * @return This builder for chaining.
       */
      public Builder clearPassword() {
        password_ = getDefaultInstance().getPassword();
        bitField0_ = (bitField0_ & ~0x00000002);
        onChanged();
        return this;
      }
      /**
       * string password = 2;
       * @param value The bytes for password to set.
       * @return This builder for chaining.
       */
      public Builder setPasswordBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) { throw new NullPointerException(); }
        checkByteStringIsUtf8(value);
        password_ = value;
        bitField0_ |= 0x00000002;
        onChanged();
        return this;
      }

      private com.google.protobuf.Timestamp signatureDate_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> signatureDateBuilder_;
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       * @return Whether the signatureDate field is set.
       */
      public boolean hasSignatureDate() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       * @return The signatureDate.
       */
      public com.google.protobuf.Timestamp getSignatureDate() {
        if (signatureDateBuilder_ == null) {
          return signatureDate_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : signatureDate_;
        } else {
          return signatureDateBuilder_.getMessage();
        }
      }
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       */
      public Builder setSignatureDate(com.google.protobuf.Timestamp value) {
        if (signatureDateBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          signatureDate_ = value;
        } else {
          signatureDateBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000004;
        onChanged();
        return this;
      }
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       */
      public Builder setSignatureDate(
          com.google.protobuf.Timestamp.Builder builderForValue) {
        if (signatureDateBuilder_ == null) {
          signatureDate_ = builderForValue.build();
        } else {
          signatureDateBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000004;
        onChanged();
        return this;
      }
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       */
      public Builder mergeSignatureDate(com.google.protobuf.Timestamp value) {
        if (signatureDateBuilder_ == null) {
          if (((bitField0_ & 0x00000004) != 0) &&
            signatureDate_ != null &&
            signatureDate_ != com.google.protobuf.Timestamp.getDefaultInstance()) {
            getSignatureDateBuilder().mergeFrom(value);
          } else {
            signatureDate_ = value;
          }
        } else {
          signatureDateBuilder_.mergeFrom(value);
        }
        if (signatureDate_ != null) {
          bitField0_ |= 0x00000004;
          onChanged();
        }
        return this;
      }
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       */
      public Builder clearSignatureDate() {
        bitField0_ = (bitField0_ & ~0x00000004);
        signatureDate_ = null;
        if (signatureDateBuilder_ != null) {
          signatureDateBuilder_.dispose();
          signatureDateBuilder_ = null;
        }
        onChanged();
        return this;
      }
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       */
      public com.google.protobuf.Timestamp.Builder getSignatureDateBuilder() {
        bitField0_ |= 0x00000004;
        onChanged();
        return getSignatureDateFieldBuilder().getBuilder();
      }
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       */
      public com.google.protobuf.TimestampOrBuilder getSignatureDateOrBuilder() {
        if (signatureDateBuilder_ != null) {
          return signatureDateBuilder_.getMessageOrBuilder();
        } else {
          return signatureDate_ == null ?
              com.google.protobuf.Timestamp.getDefaultInstance() : signatureDate_;
        }
      }
      /**
       * optional .google.protobuf.Timestamp signature_date = 3;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> 
          getSignatureDateFieldBuilder() {
        if (signatureDateBuilder_ == null) {
          signatureDateBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>(
                  getSignatureDate(),
                  getParentForChildren(),
                  isClean());
          signatureDate_ = null;
        }
        return signatureDateBuilder_;
      }

      private java.lang.Object signingContact_ = "";
      /**
       * optional string signing_contact = 4;
       * @return Whether the signingContact field is set.
       */
      public boolean hasSigningContact() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * optional string signing_contact = 4;
       * @return The signingContact.
       */
      public java.lang.String getSigningContact() {
        java.lang.Object ref = signingContact_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          signingContact_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string signing_contact = 4;
       * @return The bytes for signingContact.
       */
      public com.google.protobuf.ByteString
          getSigningContactBytes() {
        java.lang.Object ref = signingContact_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          signingContact_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string signing_contact = 4;
       * @param value The signingContact to set.
       * @return This builder for chaining.
       */
      public Builder setSigningContact(
          java.lang.String value) {
        if (value == null) { throw new NullPointerException(); }
        signingContact_ = value;
        bitField0_ |= 0x00000008;
        onChanged();
        return this;
      }
      /**
       * optional string signing_contact = 4;
       * @return This builder for chaining.
       */
      public Builder clearSigningContact() {
        signingContact_ = getDefaultInstance().getSigningContact();
        bitField0_ = (bitField0_ & ~0x00000008);
        onChanged();
        return this;
      }
      /**
       * optional string signing_contact = 4;
       * @param value The bytes for signingContact to set.
       * @return This builder for chaining.
       */
      public Builder setSigningContactBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) { throw new NullPointerException(); }
        checkByteStringIsUtf8(value);
        signingContact_ = value;
        bitField0_ |= 0x00000008;
        onChanged();
        return this;
      }

      private java.lang.Object signingLocation_ = "";
      /**
       * optional string signing_location = 5;
       * @return Whether the signingLocation field is set.
       */
      public boolean hasSigningLocation() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * optional string signing_location = 5;
       * @return The signingLocation.
       */
      public java.lang.String getSigningLocation() {
        java.lang.Object ref = signingLocation_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          signingLocation_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string signing_location = 5;
       * @return The bytes for signingLocation.
       */
      public com.google.protobuf.ByteString
          getSigningLocationBytes() {
        java.lang.Object ref = signingLocation_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          signingLocation_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string signing_location = 5;
       * @param value The signingLocation to set.
       * @return This builder for chaining.
       */
      public Builder setSigningLocation(
          java.lang.String value) {
        if (value == null) { throw new NullPointerException(); }
        signingLocation_ = value;
        bitField0_ |= 0x00000010;
        onChanged();
        return this;
      }
      /**
       * optional string signing_location = 5;
       * @return This builder for chaining.
       */
      public Builder clearSigningLocation() {
        signingLocation_ = getDefaultInstance().getSigningLocation();
        bitField0_ = (bitField0_ & ~0x00000010);
        onChanged();
        return this;
      }
      /**
       * optional string signing_location = 5;
       * @param value The bytes for signingLocation to set.
       * @return This builder for chaining.
       */
      public Builder setSigningLocationBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) { throw new NullPointerException(); }
        checkByteStringIsUtf8(value);
        signingLocation_ = value;
        bitField0_ |= 0x00000010;
        onChanged();
        return this;
      }

      private java.lang.Object signingReason_ = "";
      /**
       * optional string signing_reason = 6;
       * @return Whether the signingReason field is set.
       */
      public boolean hasSigningReason() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * optional string signing_reason = 6;
       * @return The signingReason.
       */
      public java.lang.String getSigningReason() {
        java.lang.Object ref = signingReason_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          signingReason_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string signing_reason = 6;
       * @return The bytes for signingReason.
       */
      public com.google.protobuf.ByteString
          getSigningReasonBytes() {
        java.lang.Object ref = signingReason_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          signingReason_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string signing_reason = 6;
       * @param value The signingReason to set.
       * @return This builder for chaining.
       */
      public Builder setSigningReason(
          java.lang.String value) {
        if (value == null) { throw new NullPointerException(); }
        signingReason_ = value;
        bitField0_ |= 0x00000020;
        onChanged();
        return this;
      }
      /**
       * optional string signing_reason = 6;
       * @return This builder for chaining.
       */
      public Builder clearSigningReason() {
        signingReason_ = getDefaultInstance().getSigningReason();
        bitField0_ = (bitField0_ & ~0x00000020);
        onChanged();
        return this;
      }
      /**
       * optional string signing_reason = 6;
       * @param value The bytes for signingReason to set.
       * @return This builder for chaining.
       */
      public Builder setSigningReasonBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) { throw new NullPointerException(); }
        checkByteStringIsUtf8(value);
        signingReason_ = value;
        bitField0_ |= 0x00000020;
        onChanged();
        return this;
      }

      private com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP signaturePermission_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP, com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsPOrBuilder> signaturePermissionBuilder_;
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       * @return Whether the signaturePermission field is set.
       */
      public boolean hasSignaturePermission() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       * @return The signaturePermission.
       */
      public com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP getSignaturePermission() {
        if (signaturePermissionBuilder_ == null) {
          return signaturePermission_ == null ? com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.getDefaultInstance() : signaturePermission_;
        } else {
          return signaturePermissionBuilder_.getMessage();
        }
      }
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       */
      public Builder setSignaturePermission(com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP value) {
        if (signaturePermissionBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          signaturePermission_ = value;
        } else {
          signaturePermissionBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000040;
        onChanged();
        return this;
      }
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       */
      public Builder setSignaturePermission(
          com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.Builder builderForValue) {
        if (signaturePermissionBuilder_ == null) {
          signaturePermission_ = builderForValue.build();
        } else {
          signaturePermissionBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000040;
        onChanged();
        return this;
      }
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       */
      public Builder mergeSignaturePermission(com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP value) {
        if (signaturePermissionBuilder_ == null) {
          if (((bitField0_ & 0x00000040) != 0) &&
            signaturePermission_ != null &&
            signaturePermission_ != com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.getDefaultInstance()) {
            getSignaturePermissionBuilder().mergeFrom(value);
          } else {
            signaturePermission_ = value;
          }
        } else {
          signaturePermissionBuilder_.mergeFrom(value);
        }
        if (signaturePermission_ != null) {
          bitField0_ |= 0x00000040;
          onChanged();
        }
        return this;
      }
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       */
      public Builder clearSignaturePermission() {
        bitField0_ = (bitField0_ & ~0x00000040);
        signaturePermission_ = null;
        if (signaturePermissionBuilder_ != null) {
          signaturePermissionBuilder_.dispose();
          signaturePermissionBuilder_ = null;
        }
        onChanged();
        return this;
      }
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       */
      public com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.Builder getSignaturePermissionBuilder() {
        bitField0_ |= 0x00000040;
        onChanged();
        return getSignaturePermissionFieldBuilder().getBuilder();
      }
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       */
      public com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsPOrBuilder getSignaturePermissionOrBuilder() {
        if (signaturePermissionBuilder_ != null) {
          return signaturePermissionBuilder_.getMessageOrBuilder();
        } else {
          return signaturePermission_ == null ?
              com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.getDefaultInstance() : signaturePermission_;
        }
      }
      /**
       * .ironpdfengineproto.PdfiumSignaturePermissionsP signature_permission = 7;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP, com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsPOrBuilder> 
          getSignaturePermissionFieldBuilder() {
        if (signaturePermissionBuilder_ == null) {
          signaturePermissionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP, com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfiumSignaturePermissionsPOrBuilder>(
                  getSignaturePermission(),
                  getParentForChildren(),
                  isClean());
          signaturePermission_ = null;
        }
        return signaturePermissionBuilder_;
      }

      private java.lang.Object timeStampUrl_ = "";
      /**
       * optional string time_stamp_url = 8;
       * @return Whether the timeStampUrl field is set.
       */
      public boolean hasTimeStampUrl() {
        return ((bitField0_ & 0x00000080) != 0);
      }
      /**
       * optional string time_stamp_url = 8;
       * @return The timeStampUrl.
       */
      public java.lang.String getTimeStampUrl() {
        java.lang.Object ref = timeStampUrl_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          timeStampUrl_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string time_stamp_url = 8;
       * @return The bytes for timeStampUrl.
       */
      public com.google.protobuf.ByteString
          getTimeStampUrlBytes() {
        java.lang.Object ref = timeStampUrl_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          timeStampUrl_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string time_stamp_url = 8;
       * @param value The timeStampUrl to set.
       * @return This builder for chaining.
       */
      public Builder setTimeStampUrl(
          java.lang.String value) {
        if (value == null) { throw new NullPointerException(); }
        timeStampUrl_ = value;
        bitField0_ |= 0x00000080;
        onChanged();
        return this;
      }
      /**
       * optional string time_stamp_url = 8;
       * @return This builder for chaining.
       */
      public Builder clearTimeStampUrl() {
        timeStampUrl_ = getDefaultInstance().getTimeStampUrl();
        bitField0_ = (bitField0_ & ~0x00000080);
        onChanged();
        return this;
      }
      /**
       * optional string time_stamp_url = 8;
       * @param value The bytes for timeStampUrl to set.
       * @return This builder for chaining.
       */
      public Builder setTimeStampUrlBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) { throw new NullPointerException(); }
        checkByteStringIsUtf8(value);
        timeStampUrl_ = value;
        bitField0_ |= 0x00000080;
        onChanged();
        return this;
      }

      private java.lang.Object internalName_ = "";
      /**
       * optional string internal_name = 9;
       * @return Whether the internalName field is set.
       */
      public boolean hasInternalName() {
        return ((bitField0_ & 0x00000100) != 0);
      }
      /**
       * optional string internal_name = 9;
       * @return The internalName.
       */
      public java.lang.String getInternalName() {
        java.lang.Object ref = internalName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          internalName_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * optional string internal_name = 9;
       * @return The bytes for internalName.
       */
      public com.google.protobuf.ByteString
          getInternalNameBytes() {
        java.lang.Object ref = internalName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          internalName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * optional string internal_name = 9;
       * @param value The internalName to set.
       * @return This builder for chaining.
       */
      public Builder setInternalName(
          java.lang.String value) {
        if (value == null) { throw new NullPointerException(); }
        internalName_ = value;
        bitField0_ |= 0x00000100;
        onChanged();
        return this;
      }
      /**
       * optional string internal_name = 9;
       * @return This builder for chaining.
       */
      public Builder clearInternalName() {
        internalName_ = getDefaultInstance().getInternalName();
        bitField0_ = (bitField0_ & ~0x00000100);
        onChanged();
        return this;
      }
      /**
       * optional string internal_name = 9;
       * @param value The bytes for internalName to set.
       * @return This builder for chaining.
       */
      public Builder setInternalNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) { throw new NullPointerException(); }
        checkByteStringIsUtf8(value);
        internalName_ = value;
        bitField0_ |= 0x00000100;
        onChanged();
        return this;
      }

      private int pageIndex_ ;
      /**
       * optional int32 page_index = 10;
       * @return Whether the pageIndex field is set.
       */
      @java.lang.Override
      public boolean hasPageIndex() {
        return ((bitField0_ & 0x00000200) != 0);
      }
      /**
       * optional int32 page_index = 10;
       * @return The pageIndex.
       */
      @java.lang.Override
      public int getPageIndex() {
        return pageIndex_;
      }
      /**
       * optional int32 page_index = 10;
       * @param value The pageIndex to set.
       * @return This builder for chaining.
       */
      public Builder setPageIndex(int value) {

        pageIndex_ = value;
        bitField0_ |= 0x00000200;
        onChanged();
        return this;
      }
      /**
       * optional int32 page_index = 10;
       * @return This builder for chaining.
       */
      public Builder clearPageIndex() {
        bitField0_ = (bitField0_ & ~0x00000200);
        pageIndex_ = 0;
        onChanged();
        return this;
      }

      private int signatureImageX_ ;
      /**
       * optional int32 signature_image_x = 11;
       * @return Whether the signatureImageX field is set.
       */
      @java.lang.Override
      public boolean hasSignatureImageX() {
        return ((bitField0_ & 0x00000400) != 0);
      }
      /**
       * optional int32 signature_image_x = 11;
       * @return The signatureImageX.
       */
      @java.lang.Override
      public int getSignatureImageX() {
        return signatureImageX_;
      }
      /**
       * optional int32 signature_image_x = 11;
       * @param value The signatureImageX to set.
       * @return This builder for chaining.
       */
      public Builder setSignatureImageX(int value) {

        signatureImageX_ = value;
        bitField0_ |= 0x00000400;
        onChanged();
        return this;
      }
      /**
       * optional int32 signature_image_x = 11;
       * @return This builder for chaining.
       */
      public Builder clearSignatureImageX() {
        bitField0_ = (bitField0_ & ~0x00000400);
        signatureImageX_ = 0;
        onChanged();
        return this;
      }

      private int signatureImageY_ ;
      /**
       * optional int32 signature_image_y = 12;
       * @return Whether the signatureImageY field is set.
       */
      @java.lang.Override
      public boolean hasSignatureImageY() {
        return ((bitField0_ & 0x00000800) != 0);
      }
      /**
       * optional int32 signature_image_y = 12;
       * @return The signatureImageY.
       */
      @java.lang.Override
      public int getSignatureImageY() {
        return signatureImageY_;
      }
      /**
       * optional int32 signature_image_y = 12;
       * @param value The signatureImageY to set.
       * @return This builder for chaining.
       */
      public Builder setSignatureImageY(int value) {

        signatureImageY_ = value;
        bitField0_ |= 0x00000800;
        onChanged();
        return this;
      }
      /**
       * optional int32 signature_image_y = 12;
       * @return This builder for chaining.
       */
      public Builder clearSignatureImageY() {
        bitField0_ = (bitField0_ & ~0x00000800);
        signatureImageY_ = 0;
        onChanged();
        return this;
      }

      private int signatureImageW_ ;
      /**
       * optional int32 signature_image_w = 13;
       * @return Whether the signatureImageW field is set.
       */
      @java.lang.Override
      public boolean hasSignatureImageW() {
        return ((bitField0_ & 0x00001000) != 0);
      }
      /**
       * optional int32 signature_image_w = 13;
       * @return The signatureImageW.
       */
      @java.lang.Override
      public int getSignatureImageW() {
        return signatureImageW_;
      }
      /**
       * optional int32 signature_image_w = 13;
       * @param value The signatureImageW to set.
       * @return This builder for chaining.
       */
      public Builder setSignatureImageW(int value) {

        signatureImageW_ = value;
        bitField0_ |= 0x00001000;
        onChanged();
        return this;
      }
      /**
       * optional int32 signature_image_w = 13;
       * @return This builder for chaining.
       */
      public Builder clearSignatureImageW() {
        bitField0_ = (bitField0_ & ~0x00001000);
        signatureImageW_ = 0;
        onChanged();
        return this;
      }

      private int signatureImageH_ ;
      /**
       * optional int32 signature_image_h = 14;
       * @return Whether the signatureImageH field is set.
       */
      @java.lang.Override
      public boolean hasSignatureImageH() {
        return ((bitField0_ & 0x00002000) != 0);
      }
      /**
       * optional int32 signature_image_h = 14;
       * @return The signatureImageH.
       */
      @java.lang.Override
      public int getSignatureImageH() {
        return signatureImageH_;
      }
      /**
       * optional int32 signature_image_h = 14;
       * @param value The signatureImageH to set.
       * @return This builder for chaining.
       */
      public Builder setSignatureImageH(int value) {

        signatureImageH_ = value;
        bitField0_ |= 0x00002000;
        onChanged();
        return this;
      }
      /**
       * optional int32 signature_image_h = 14;
       * @return This builder for chaining.
       */
      public Builder clearSignatureImageH() {
        bitField0_ = (bitField0_ & ~0x00002000);
        signatureImageH_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:ironpdfengineproto.PdfiumSignRequestStreamP.InfoP)
    }

    // @@protoc_insertion_point(class_scope:ironpdfengineproto.PdfiumSignRequestStreamP.InfoP)
    private static final com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP();
    }

    public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public InfoP parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private int requestCase_ = 0;
  @SuppressWarnings("serial")
  private java.lang.Object request_;
  public enum RequestCase
      implements com.google.protobuf.Internal.EnumLite,
          com.google.protobuf.AbstractMessage.InternalOneOfEnum {
    INFO(1),
    CERTIFICATE_FILE_BYTES_CHUNK(2),
    SIGNATURE_IMAGE_CHUNK(3),
    REQUEST_NOT_SET(0);
    private final int value;
    private RequestCase(int value) {
      this.value = value;
    }
    /**
     * @param value The number of the enum to look for.
     * @return The enum associated with the given number.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static RequestCase valueOf(int value) {
      return forNumber(value);
    }

    public static RequestCase forNumber(int value) {
      switch (value) {
        case 1: return INFO;
        case 2: return CERTIFICATE_FILE_BYTES_CHUNK;
        case 3: return SIGNATURE_IMAGE_CHUNK;
        case 0: return REQUEST_NOT_SET;
        default: return null;
      }
    }
    public int getNumber() {
      return this.value;
    }
  };

  public RequestCase
  getRequestCase() {
    return RequestCase.forNumber(
        requestCase_);
  }

  public static final int INFO_FIELD_NUMBER = 1;
  /**
   * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
   * @return Whether the info field is set.
   */
  @java.lang.Override
  public boolean hasInfo() {
    return requestCase_ == 1;
  }
  /**
   * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
   * @return The info.
   */
  @java.lang.Override
  public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP getInfo() {
    if (requestCase_ == 1) {
       return (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) request_;
    }
    return com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance();
  }
  /**
   * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
   */
  @java.lang.Override
  public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoPOrBuilder getInfoOrBuilder() {
    if (requestCase_ == 1) {
       return (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) request_;
    }
    return com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance();
  }

  public static final int CERTIFICATE_FILE_BYTES_CHUNK_FIELD_NUMBER = 2;
  /**
   * bytes certificate_file_bytes_chunk = 2;
   * @return Whether the certificateFileBytesChunk field is set.
   */
  @java.lang.Override
  public boolean hasCertificateFileBytesChunk() {
    return requestCase_ == 2;
  }
  /**
   * bytes certificate_file_bytes_chunk = 2;
   * @return The certificateFileBytesChunk.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString getCertificateFileBytesChunk() {
    if (requestCase_ == 2) {
      return (com.google.protobuf.ByteString) request_;
    }
    return com.google.protobuf.ByteString.EMPTY;
  }

  public static final int SIGNATURE_IMAGE_CHUNK_FIELD_NUMBER = 3;
  /**
   * bytes signature_image_chunk = 3;
   * @return Whether the signatureImageChunk field is set.
   */
  @java.lang.Override
  public boolean hasSignatureImageChunk() {
    return requestCase_ == 3;
  }
  /**
   * bytes signature_image_chunk = 3;
   * @return The signatureImageChunk.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString getSignatureImageChunk() {
    if (requestCase_ == 3) {
      return (com.google.protobuf.ByteString) request_;
    }
    return com.google.protobuf.ByteString.EMPTY;
  }

  private byte memoizedIsInitialized = -1;
  @java.lang.Override
  public final boolean isInitialized() {
    byte isInitialized = memoizedIsInitialized;
    if (isInitialized == 1) return true;
    if (isInitialized == 0) return false;

    memoizedIsInitialized = 1;
    return true;
  }

  @java.lang.Override
  public void writeTo(com.google.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    if (requestCase_ == 1) {
      output.writeMessage(1, (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) request_);
    }
    if (requestCase_ == 2) {
      output.writeBytes(
          2, (com.google.protobuf.ByteString) request_);
    }
    if (requestCase_ == 3) {
      output.writeBytes(
          3, (com.google.protobuf.ByteString) request_);
    }
    getUnknownFields().writeTo(output);
  }

  @java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (requestCase_ == 1) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(1, (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) request_);
    }
    if (requestCase_ == 2) {
      size += com.google.protobuf.CodedOutputStream
        .computeBytesSize(
            2, (com.google.protobuf.ByteString) request_);
    }
    if (requestCase_ == 3) {
      size += com.google.protobuf.CodedOutputStream
        .computeBytesSize(
            3, (com.google.protobuf.ByteString) request_);
    }
    size += getUnknownFields().getSerializedSize();
    memoizedSize = size;
    return size;
  }

  @java.lang.Override
  public boolean equals(final java.lang.Object obj) {
    if (obj == this) {
     return true;
    }
    if (!(obj instanceof com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP)) {
      return super.equals(obj);
    }
    com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP other = (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP) obj;

    if (!getRequestCase().equals(other.getRequestCase())) return false;
    switch (requestCase_) {
      case 1:
        if (!getInfo()
            .equals(other.getInfo())) return false;
        break;
      case 2:
        if (!getCertificateFileBytesChunk()
            .equals(other.getCertificateFileBytesChunk())) return false;
        break;
      case 3:
        if (!getSignatureImageChunk()
            .equals(other.getSignatureImageChunk())) return false;
        break;
      case 0:
      default:
    }
    if (!getUnknownFields().equals(other.getUnknownFields())) return false;
    return true;
  }

  @java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    switch (requestCase_) {
      case 1:
        hash = (37 * hash) + INFO_FIELD_NUMBER;
        hash = (53 * hash) + getInfo().hashCode();
        break;
      case 2:
        hash = (37 * hash) + CERTIFICATE_FILE_BYTES_CHUNK_FIELD_NUMBER;
        hash = (53 * hash) + getCertificateFileBytesChunk().hashCode();
        break;
      case 3:
        hash = (37 * hash) + SIGNATURE_IMAGE_CHUNK_FIELD_NUMBER;
        hash = (53 * hash) + getSignatureImageChunk().hashCode();
        break;
      case 0:
      default:
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input);
  }

  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseDelimitedFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP parseFrom(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  @java.lang.Override
  public Builder newBuilderForType() { return newBuilder(); }
  public static Builder newBuilder() {
    return DEFAULT_INSTANCE.toBuilder();
  }
  public static Builder newBuilder(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP prototype) {
    return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
  }
  @java.lang.Override
  public Builder toBuilder() {
    return this == DEFAULT_INSTANCE
        ? new Builder() : new Builder().mergeFrom(this);
  }

  @java.lang.Override
  protected Builder newBuilderForType(
      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    Builder builder = new Builder(parent);
    return builder;
  }
  /**
   * Protobuf type {@code ironpdfengineproto.PdfiumSignRequestStreamP}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessageV3.Builder implements
      // @@protoc_insertion_point(builder_implements:ironpdfengineproto.PdfiumSignRequestStreamP)
      com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamPOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.class, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.Builder.class);
    }

    // Construct using com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.newBuilder()
    private Builder() {

    }

    private Builder(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      super(parent);

    }
    @java.lang.Override
    public Builder clear() {
      super.clear();
      bitField0_ = 0;
      if (infoBuilder_ != null) {
        infoBuilder_.clear();
      }
      requestCase_ = 0;
      request_ = null;
      return this;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return com.ironsoftware.ironpdf.internal.proto.PdfiumSignature.internal_static_ironpdfengineproto_PdfiumSignRequestStreamP_descriptor;
    }

    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP getDefaultInstanceForType() {
      return com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.getDefaultInstance();
    }

    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP build() {
      com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP buildPartial() {
      com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP result = new com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP(this);
      if (bitField0_ != 0) { buildPartial0(result); }
      buildPartialOneofs(result);
      onBuilt();
      return result;
    }

    private void buildPartial0(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP result) {
      int from_bitField0_ = bitField0_;
    }

    private void buildPartialOneofs(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP result) {
      result.requestCase_ = requestCase_;
      result.request_ = this.request_;
      if (requestCase_ == 1 &&
          infoBuilder_ != null) {
        result.request_ = infoBuilder_.build();
      }
    }

    @java.lang.Override
    public Builder clone() {
      return super.clone();
    }
    @java.lang.Override
    public Builder setField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        java.lang.Object value) {
      return super.setField(field, value);
    }
    @java.lang.Override
    public Builder clearField(
        com.google.protobuf.Descriptors.FieldDescriptor field) {
      return super.clearField(field);
    }
    @java.lang.Override
    public Builder clearOneof(
        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
      return super.clearOneof(oneof);
    }
    @java.lang.Override
    public Builder setRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        int index, java.lang.Object value) {
      return super.setRepeatedField(field, index, value);
    }
    @java.lang.Override
    public Builder addRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        java.lang.Object value) {
      return super.addRepeatedField(field, value);
    }
    @java.lang.Override
    public Builder mergeFrom(com.google.protobuf.Message other) {
      if (other instanceof com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP) {
        return mergeFrom((com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP other) {
      if (other == com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.getDefaultInstance()) return this;
      switch (other.getRequestCase()) {
        case INFO: {
          mergeInfo(other.getInfo());
          break;
        }
        case CERTIFICATE_FILE_BYTES_CHUNK: {
          setCertificateFileBytesChunk(other.getCertificateFileBytesChunk());
          break;
        }
        case SIGNATURE_IMAGE_CHUNK: {
          setSignatureImageChunk(other.getSignatureImageChunk());
          break;
        }
        case REQUEST_NOT_SET: {
          break;
        }
      }
      this.mergeUnknownFields(other.getUnknownFields());
      onChanged();
      return this;
    }

    @java.lang.Override
    public final boolean isInitialized() {
      return true;
    }

    @java.lang.Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              input.readMessage(
                  getInfoFieldBuilder().getBuilder(),
                  extensionRegistry);
              requestCase_ = 1;
              break;
            } // case 10
            case 18: {
              request_ = input.readBytes();
              requestCase_ = 2;
              break;
            } // case 18
            case 26: {
              request_ = input.readBytes();
              requestCase_ = 3;
              break;
            } // case 26
            default: {
              if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                done = true; // was an endgroup tag
              }
              break;
            } // default:
          } // switch (tag)
        } // while (!done)
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.unwrapIOException();
      } finally {
        onChanged();
      } // finally
      return this;
    }
    private int requestCase_ = 0;
    private java.lang.Object request_;
    public RequestCase
        getRequestCase() {
      return RequestCase.forNumber(
          requestCase_);
    }

    public Builder clearRequest() {
      requestCase_ = 0;
      request_ = null;
      onChanged();
      return this;
    }

    private int bitField0_;

    private com.google.protobuf.SingleFieldBuilderV3<
        com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoPOrBuilder> infoBuilder_;
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     * @return Whether the info field is set.
     */
    @java.lang.Override
    public boolean hasInfo() {
      return requestCase_ == 1;
    }
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     * @return The info.
     */
    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP getInfo() {
      if (infoBuilder_ == null) {
        if (requestCase_ == 1) {
          return (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) request_;
        }
        return com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance();
      } else {
        if (requestCase_ == 1) {
          return infoBuilder_.getMessage();
        }
        return com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance();
      }
    }
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     */
    public Builder setInfo(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP value) {
      if (infoBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        request_ = value;
        onChanged();
      } else {
        infoBuilder_.setMessage(value);
      }
      requestCase_ = 1;
      return this;
    }
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     */
    public Builder setInfo(
        com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.Builder builderForValue) {
      if (infoBuilder_ == null) {
        request_ = builderForValue.build();
        onChanged();
      } else {
        infoBuilder_.setMessage(builderForValue.build());
      }
      requestCase_ = 1;
      return this;
    }
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     */
    public Builder mergeInfo(com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP value) {
      if (infoBuilder_ == null) {
        if (requestCase_ == 1 &&
            request_ != com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance()) {
          request_ = com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.newBuilder((com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) request_)
              .mergeFrom(value).buildPartial();
        } else {
          request_ = value;
        }
        onChanged();
      } else {
        if (requestCase_ == 1) {
          infoBuilder_.mergeFrom(value);
        } else {
          infoBuilder_.setMessage(value);
        }
      }
      requestCase_ = 1;
      return this;
    }
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     */
    public Builder clearInfo() {
      if (infoBuilder_ == null) {
        if (requestCase_ == 1) {
          requestCase_ = 0;
          request_ = null;
          onChanged();
        }
      } else {
        if (requestCase_ == 1) {
          requestCase_ = 0;
          request_ = null;
        }
        infoBuilder_.clear();
      }
      return this;
    }
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     */
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.Builder getInfoBuilder() {
      return getInfoFieldBuilder().getBuilder();
    }
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     */
    @java.lang.Override
    public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoPOrBuilder getInfoOrBuilder() {
      if ((requestCase_ == 1) && (infoBuilder_ != null)) {
        return infoBuilder_.getMessageOrBuilder();
      } else {
        if (requestCase_ == 1) {
          return (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) request_;
        }
        return com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance();
      }
    }
    /**
     * .ironpdfengineproto.PdfiumSignRequestStreamP.InfoP info = 1;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoPOrBuilder> 
        getInfoFieldBuilder() {
      if (infoBuilder_ == null) {
        if (!(requestCase_ == 1)) {
          request_ = com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.getDefaultInstance();
        }
        infoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP.Builder, com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoPOrBuilder>(
                (com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP.InfoP) request_,
                getParentForChildren(),
                isClean());
        request_ = null;
      }
      requestCase_ = 1;
      onChanged();
      return infoBuilder_;
    }

    /**
     * bytes certificate_file_bytes_chunk = 2;
     * @return Whether the certificateFileBytesChunk field is set.
     */
    public boolean hasCertificateFileBytesChunk() {
      return requestCase_ == 2;
    }
    /**
     * bytes certificate_file_bytes_chunk = 2;
     * @return The certificateFileBytesChunk.
     */
    public com.google.protobuf.ByteString getCertificateFileBytesChunk() {
      if (requestCase_ == 2) {
        return (com.google.protobuf.ByteString) request_;
      }
      return com.google.protobuf.ByteString.EMPTY;
    }
    /**
     * bytes certificate_file_bytes_chunk = 2;
     * @param value The certificateFileBytesChunk to set.
     * @return This builder for chaining.
     */
    public Builder setCertificateFileBytesChunk(com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      requestCase_ = 2;
      request_ = value;
      onChanged();
      return this;
    }
    /**
     * bytes certificate_file_bytes_chunk = 2;
     * @return This builder for chaining.
     */
    public Builder clearCertificateFileBytesChunk() {
      if (requestCase_ == 2) {
        requestCase_ = 0;
        request_ = null;
        onChanged();
      }
      return this;
    }

    /**
     * bytes signature_image_chunk = 3;
     * @return Whether the signatureImageChunk field is set.
     */
    public boolean hasSignatureImageChunk() {
      return requestCase_ == 3;
    }
    /**
     * bytes signature_image_chunk = 3;
     * @return The signatureImageChunk.
     */
    public com.google.protobuf.ByteString getSignatureImageChunk() {
      if (requestCase_ == 3) {
        return (com.google.protobuf.ByteString) request_;
      }
      return com.google.protobuf.ByteString.EMPTY;
    }
    /**
     * bytes signature_image_chunk = 3;
     * @param value The signatureImageChunk to set.
     * @return This builder for chaining.
     */
    public Builder setSignatureImageChunk(com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      requestCase_ = 3;
      request_ = value;
      onChanged();
      return this;
    }
    /**
     * bytes signature_image_chunk = 3;
     * @return This builder for chaining.
     */
    public Builder clearSignatureImageChunk() {
      if (requestCase_ == 3) {
        requestCase_ = 0;
        request_ = null;
        onChanged();
      }
      return this;
    }
    @java.lang.Override
    public final Builder setUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.setUnknownFields(unknownFields);
    }

    @java.lang.Override
    public final Builder mergeUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.mergeUnknownFields(unknownFields);
    }


    // @@protoc_insertion_point(builder_scope:ironpdfengineproto.PdfiumSignRequestStreamP)
  }

  // @@protoc_insertion_point(class_scope:ironpdfengineproto.PdfiumSignRequestStreamP)
  private static final com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP();
  }

  public static com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

  private static final com.google.protobuf.Parser
      PARSER = new com.google.protobuf.AbstractParser() {
    @java.lang.Override
    public PdfiumSignRequestStreamP parsePartialFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      Builder builder = newBuilder();
      try {
        builder.mergeFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(builder.buildPartial());
      } catch (com.google.protobuf.UninitializedMessageException e) {
        throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(e)
            .setUnfinishedMessage(builder.buildPartial());
      }
      return builder.buildPartial();
    }
  };

  public static com.google.protobuf.Parser parser() {
    return PARSER;
  }

  @java.lang.Override
  public com.google.protobuf.Parser getParserForType() {
    return PARSER;
  }

  @java.lang.Override
  public com.ironsoftware.ironpdf.internal.proto.PdfiumSignRequestStreamP getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy