SdkApi.Core Takes in a certificate file (P12, DER, PEM, etc) and processes it into a ZebraCertificateInfo object which contains the selected certificate, Certificate Authority certificate chain, and private key (if applicable). Takes in a certificate file (P12, DER, PEM, etc) and processes it into a ZebraCertificateInfo object which contains the selected certificate, Certificate Authority certificate chain, and private key (if applicable). Data stream for the certificate file to be processed. The certificate to use within a multi-certificate (like PKCS12) file. Used to unlock a protected certificate file. Instance containing all certificate and key information for the processed file. If there is an issue reading the certificate file. If there is an issue processing the certificate file. Signals that an error occurred while converting a certificate. Constructs a ZebraCertificateConversionException with message as the detailed error message. The error message. Constructs a ZebraCertificateConversionException with message as the detailed error message and cause as the underlying exception. User defined message for the exception. What created the exception. Handler class for managing certificate and private key information. The file name on a printer to which a private key must be saved for wireless security. The file name on a printer to which a wireless ca must be saved for wireless security. The file name on a printer to which a client cert must be saved for wireless security. Initializes a new instance of the ZebraCertificateInfo class. Returns the CA Certificate chain. CA Certificate chain in PEM format. Contains the client certificate, if set. Contains the Certificate Authority certificate chain, if set. Contains the private key, if set. A utility class used to extract info from certificate files and convert the contents into Zebra friendly formats. Creates a wrapper that opens up the provided certificate keystore stream. The stream containing certificate keystore file contents. The password used to access the certificate file. Thrown if the certificate stream contents cannot be accessed or if the certificate password was incorrect. Get a list of aliases present in the certificate keystore. A list of the aliases present in the certificate keystore. If the keystore has not been initialized (loaded). Get the content of the first entry in the certificate's certificate chain. The returned content is converted to PEM format. The resulting content can be stored to a printer for use with wireless security. Since no alias is provided, the first entry in the certificate file will be used. The Zebra-friendly certificate content If the provided alias does not exist or the certificate content is corrupt Get the content of the first entry in the certificate's certificate chain. The returned content is converted to PEM format. The resulting content can be stored to a printer for use with wireless security. The alias name of the specific entry to extract from the certificate file. The Zebra-friendly certificate content. If the provided alias does not exist or the certificate content is corrupt Get the content of the ca, which is determined to be all entries in the certificate chain after the first entry. The returned ca is converted to PEM format. The resulting content can be stored to a printer for use with wireless security. Since no alias is provided, the first entry in the certificate file will be used. The Zebra-friendly ca content. If the provided alias does not exist or the ca content is corrupt. Get the content of the ca, which is determined to be all entries in the certificate chain after the first entry. The returned ca is converted to PEM format. The resulting content can be stored to a printer for use with wireless security. The alias name of the specific entry to extract from the certificate file. The Zebra-friendly ca content. If the provided alias does not exist or the ca content is corrupt. Get the encrypted private key content. The returned key is encrypted and converted to PEM format. The resulting content can be stored to a printer for use with wireless security.Since no alias is provided, the first entry in the certificate file will be used. Note: Any printer using the generated private key must also be configured to use the password provided here to encrypt the private key.Send the following command to the printer to configure it to use a private key encryption password: ! U1 setvar "wlan.private_key_password" "value". The password used to encrypt the resulting private key. The encrypted private key in PEM format. If the provided alias does not exist, certificate password is incorrect, or private key content is corrupt. Get the encrypted private key content. The resulting content can be stored to a printer for use with wireless security. Note: Any printer using the generated private key must also be configured to use the provided password to encrypt the private key. Send the following command to the printer to configure it to use a private key encryption password: ! U1 setvar "wlan.private_key_password" "value". The alias name of the specific entry to extract from the certificate file. The password used to encrypt the resulting private key. The encrypted private key in PEM format. If the provided alias does not exist, certificate password is incorrect, or private key content is corrupt. Get the common name of the client certificate associated with the certificate file. Since no alias is provided, the first entry in the certificate file will be used. The certificate common name. If the provided alias does not exist or the underlying certificate could not be parsed. Get the common name of the client certificate associated with the certificate file. The alias name of the specific entry to extract from the certificate file. The certificate common name. If the provided alias does not exist or the underlying certificate could not be parsed. Get the common name of the CA associated with the certificate file. Since no alias is provided, the first entry in the certificate file will be used. The CA common name. If the provided alias does not exist or the underlying certificate could not be parsed. Get the common name of the CA associated with the certificate file. The alias name of the specific entry to extract from the certificate file The CA common name. If the provided alias does not exist or the underlying certificate could not be parsed. Get the expiration data of the client certificate associated with the certificate file. Since no alias is provided, the first entry in the certificate file will be used. The client certificate expiration date. If the certificate keystore is invalid or the provided alias does not exist in the certificate keystore. Get the expiration data of the client certificate associated with the certificate file. The alias name of the specific entry to extract from the certificate file. The client certificate expiration date. If the certificate keystore is invalid or the provided alias does not exist in the certificate keystore. Get the expiration data of the CA associated with the certificate file. Since no alias is provided, the first entry in the certificate file will be used. The CA expiration date. If the certificate keystore is invalid or the provided alias does not exist in the certificate keystore. Get the expiration data of the CA associated with the certificate file. The alias name of the specific entry to extract from the certificate file. The CA expiration date. If the certificate keystore is invalid or the provided alias does not exist in the certificate keystore. Get the algorithm used by the private key. Since no alias is provided, the first entry in the certificate file will be used. The private key algorithm. If the provided certificate file is invalid, alias does not exist, or contained private key is corrupt or unsupported. Get the algorithm used by the private key. The alias name of the specific entry to extract from the certificate file. The private key algorithm. If the provided certificate file is invalid, alias does not exist, or contained private key is corrupt or unsupported. Get the issuer of the client certificate. Since no alias is provided, the first entry in the certificate file will be used. The client certificate issuer. If the provided certificate file is invalid, alias does not exist, or contained private key is corrupt or unsupported. Get the issuer of the client certificate. The alias name of the specific entry to extract from the certificate file. The client certificate issuer. If the provided certificate file is invalid, alias does not exist, or contained private key is corrupt or unsupported. Gets the keystore of the processed client certificate. The Pkcs12Store containing information about the processed certificate file. A connection to a device. Opens the connection to a device. If the open method is called when this connection has already been opened, this call is ignored. When a handle to the connection is no longer needed, you must call to free up system resources. If the connection cannot be established. Closes this connection and releases any system resources associated with the connection. If the connection is already closed then invoking this method has no effect. If an I/O error occurs. Writes data.Length bytes from the specified byte array to this output stream. The connection must be open before this method is called. If write is called when a connection is closed, a ConnectionException is thrown. Data to write If an I/O error occurs. Writes length bytes from data starting at offset. The connection must be open before this method is called. If Write is called when a connection is closed, a ConnectionException is thrown. The data. The start offset in the data. The number of bytes to write. if an I/O error occurs. Writes all available bytes from the data source to this output stream. The connection must be open before this method is called. If write is called when a connection is closed, a ConnectionException is thrown. The data. If an I/O error occurs. Reads all the available data from the connection. This call is non-blocking. Data read from the connection. If an I/O error occurs. Reads the next byte of data from the connection. The value byte is returned as an int in the range of 0 to 255. If no byte is available on the connection the value -1 is returned. The next byte from the connection. If an I/O error occurs. Reads all the available data from the connection. This call is non-blocking. For read data. If an I/O error occurs. Returns true if the connection is open. Returns an estimate of the number of bytes that can be read from this connection without blocking. The estimated number of bytes available. If an I/O error occurs. See the classes which implement this method for the format of the description string. The connection description string. Gets a human-readable description of the connection. Causes the currently executing thread to sleep until > 0, or for a maximum of maxTimeout milliseconds. The maximum time in milliseconds to wait for an initial response from the printer. If an I/O error occurs. Gets or sets the maximum time, in milliseconds, to wait for any data to be received. Gets or sets the maximum time, in milliseconds, to wait in-between reads after the initial read. Sends dataToSend and returns the response data. The software returns immediately if the data received contains terminator. The connection must be open before this method is called. If sendAndWaitForResponse is called when a connection is closed, a ConnectionException is thrown. Byte array of data to send The maximum time, in milliseconds, to wait for the initial response to be received. If no data is received during this time, the function returns a zero length array. After the initial response, if no data is received for this period of time, the input is considered complete and the method returns. If the response contains this string, the input is considered complete and the method returns. May be used to avoid waiting for more data when the response is always terminated with a known string. Use null if no terminator is desired. The received data. If an I/O error occurs. Sends data from sourceStream and writes the response data to destinationStream. The software returns immediately if the data received contains terminator. The connection must be open before this method is called. If sendAndWaitForResponse is called when a connection is closed, a ConnectionException is thrown. Destination for response. Source of data to be sent. The maximum time, in milliseconds, to wait for the initial response to be received. If no data is received during this time, the function does not write any data to the destination stream. After the initial response, if no data is received for this period of time, the input is considered complete and the method returns. If the response contains this string, the input is considered complete and the method returns. May be used to avoid waiting for more data when the response is always terminated with a known string. Use null if no terminator is desired. If an I/O error occurs. Sends dataToSend and returns the response data. The software returns immediately if the data received satisfies validator. The connection must be open before this method is called. If sendAndWaitForResponse is called when a connection is closed, a ConnectionException is thrown. Byte array of data to send The maximum time, in milliseconds, to wait for the initial response to be received. If no data is received during this time, the function returns a zero length array. After the initial response, if no data is received for this period of time, the input is considered complete and the method returns. If the response satisfies this validator, the input is considered complete and the method returns. May be used to avoid waiting for more data when the response follows a known format. received data If an I/O error occurs. Sends data from sourceStream and writes the response data to destinationStream. The software returns immediately if the data received satisfies validator. The connection must be open before this method is called. If sendAndWaitForResponse is called when a connection is closed, a ConnectionException is thrown. Destination for response. Source of data to be sent. The maximum time, in milliseconds, to wait for the initial response to be received. If no data is received during this time, the function does not write any data to the destination stream. After the initial response, if no data is received for this period of time, the input is considered complete and the method returns. If the response satisfies this validator, the input is considered complete and the method returns. May be used to avoid waiting for more data when the response follows a known format.If validator is null, no validation is performed. When performing validation, this method will use enough memory to hold the entire response. If an I/O error occurs. Returns a ConnectionReestablisher which allows for easy recreation of a connection which may have been closed. This call should be made while there is still an active connection to the printer (prior to issuing a command which will make the printer non-responsive). How long the Connection reestablisher will wait before attempting to reconnection to the printer. Instance of If the ConnectionReestablisher could not be created. Abstract class which implements the default functionality of Connection. Reads maxBytesToRead of the available data from the connection. This call is non-blocking. number of bytes to read the bytes read from the connection if an I/O error occurs. Sets the stream to log the write data to. The stream to log the data to. Log data sent to printer by sending to the WriteLogStream, if present The data written to connection, send to log stream The start offset in the buffer. The number of bytes to write Gets or sets the maximum number of bytes to write at one time Reads maxBytesToRead of the available data from the connection. number of bytes to read true to exit on first data read the bytes read from the connection. if an I/O error occurs. See the classes which implement this property for the format of the printer manufacturer string. Sets the underlying read timeout value. The read timeout in milliseconds. If an error occurs while attempting to set the read timeout. For printers that support both Status and Printing channel (Link OS printers). The status channel of a connection. The printing channel of a connection. Signals that an error has occurred on the connection. onstructs a ConnectionException with message as the detailed error message. The error message. Constructs a ConnectionException with cause as the source of the exception. The cause of the exception. Constructs a ConnectionException with the message as the detailed error message and cause as the source of the exception. The error message. The cause of the exception. Defines methods used to reestablish a connection to a printer which may have been closed. Reestablishes a connection to a printer which may have been closed due to an event, like a reboot. Handles recreating and opening a connection to a printe.r If the printer cannot be found. If the connection can not be created or open. If a connection can not be reestablished after a defined timeout If the connection can not talk to the printer. For Zebra internal use only. Abstract class which implements the default functionality of StatusConnection. A connection to a device that copies data sent to the connection to the provided stream. Sets the stream to log the write data to. Log all write data to this stream. For internal use of the Zebra Printer API only. Reads maxBytesToRead of the available data from the connection. Number of bytes to read. True to return on first read. The bytes read from the printer. If an I/O error occurs. Reads maxBytesToRead of the available data from the connection. Number of bytes to read. The bytes read from the printer. If an I/O error occurs Gets or sets the maximum number of bytes to write at one time. Returns the printer manufacturer name. Sets the underlying read timeout value. The timeout in milliseconds. If an I/O error occurs A wrapper class containing information about a connection. The connection string The data of the connection info Writes a byte stream representation of the file to destination. Currently all files are retrieved in binary mode. Stream to receive the contents of the file. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. UnknownHostException Sets the sockets read/block timeout. Timeout in ms For internal use of the Zebra Printer API only. An interface defining methods associated with a device that may be addressed via an IP connection. Returns the address which was passed into the constructor. the address used to establish this connection. This can be either a DNS Hostname or an IP address. Returns the port number which was passed into the constructor. the port number associated with the connection. Signals that an error has occurred while writing to the connections log stream. Constructs a LogStreamException with message as the detailed error message. the error message. Base class for Link-OS printers which support separate printing and status channels. This class conforms to a standard and if only the Connection methods are used, the SDK will attempt to open both the printing and status channels. A will use the raw Connection when a method is called directly. Furthermore, when using a in conjunction with a , the will attempt to use whichever connection is the most efficient. If you wish to only open up a specific channel, use either the or method and their corresponding and method. Opens both the printing and status channel of this Multichannel connection. If neither channel can be opened, then a is thrown. When this Multichannel connection is no longer needed, you must call to free up system resources. Opens the printing channel of this Multichannel connection. If this method is called when this channel has already been opened, the call is ignored. When this channel is no longer needed, you must call either or to free up system resources. if the connection cannot be established. Opens the status channel of this Multichannel connection. If this method is called when this channel has already been opened, the call is ignored. When this channel is no longer needed, you must call either or to free up system resources. if the connection cannot be established. Closes both the printing and status channels of this MultichannelConnection. Releases any system resources associated with the connection. If the connection is already closed then invoking this method has no effect. Closes the printing channel of this MultichannelConnection. Releases any system resources associated with the connection. If the connection is already closed then invoking this method has no effect. if an I/O error occurs. Closes the status channel of this MultichannelConnection. Releases any system resources associated with the connection. If the connection is already closed then invoking this method has no effect. if an I/O error occurs. Gets the underlying printing of this MultichannelConnection. Gets the underlying status of this MultichannelConnection. Establishes a Multichannel TCP connection to a device. The default Multichannel printing port for Link-OS devices. The default Multichannel status port for Link-OS devices. For internal use of the Zebra Printer API only. Initializes a new instance of the MultichannelTcpConnection class. This constructor will use the default timeouts for . The default timeout is a maximum of 5 seconds for any data to be received. If no more data is available after 500 milliseconds the read operation is assumed to be complete.
To specify timeouts other than the defaults, use:
or
The discovered printer.
Initializes a new instance of the MultichannelTcpConnection class. This constructor will use the specified timeouts for for both channels. The timeout is a maximum of maxTimeoutForRead milliseconds for any data to be received. If no more data is available after timeToWaitForMoreData milliseconds the read operation is assumed to be complete. If you wish to specify different timeouts for each channel, use
The discovered printer. The maximum time, in milliseconds, to wait for any data to be received. The maximum time, in milliseconds, to wait in-between reads after the initial read.
Initializes a new instance of the MultichannelTcpConnection class. This constructor will use the specified timeouts for for the channels. The timeout is a maximum of printingChannelMaxTimeoutForRead/statusChannelMaxTimeoutForRead milliseconds for any data to be received on the printing/status channels respectively.If no more data is available after printingChannelTimeToWaitForMoreData/statusChannelTimeToWaitForMoreData milliseconds on the printing/status channels respectively the read operation is assumed to be complete. The discovered printer. The maximum time, in milliseconds, to wait for any data to be received on the printing channel. The maximum time, in milliseconds, to wait in-between reads after the initial read on the printing channel. The maximum time, in milliseconds, to wait for any data to be received on the status channel. The maximum time, in milliseconds, to wait in-between reads after the initial read on the status channel. If discoveredPrinter is not a valid Link-OS printer. Initializes a new instance of the MultichannelTcpConnection class. This constructor will use the default timeouts for . The default timeout is a maximum of 5 seconds for any data to be received.If no more data is available after 500 milliseconds the read operation is assumed to be complete.
To specify timeouts other than the defaults, use:
or
The IP Address or DNS Hostname. The printing port number. The status port number.
Initializes a new instance of the MultichannelTcpConnection class. This constructor will use the specified timeouts for for both channels. The timeout is a maximum of maxTimeoutForRead milliseconds for any data to be received.If no more data is available after timeToWaitForMoreData milliseconds the read operation is assumed to be complete. If you wish to specify different timeouts for each channel, use The IP Address or DNS Hostname. The printing port number. The status port number. The maximum time, in milliseconds, to wait for any data to be received. The maximum time, in milliseconds, to wait in-between reads after the initial read. Initializes a new instance of the MultichannelTcpConnection class. This constructor will use the specified timeouts for for the channels. The timeout is a maximum of printingChannelMaxTimeoutForRead/statusChannelMaxTimeoutForRead milliseconds for any data to be received on the printing/status channels respectively.If no more data is available after printingChannelTimeToWaitForMoreData/statusChannelTimeToWaitForMoreData milliseconds on the printing/status channels respectively the read operation is assumed to be complete. The IP Address or DNS Hostname. The printing port number. The status port number. The maximum time, in milliseconds, to wait for any data to be received on the printing channel. The maximum time, in milliseconds, to wait in-between reads after the initial read on the printing channel. The maximum time, in milliseconds, to wait for any data to be received on the status channel. The maximum time, in milliseconds, to wait in-between reads after the initial read on the status channel. The Address, PrintingPort, and StatusPort are the parameters which were passed into the constructor. TCP_MULTI:[Address]:[PrintingPort]:[StatusPort] Return the IP address as the description. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. the error message An interface defining a method to validate whether a response from the printer is complete. Provide a method to determine whether a response from the printer is a complete response. string to be validated true if the string is a complete response A status connection to a Link-OS printer. The status connection requires Link-OS firmware 2.5 or higher. This connection will not block the printing channel, nor can it print. A status connection to a Link-OS printer. The status connection requires Link-OS firmware 2.5 or higher. This connection will not block the printing channel, nor can it print.It copies data sent to the connection to the provided stream. Sets the stream to log the write data to. Log all write data to this stream. Establishes a TCP connection to a device. The default TCP port for ZPL devices. The default TCP port for CPCL devices. For internal use of the Zebra Printer API only. Initializes a new instance of the TcpConnection class. This constructor will use the default timeouts for . The default timeout is a maximum of 5 seconds for any data to be received.If no more data is available after 500 milliseconds the read operation is assumed to be complete.
To specify timeouts other than the defaults, use:
.
the IP Address or DNS Hostname. the port number.
Initializes a new instance of the TcpConnection class. This constructor will use the specified timeouts for . The timeout is a maximum of maxTimeoutForRead milliseconds for any data to be received. If no more data is available after timeToWaitForMoreData milliseconds the read operation is assumed to be complete. The IP Address or DNS Hostname. The port number. The maximum time, in milliseconds, to wait for any data to be received. The maximum time, in milliseconds, to wait in-between reads after the initial read. Exposed this protected constructor for testing. We can pass in a mock Connector rather than the specific one Returns TCP:[Address]:[PortNumber]. The address and port number are the parameters which were passed into the constructor. Gets the IP address as the description. Sets the read timeout on the underlying socket. The read timeout in milliseconds Establishes a status only TCP connection to a device The default Status TCP port for ZPL devices. Initializes a new status only instance of the TcpStatusConnection class using the default status port of 9200. This constructor will use the default timeouts for . The default timeout is a maximum of 5 seconds for any data to be received. If no more data is available after 500 milliseconds the read operation is assumed to be complete.
To specify timeouts other than the defaults, use:
The IP Address or DNS Hostname.
Initializes a new status only instance of the TcpStatusConnection class. This constructor will use the default timeouts for . The default timeout is a maximum of 5 seconds for any data to be received.If no more data is available after 500 milliseconds the read operation is assumed to be complete.
To specify timeouts other than the defaults, use:
The IP Address or DNS Hostname. The port number.
Initializes a new status only instance of the TcpStatusConnection class. This constructor will use the specified timeouts for . The timeout is a maximum of maxTimeoutForRead milliseconds for any data to be received. If no more data is available after timeToWaitForMoreData milliseconds the read operation is assumed to be complete. The IP Address or DNS Hostname. The port number. The maximum time, in milliseconds, to wait for any data to be received. The maximum time, in milliseconds, to wait in-between reads after the initial read. The address and port number are the parameters which were passed into the constructor. TCP_STATUS:[address]:[port number] Returns the IP address and the status port as the description. An interface used to control and obtain various properties of a device. This is an utility class for performing file operations on a device. Sends the contents of a file to the device. The full file path (e.g. "C:\\Users\\%USERNAME%\\Documents\\sample.lbl"). Note: If the file contains data which will trigger a response from the printer (e.g. JSON formatted settings), this method will not clear the response from the buffer. This may cause subsequent method calls to fail unpredictably. Clear the read buffer of the connection manually by calling Read() if this is applicable. If there is an issue communicating with the device (e.g. the connection is not open). Sends the contents of a file to the device. The full file path (e.g. "C:\\Users\\%USERNAME%\\Documents\\sample.lbl"). Callback to update on progress Note: If the file contains data which will trigger a response from the printer (e.g. JSON formatted settings), this method will not clear the response from the buffer. This may cause subsequent method calls to fail unpredictably. Clear the read buffer of the connection manually by calling Read() if this is applicable. If there is an issue communicating with the device (e.g. the connection is not open). Retrieves the names of the files which are stored on the device. List of file names. If there is an error connecting to the device. If there is an error parsing the directory data returned by the device. Retrieves the names of the files which are stored on the device. This method only returns files which have one of the extensions in extensions. The extensions to filter on. List of file names. If there is an error connecting to the device. If there is an error parsing the directory data returned by the device. Retrieves the properties of the objects which are stored on the device. The list of objects with their properties. If there is an error connecting to the device. If there is an error parsing the directory data returned by the device. Utility class for performing file operations on a Zebra Link-OS™ printer. Retrieves storage information for all of the printer's available drives. A list of objects detailing information about the printer's available drives. Stores the file on the printer using any required file wrappers. If the contents of filePath contains any commands which need to be processed by the printer, use instead. These commands include download commands and any immediate commands(~CC, ~CD, ~DB, ~DE, ~DG, ~DY, ~EG, ~HI, ~HU, ~HM, ~HQ, ~HS, ~JA, ~JB, ~JC, ~JD, ~JE, ~JF, ~JG, ~JI, ~JL, ~JN, ~JO, ~JP, ~JQ, ~JR, ~JS, ~JX, ~NC, ~NT, ~PL, ~PP, ~PR, ~PS, ~RO, ~SD, ~TA, ~WC, ~WQ, ^DF) The full file path (e.g. "C:\\Users\\%USERNAME%\\Documents\\sample.zpl"). If there is an error connecting to the device. If there is an issue reading the file If filePath cannot be used to create a printer file name. Stores the file on the printer at the specified location and name using any required file wrappers. If the contents of filePath contains any commands which need to be processed by the printer, use instead. These commands include download commands and any immediate commands(~CC, ~CD, ~DB, ~DE, ~DG, ~DY, ~EG, ~HI, ~HU, ~HM, ~HQ, ~HS, ~JA, ~JB, ~JC, ~JD, ~JE, ~JF, ~JG, ~JI, ~JL, ~JN, ~JO, ~JP, ~JQ, ~JR, ~JS, ~JX, ~NC, ~NT, ~PL, ~PP, ~PR, ~PS, ~RO, ~SD, ~TA, ~WC, ~WQ, ^DF) The full file path (e.g. "C:\\Users\\%USERNAME%\\Documents\\sample.zpl"). The full name of the file on the printer (e.g "R:SAMPLE.ZPL"). If there is an error connecting to the device. If there is an issue reading the file If fileNameOnPrinter is not a legal printer file name. Stores a file on the printer named fileNameOnPrinter with the file contents from fileContents using any required file wrappers. If the fileContents contains any commands which need to be processed by the printer, use instead. These commands include download commands and any immediate commands(~CC, ~CD, ~DB, ~DE, ~DG, ~DY, ~EG, ~HI, ~HU, ~HM, ~HQ, ~HS, ~JA, ~JB, ~JC, ~JD, ~JE, ~JF, ~JG, ~JI, ~JL, ~JN, ~JO, ~JP, ~JQ, ~JR, ~JS, ~JX, ~NC, ~NT, ~PL, ~PP, ~PR, ~PS, ~RO, ~SD, ~TA, ~WC, ~WQ, ^DF) The contents of the file to store. The full name of the file on the printer (e.g "R:SAMPLE.ZPL"). If there is an error connecting to the device. If fileNameOnPrinter is not a legal printer file name. Deletes the file from the printer. The filePath may also contain wildcards. The location of the file on the printer. Wildcards are also accepted (e.g. "E:FORMAT.ZPL", "E:*.*") If there is an error connecting to the device. Retrieves a file from the printer's file system and returns the contents of that file as a byte array. Will retrieve the following file extensions: ZPL, GRF, DAT, BAS, FMT, PNG, LBL, PCX, BMP, WML, CSV, HTM, TXT.

Files transferred between different printer models may not be compatible.
The absolute file path on the printer ("E:SAMPLE.TXT"). The file contents If there is an issue communicating with the device (e.g. the connection is not open). If the filePath is invalid, or if the file does not exist on the printer.
Retrieves a file from the printer's file system and writes the contents of that file to destinationStream. Will retrieve the following file extensions: ZPL, GRF, DAT, BAS, FMT, PNG, LBL, PCX, BMP, WML, CSV, HTM, TXT.

Files transferred between different printer models may not be compatible.
Output stream to receive the file contents The absolute file path on the printer ("E:SAMPLE.TXT"). If there is an issue communicating with the device (e.g. the connection is not open). If the filePath is invalid, or if the file does not exist on the printer.
Retrieves a file from the printer's file system via FTP and returns the contents of that file as a byte array. Will retrieve the following file extensions: ZPL, GRF, DAT, BAS, FMT, PNG, LBL, PCX, BMP, WML, CSV, HTM, TXT.

Files transferred between different printer models may not be compatible.
NOTE: This method retrieves files over a network protocol and hence will only work over a TCP connected printer with FTP enabled. If ftpPassword is not provided, a default will be tried.
The absolute file path on the printer ("E:SAMPLE.TXT") The password used to login to FTP, if null, a default password ("1234") will be used. The file contents. If there is an error communicating with the printer, or the ftpPassword is invalid If the filePath is invalid, or if the file does not exist on the printer.
Retrieves a file from the printer's file system via FTP and writes the contents of that file to destinationStream. Will retrieve the following file extensions: ZPL, GRF, DAT, BAS, FMT, PNG, LBL, PCX, BMP, WML, CSV, HTM, TXT.

Files transferred between different printer models may not be compatible.
NOTE: This method retrieves files over a network protocol and hence will only work over a TCP connected printer with FTP enabled. If ftpPassword is not provided, a default will be tried.
The output stream to receive the file contents The absolute file path on the printer ("E:SAMPLE.TXT") The password used to login to FTP, if null, a default password ("1234") will be used. If there is an error communicating with the printer, or the ftpPassword is invalid If the filePath is invalid, or if the file does not exist on the printer.
Retrieves a file from the printer's file system and returns the contents of that file as a byte array including all necessary file wrappers for redownloading to a Zebra printer. Will retrieve the following file extensions: ZPL, GRF, DAT, BAS, FMT, PNG, LBL, PCX, BMP, WML, CSV, HTM, TXT
Files transferred between different printer models may not be compatible.
The absolute file path on the printer ("E:SAMPLE.TXT") A Zebra printer downloadable file content. If there is an issue communicating with the device (e.g. the connection is not open). If the filePath is invalid, or if the file does not exist on the printer.
A class used to assemble a profile efficiently. Prepares the destination stream to receive the profile data. This method must be called prior to calling any other method in this class. The stream in which to put the profile.
must be called to get a valid profile in the destinationStream.
Method to add settings data to a profile. The profile expects settings data to be valid JSON and of the form of the allconfig response. The stream containing the settings data. If there is an error adding settings to the profile. Method to add alerts to a profile. The stream containing the alerts data. If there is an error adding alerts to the profile. Adds data to supplement an existing printer profile. Any supplemental data added to a profile, upon loading the profile, will be sent to the printer after all other profile components have been applied. The stream containing the supplement data. If there is an error adding the supplement to the profile. Adds a firmware file to an existing printer profile. Upon loading the profile, if it contains a firmware file, the firmware will be sent to the printer before all other profile components. The desired display name of the firmware file. The stream containing the firmware. If there is an error adding firmware to the profile. Adds user files to the profile. Files to add to the profile. Each file entry should contain the desired file name and the a stream of the file's content. If there is an error adding files to the profile. Flushes remaining profile data to prepare the destination stream for closing. This method must be called when you are done assembling all the parts of your profile, and should only be invoked once. Handler to retrieve the parts of the profile. Callback fired when settings are retrieved from a profile. The profile stream. If there is an error retrieving the settings Callback fired when alerts are retrieved from a profile. The profile stream. If there is an error retrieving the alerts Callback fired when firmware is retrieved from a profile. The profile stream. If there is an error retrieving the firmware Callback fired when the firmware display name is retrieved from a profile. The profile stream. If there is an error retrieving the firmware display name Callback fired when the supplement is retrieved from a profile. The profile stream. If there is an error retrieving the supplement Callback fired when a file is retrieved from a profile. This will be called once for each user file in the profile. The file name The profile stream. If there is an error retrieving the file A class used to disassemble a profile efficiently. Disassembles the profile and notifies the handler for all the profile parts. The profile source stream. Callback to retrieve the parts of the profile. If there is an error disassembling the profile. Provides access to the magnetic card reader, for devices equipped with one. Activates the device's magnetic card reader, if present, and waits for a card to be swiped. If the device does not have a reader the call will timeout. The amount of time in milliseconds to enable the reader and wait for a card to be swiped. An array of three strings corresponding to the tracks of the card. If a track could not be read that string will be empty. A class used to determine if a base has MagCard reader capabilities. Not all Zebra printers are available with built-in readers. Creates an instance of a Magcard reader, if available. Base Zebra Printer that may or may not have MagCard reader capabilities. An instance of a MagCardReader object or null if the base printer does not have MagCard reader hardware installed. Interface to access the contents of a .zprofile file. Create a Profile object backed by an existing .zprofile file. Path to the profile file. If the file pathToProfile does not exist. Adds data to supplement an existing printer profile. Any supplemental data added to a profile, upon loading the profile, will be sent to the printer after all other profile components have been applied. Byte array containing the data to be used to supplement the printer profile. If there is an error writing to the .zprofile file. Returns the supplement data within the profile. The supplement data within the profile. If there is an error writing to the .zprofile file. If the .zprofile file cannot be found. This method is not valid for a profile. If this method is called. Adds a firmware file to an existing printer profile. Upon loading the profile, if it contains a firmware file, the firmware will be sent to the printer before all other profile components. Full path to the firmware file to be added to the profile. If there is an error reading pathToFirmwareFile or if there is an error writing to the.zprofile file. Adds a firmware file to an existing printer profile. Upon loading the profile, if it contains a firmware file, the firmware will be sent to the printer before all other profile components. The name of the firmware file The firmware file contents If there is an error reading pathToFirmwareFile or if there is an error writing to the.zprofile file. Removes the firmware file from the profile. If there is an error removing the firmware file from the .zprofile file. Returns the file name of the firmware file within the profile. The file name of the firmware file within the profile. If there is an error removing the firmware file from the .zprofile file. If the firmware file cannot be found in the .zprofile file. Retrieve all of the setting identifiers for a profile. These are the IDs that may be used as keys for retrieving and updating settings for a profile. Set of identifiers available for a profile. If there is an error communicating with the printer. If the settings could not be loaded. Retrieves the profile's setting value for a setting id. The setting id. The setting's value. If there is an error communicating with the printer. If the settings could not be retrieved. Retrieves the profile's setting values for a list of setting ids. List of setting ids. The settings' values. If there is an error communicating with the printer. If the settings could not be retrieved. Retrieves all of the profile's setting values. Values of all the settings provided by the profile. If there is an error communicating with the printer. If the settings could not be loaded. Change the value of the setting in the profile to the given value. The setting id. The setting's value. If there is an error communicating with the printer. If the setting is read only, does not exist, or if the setting could not be set. Set more than one setting. Map a setting ID to the new value for the setting. If there is an error communicating with the printer. If the settings cannot be saved in the profile. Retrieve the values of all the settings that are archivable. Values of all the settings with the archivable attribute that are in the profile. If there is an error communicating with the printer. If the settings could not be loaded. Retrieve the values of all the settings that are clonable. Values of all the settings with the clonable attribute that are in the profile. If there is an error communicating with the printer. If the settings could not be loaded. Retrieves the profile's for a setting id. The setting id. The If there is an error communicating with the printer. If the setting could not be retrieved. Change the setting in the profile. The setting id. The setting. If there is an error communicating with the printer. If the setting is malformed, or if the setting could not be set. Change settings in the profile. The settings to change If there is an error communicating with the printer. If a setting is malformed, or one or more settings could not be set. Change or retrieve settings in the profile. The settings to change. results of the setting commands If there is an error communicating with the printer. If the setting is malformed, or if the setting could not be set. A list of objects detailing the alert configurations in a profile. A list of alert objects currently in a profile. If the alerts could not be extracted from the profile. Removes a configured alert from a profile. They may be reconfigured via the setAlert methods. The alert to be removed from the configuration. If an I/O error occurs. Removes all alerts currently in a profile. They may be reconfigured via the setAlert(s) methods. If an I/O error occurs. Adds a TrueType® font file to a profile and stores it at the specified path as a TTF. Path to a TrueType® font to be added to the profile. Location to save the font file in the profile. If an I/O error occurs. Adds a TrueType® font file to a profile and stores it at the specified path as a TrueType® extension (TTE). Path to a TrueType® font to be added to the profile. Location to save the font file in the profile. If an I/O error occurs. Adds a TrueType® font file to a profile and stores it at the specified path as a TTF. Input Stream containing the font data. Location to save the font file in the profile. If an I/O error occurs. Adds a TrueType® font to a profile and stores it at the specified path as a TrueType® extension (TTE). Input Stream containing the font data. Location to save the font file in the profile. If an I/O error occurs. This method is not valid for a profile. Path to the file containing the data to send. If this method is called. This method is not valid for a profile. Path to the file containing the data to send. Progress monitor callback handler. If this method is called. Adds a file to the profile named fileNameOnPrinter with the file contents from fileContents. The full name of the file on the printer (e.g "R:SAMPLE.ZPL"). The contents of the file to send. If an I/O error occurs. Retrieves the names of the files which are in the profile. List of file names. Retrieves the names of the files which are stored on the device. This method only returns files which have one of the extensions in extensions. The extensions to filter on. List of file names. Stores the file in the profile using any required file wrappers. If the contents of filePath contains any commands which need to be processed by the printer, use instead! These commands include download commands any immediate commands(~CC, ~CD, ~DB, ~DE, ~DG, ~DY, ~EG, ~HI, ~HU, ~HM, ~HQ, ~HS, ~JA, ~JB, ~JC, ~JD, ~JE, ~JF, ~JG, ~JI, ~JL, ~JN, ~JO, ~JP, ~JQ, ~JR, ~JS, ~JX, ~NC, ~NT, ~PL, ~PP, ~PR, ~PS, ~RO, ~SD, ~TA, ~WC, ~WQ, ^DF) The full file path (e.g. "C:\\Users\\%USERNAME%\\Documents\\sample.zpl"). If there is an error connecting to the device. If filePath cannot be used to create a printer file name. Stores the file in the profile at the specified location and name using any required file wrappers. If the contents of filePath contains any commands which need to be processed by the printer, use instead! These commands include download commands any immediate commands(~CC, ~CD, ~DB, ~DE, ~DG, ~DY, ~EG, ~HI, ~HU, ~HM, ~HQ, ~HS, ~JA, ~JB, ~JC, ~JD, ~JE, ~JF, ~JG, ~JI, ~JL, ~JN, ~JO, ~JP, ~JQ, ~JR, ~JS, ~JX, ~NC, ~NT, ~PL, ~PP, ~PR, ~PS, ~RO, ~SD, ~TA, ~WC, ~WQ, ^DF) The full file path (e.g. "C:\\Users\\%USERNAME%\\Documents\\sample.zpl"). The full name of the file on the printer (e.g "R:SAMPLE.ZPL"). If there is an error connecting to the device. Stores a file in the profile named fileNameOnPrinter with the file contents from fileContents using any required file wrappers. If the fileContents contains any commands which need to be processed by the printer, use instead! These commands include download commands any immediate commands(~CC, ~CD, ~DB, ~DE, ~DG, ~DY, ~EG, ~HI, ~HU, ~HM, ~HQ, ~HS, ~JA, ~JB, ~JC, ~JD, ~JE, ~JF, ~JG, ~JI, ~JL, ~JN, ~JO, ~JP, ~JQ, ~JR, ~JS, ~JX, ~NC, ~NT, ~PL, ~PP, ~PR, ~PS, ~RO, ~SD, ~TA, ~WC, ~WQ, ^DF) The contents of the file to store. The full name of the file on the printer (e.g "R:SAMPLE.ZPL"). If there is an error connecting to the device. Deletes the file from the profile. The filePath may also contain wildcards. The location of the file on the printer. Wildcards are also accepted (e.g. "E:FORMAT.ZPL", "E:*.*") If there is an error accessing the profile. Retrieves a file from the profile and returns the contents of that file as a byte array. Will retrieve the following file extensions: ZPL, GRF, DAT, BAS, FMT, PNG, LBL, PCX, BMP, WML, CSV, HTM, BAE, TXT.

Files transferred between different printer models may not be compatible.
The absolute file path on the printer ("E:SAMPLE.TXT"). The file contents If the filePath is invalid, or if the file does not exist on the printer.
This method is not valid for a profile. NA NA NA If this method is called. This method is not valid for a profile. NA NA NA If this method is called. Retrieves a file from the profile and returns the contents of that file as a byte array including all necessary file wrappers for re-downloading to a Zebra printer. Will retrieve the following file extensions: ZPL, GRF, DAT, BAS, FMT, PNG, LBL, PCX, BMP, WML, CSV, HTM, BAE, TXT
Files transferred between different printer models may not be compatible.
The absolute file path on the printer ("E:SAMPLE.TXT"). A Zebra printer downloadable file content. If the filePath is invalid, or if the file does not exist on the printer.
Class which allows you to store a zprofile to a mirror server. Creates an instance of a class which can be used to store a profile onto a mirror server. Path to the profile to load. (e.g. /home/user/profile.zprofile). If an I/O error occurs. Stores the profile to the mirror server. This method also deletes all files in appl/, commands/, and files/ directory before storing the contents of the profile in the proper directories. The FTP server path. The FTP user name. (The user should have read/write/create/delete access.) The FTP password. A list of the errors that happened while uploading settings and files. If an I/O error occurs. If the profile is not found. If an I/O error occurs. Handler to monitor long-running file operations. Default constructor. Callback to notify the user as to the progress of the how many bytes have been sent. Bytes currently written Total bytes to send Provides access to the smartcard reader, for printers equipped with one. Not all Zebra printers are available with built-in readers. Sends a CT_ATR command to the printer's smartcard reader, if present. A byte array containing the response from the smartcard reader. If an I/O error occurs. Sends a CT_DATA command to the printer's smartcard reader, if present. Data to be sent to the smartcard using the CT_DATA card command. A byte array containing the response from the smartcard reader. If an I/O error occurs. Turns the printer's smartcard reader off, if present. This call should be made after communicating with the smartcard via the method. A class used to determine if a base ZebraPrinter has Smartcard reader capabilities. Not all Zebra printers are available with built-in readers. Creates an instance of a Smartcard reader, if available. Base ZebraPrinter that may or may not have Smartcard reader capabilities. An instance of a SmartcardReader object or null if the base printer does not have Smartcard reader hardware installed. Signals that an illegal argument was used. Constructs a ZebraIllegalArgumentException with message as the detailed error message the error message Constructs a ZebraIllegalArgumentException with message as the detailed error message the error message The name of the parameter that caused the exception. Constructs a ZebraIllegalArgumentException with the message as the detailed error message and cause as the source of the exception. The error message. The cause of the exception. Constructs a ZebraIllegalArgumentException with the message as the detailed error message and cause as the source of the exception. The error message. The name of the parameter that caused the exception. The cause of the exception. For internal use of the Zebra Printer API only. Contains methods used to query attributes of an image formatted for a Zebra printer. For internal use of the Zebra Printer API only. A row of image data. For internal use of the Zebra Printer API only. True if the image was scaled. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. Contains methods used to query attributes of an image formatted for a Zebra printer. see ZebraImageFactory" for how to create an image. Gets the image's height in pixels. Gets the image's width in pixels. This is an utility class for getting/setting alerts on a printer. A list of objects detailing the alert configuration of a printer. A list of alert objects currently configured on the printer. Configures an alert to be triggered when the alert's condition occurs or becomes resolved. The alert to trigger when it's condition occurs or becomes resolved. Configures a list of alerts to be triggered when their conditions occur or become resolved. The list of alerts to trigger when their conditions occur or become resolved. Removes a configured alert from a printer. They may be reconfigured via the configureAlert(s) methods. Alert to be removed from the configuration Removes all alerts currently configured on a printer. They may be reconfigured via the configureAlert(s) methods. A class used to print template formats using comma separated values as input data. Print template formats using comma separated values as input data. The source stream containing the CSV data. The template to merge the CSV data to. The quantity, if not specified in the data. Optional stream to send data to. If an I/O error occurs. If it was not possible to connect to the device. Print template formats using comma separated values as input data. The connection string. The source stream containing the CSV data. The template to merge the CSV data to. The quantity, if not specified in the data. Optional stream to send data to. If an I/O error occurs. If it was not possible to connect to the device. Print template formats using comma separated values as input data. The source stream containing the CSV data. The template to merge the CSV data to. The quantity, if not specified in the data. Optional stream to send data to. If true, print a running commentary to standard out. If an I/O error occurs. If it was not possible to connect to the device. Print template formats using comma separated values as input data. The connection string. The source stream containing the CSV data. The template to merge the CSV data to. The quantity, if not specified in the data. Optional stream to send data to. If true, print a running commentary to standard out. If an I/O error occurs. If it was not possible to connect to the device. If there is an issue with the arguments. Container holding information about a discovered printer. Creates a connection based on the information in the DiscoveredPrinter response. a Connection to the discovered printer MAC address, IP Address, or local name of printer. Creates an object holding information about a discovered printer. MAC address, IP Address, or local name of printer. MAC address, IP Address, or local name of printer. For TCP, this returns the IP Address. For driver, this returns the local printer name. Returna a Dictionary of all settings obtained via the chosen discovery method. The names of the settings will vary depending upon the type of connection to the printer. The following example shows how to list all the properties of the discovered printer with the respective value. foreach (string settingsKey in printer.DiscoveryDataMap.Keys) { System.Diagnostics.Debug.WriteLine("Key: " + settingsKey + " Value: " + printer.DiscoveryDataMap[settingsKey]); } containing available attributes of the discovered printer. Returns true if two discovered printer objects have the same address, otherwise it returns false. DiscoveredPrinter object to compare against. true if equal Returns a hash code for this DiscoveredPrinter. The hash code DiscoveredPrinterFilter is an interface to allow the user to write custom code to determine whether or not a DiscoveredPrinter should be included in the discovery result. Method called by a discovery operation to determine whether or not the should be added to the list of discovered devices. DiscoveredPrinter to potentially be added to the list of of discovered devices. A bool indicating whether or not the device should be added. Instance of that is returned when performing a network discovery. Returns an instance of a DiscoveredPrinterNetwork with address and port. The address of the discovered network printer The active raw port of the discovered network printer Returns an instance of a DiscoveredPrinterNetwork built using the provided attributes. A map of attributes associated with the discovered network printer Returns a hash code for this DiscoveredPrinter. Signals that there was an error during discovery. Constructs a new instance of the DiscoveryException class with a specified error message. The error message that explains the reason for the exception. Constructs a new instance of the DiscoveryException class. Constructs a new instance of the DiscoveryException class with a specified error message and a reference to the inner exception. The error message that explains the reason for the exception. The exception that is the cause of the current exception. Interface definition for a callback to be invoked for printer discovery events This method is invoked when a printer has been discovered. This method will be invoked for each printer that is found. a discovered printer. This method is invoked when discovery is finished. This method is invoked when there is an error during discovery. The discovery will be cancelled when this method is invoked. will not be called if this method is invoked. the error message. Class definition for a callback to be invoked for Link-OS™ printer discovery events. Creates a DiscoveryHandler which will only report back Link-OS™ printers. Base discovery handler for callbacks. This method is invoked when there is an error during discovery. The discovery will be cancelled when this method is invoked. will not be called if this method is invoked. The error message. This method is invoked when discovery is finished. This method is invoked when a Link-OS™ printer has been discovered. This method will be invoked for each printer that is found. A discovered Link-OS™ printer. Signals that there was an error during discovery packet decoding Constructs a new instance of the DiscoveryPacketDecodeException class. Constructs a new instance of the DiscoveryPacketDecodeException class with a specified error message. The error message that explains the reason for the exception. Constructs a new instance of the DiscoveryPacketDecodeException class with a specified error message and a reference to the inner exception. The error message that explains the reason for the exception. The exception that is the cause of the current exception. Defines functions used when discovering information about a printer. Decodes the provided MIME encoded discovery packet and returns a discovery data map A Base64 encoded discovery packet A discovery data map representative of the provided packet If provided a malformed discovery packet Reads the discovery packet from the provided connection and returns a discovery data map A to a printer A discovery data map representative of the provided packet If an I/O error occurs. If provided a malformed discovery packet For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. Class used to decode a Zebra discovery packet For internal use of the Zebra Printer API only. Class used to decode a Zebra discovery packet For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. A class used to discover printers on an IP Network. Sends a discovery packet to the IPs specified in the subnetRange. Subnet searches are defined by the first three subnet octets, followed by a range, such as 192.168.2. This method accepts IP addresses of the form, assuming a subnet of 192.168.2: 192.168.2.254 (will send a discovery packet to 192.168.2.254) 192.168.2.* (will send a discovery packet for the range 192.168.2.1 - 192.168.2.254) 192.168.2.8-* (will send a discovery packet for the range 192.168.2.8 - 192.168.2.254) 192.168.2.37-42 (will send a discovery packet for the range 192.168.2.37 - 192.168.2.42) This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.
A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). The subnet search range. If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a discovery packet to the IPs specified in the subnetRange. This method will wait up to waitForResponsesTimeout milliseconds determining that there are no more discovery responses. Subnet searches are defined by the first three subnet octets, followed by a range, such as 192.168.2. This method accepts IP addresses of the form, assuming a subnet of 192.168.2: 192.168.2.254 (will send a discovery packet to 192.168.2.254) 192.168.2.* (will send a discovery packet for the range 192.168.2.1 - 192.168.2.254) 192.168.2.8-* (will send a discovery packet for the range 192.168.2.8 - 192.168.2.254) 192.168.2.37-42 (will send a discovery packet for the range 192.168.2.37 - 192.168.2.42) This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.
A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). The subnet search range. Time to wait, in milliseconds, before determining that there are no more discovery responses. If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a directed broadcast discovery packet to the subnet specified by ipAddress. Directed broadcasts are defined by the first three subnet octets, followed by 255, such as 192.168.2.255. This method accepts IP addresses of the form, assuming a subnet of 192.168.2: 192.168.2.255 192.168.2.1 (last octet will be replaced with 255) 192.168.2 (will append 255 for the last octet) 192.168.2. (will append 255 for the last octet) This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.
A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). The IP address of the subnet. If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a directed broadcast discovery packet to the subnet specified by ipAddress. This method will wait up to waitForResponsesTimeout milliseconds determining that there are no more discovery responses. Directed broadcasts are defined by the first three subnet octets, followed by 255, such as 192.168.2.255. This method accepts IP addresses of the form, assuming a subnet of 192.168.2: 192.168.2.255 192.168.2.1 (last octet will be replaced with 255) 192.168.2 (will append 255 for the last octet) 192.168.2. (will append 255 for the last octet) This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.
A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). The IP address of the subnet. Time to wait, in milliseconds, before determining that there are no more discovery responses. If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a local broadcast packet. This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.
A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a local broadcast packet. This method will wait up to waitForResponsesTimeout milliseconds determining that there are no more discovery responses.

This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.
A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). Time to wait, in milliseconds, before determining that there are no more discovery responses. If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a multicast discovery packet. This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.

For Android users : some extra code is required to obtain a multicast lock. See the example in
A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). The number of hops. If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a multicast discovery packet. This method will wait up to waitForResponsesTimeout milliseconds determining that there are no more discovery responses.

This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.

For Android users : some extra code is required to obtain a multicast lock. See the example in
A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). The number of hops. Time to wait, in milliseconds, before determining that there are no more discovery responses. If an error occurs while starting the discovery (errors during discovery will be sent via .
This method will search the network using a combination of discovery methods to find printers on the network. This is a convenience method that can be used as an alternative to the other discovery methods (e.g. multicast).

This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.

A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a discovery request to the list of printer DNS names or IPs in printersToFind. This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.

A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). A list of IP addresses or DNS names for the printers to be discovered. If an error occurs while starting the discovery (errors during discovery will be sent via .
Sends a discovery request to the list of printer DNS names or IPs in printersToFind. This method will wait up to waitForResponsesTimeout milliseconds determining that there are no more discovery responses.

This method will invoke the method for each printer that is found during discovery. will be invoked when the discovery is finished and will be invoked when any errors are encountered during discovery. When is invoked, the discovery will be canceled and will not be invoked.

If a printer responds to the discovery request more than once, the method will only be invoked on the first occurrence.

A instance that is used to handle discovery events (e.g. found a printer, errors, discovery finished). A list of IP addresses or DNS names for the printers to be discovered. Time to wait, in milliseconds, before determining that there are no more discovery responses. If an error occurs while starting the discovery (errors during discovery will be sent via .
Drive types. Onboard flash drive. RAM Drive. Removable mass storage drive. Unknown drive. Read only drive. This class is used to describe format variable fields. For example, in CPCL, the following format will contain 2 .
            ! DF SHELF.FMT
            ! 0 200 200 210 1
            CENTER
            TEXT 4 3 0 15 \\
            TEXT 4 0 0 95 \\
            FORM
            PRINT
            
The first will contain a fieldNumber of 1, and a fieldName of null. The second will contain a fieldNumber of 2, and a fieldName of null.


In ZPL, the following ^FN command will contain 2 .
            ^XA
            ^DFR:SHELF.ZPL^FS
            ^FO25,25^A0N,50,50^FN15"Name"^FS
            ^FO25,75^A0N,50,50^FN15"Address"^FS
            ^FO25,125^A0N,50,50^FN18^FS
            ^FO25,175^A0N,50,50^FN15
            ^XZ
            
The first will contain a fieldNumber of 15, and a fieldName of "Address". The second will contain a fieldNumber of 18, and a fieldName of null.
Note: If a label format contains multiple Field Numbers, only 1 will be returned since the data will be shared by all variables with the number. The portion of the variable will be the last one in the format, unless it is not present.For example, in the format above, there are 3 ^FN15's. The first 2 have a "prompt" parameter, the third does not. The second one, "Address", overwrites the first one, "Name". The third one is not present, so the previous one, "Address", is preserved.
Create a descriptor for a field The number of the field. The name of the field, or null if not present. In CPCL, this number will be the number of the variable field in the format. The fields are numbered starting at 1.
In ZPL, this number will correspond to the ^FN number.
In CPCL, this field is always null.
In ZPL, this field will correspond to the optional name parameter of the ^FN command, or null if the parameter is not present
Options for deleting files when loading profiles to a Zebra printer. Attempts to delete all files from the printer. (Persistent files, hidden files, and System files will not be deleted.) Will attempt to delete only the file types which are copied at profile/backup creation time. Will not attempt to delete any files. Handler class is used to update status while performing a firmware download and to notify the caller when the printer has reconnected after restarting. Default constructor. Called when the firmware download completes. Called when the printer is back online and has been rediscovered. The printer object which came back online. The new firmware version on the printer. Callback to notify the user of the firmware updating progress. The total number of bytes written to the printer. The total number of bytes to be written to the printer. Handler class is used to update status while performing a firmware download. Callback to notify the user of the firmware updating progress. This is called for every 4K bytes written out. Total number of bytes written to the printer. Total number of bytes to be written to the printer. Called when the firmware download completes. The printer will then begin flashing the firmware to memory followed by a reboot. This is the interface for updating firmware on a Link-OS™ printer. Update firmware on the printer using the default timeout of 10 minutes. If the firmware currently on the printer has the same version number as the firmware file, the firmware will not be sent to the printer. File path of firmware file. Callback for firmware updating status If the connection can not be opened, is closed prematurely, or connection cannot be established after firmware download is complete. If the printer language can not be determined. If an invalid firmware file is specified for the printer. If an error occurs while waiting for the printer to come back online. If the maximum timeout is reached prior to the printer coming back online with the new firmware. Firmware file not found. Update firmware on the printer using the specified timeout. If the firmware currently on the printer has the same version number as the firmware file, the firmware will not be sent to the printer. File path of firmware file. Timeout in milliseconds. The minimum allowed timeout is 10 minutes (600000ms) due to the need to reset the printer after flashing the firmware. If a timeout value less than the minimum is provided, the minimum will be used instead. Callback for firmware updating status. If the connection can not be opened, is closed prematurely, or connection cannot be established after firmware download is complete. If the printer language can not be determined. If an invalid firmware file is specified for the printer. If an error occurs while waiting for the printer to come back online. If the maximum timeout is reached prior to the printer coming back online with the new firmware. Firmware file not found. Update firmware on the printer, using the default timeout of 10 minutes, regardless of the firmware version currently on the printer. File path of firmware file. Callback for firmware updating status. If the connection can not be opened, is closed prematurely, or connection cannot be established after firmware download is complete. If the printer language can not be determined. If an invalid firmware file is specified for the printer. If an error occurs while waiting for the printer to come back online. If the maximum timeout is reached prior to the printer coming back online with the new firmware. Firmware file not found. Update firmware on the printer, using the specified timeout, regardless of the firmware version currently on the printer. File path of firmware file. Timeout in milliseconds. The minimum allowed timeout is 10 minutes (600000ms) due to the need to reset the printer after flashing the firmware. If a timeout value less than the minimum is provided, the minimum will be used instead. Callback for firmware updating status. If the connection can not be opened, is closed prematurely, or connection cannot be established after firmware download is complete. If the printer language can not be determined. If an invalid firmware file is specified for the printer. If an error occurs while waiting for the printer to come back online. If the maximum timeout is reached prior to the printer coming back online with the new firmware. Firmware file not found. A class used to convert TrueType® fonts for use on ZPL printers. Returns a Stream which provides the TTF header information as determined from the source stream. Stream containing TrueType® font data Location of the font file on the printer. Header information for the provided stream Returns a Stream which provides the TTE header information as determined from the source stream. Stream containing TrueType® font data Location of the font file on the printer. Header information for the provided stream Converts a native TrueType® font to a ZPL TTF format. Path to a TrueType® font. Destination stream for converted ZPL. Location to save the font file on the printer. If the source file is not found Converts a native TrueType® font to a ZPL TTF format. Stream containing the TrueType® font data. Destination stream for converted ZPL. Location to save the font file on the printer. Converts a native TrueType® font to a ZPL TTE format. Path to a TrueType® font. Destination stream for converted ZPL. Location to save the font file on the printer. If the source file is not found Converts a native TrueType® font to a ZPL TTE format. Stream containing the TrueType® font data. Destination stream for converted ZPL. Location to save the font file on the printer. Defines functions used for downloading fonts to Zebra printers. Adds a TrueType® font file to a profile and stores it at the specified path as a TTF. Path to a TrueType® font to be added to the profile. Location to save the font file in the profile. If an I/O error occurs. Adds a TrueType® font file to a profile and stores it at the specified path as a TrueType® extension (TTE). Path to a TrueType® font to be added to the profile. Location to save the font file in the profile. If an I/O error occurs. Adds a TrueType® font file to a profile and stores it at the specified path as a TTF. Input Stream containing the font data. Location to save the font file in the profile. If an I/O error occurs. Adds a TrueType® font to a profile and stores it at the specified path as a TrueType® extension (TTE). Input Stream containing the font data. Location to save the font file in the profile. If an I/O error occurs. Defines functions used for interacting with printer formats. Retrieves a format from the printer. On a LinkOS/ZPL printer, only .ZPL files are supported. On a CPCL printer, only .FMT and .LBL files are supported. The location of the file on the printer (e.g. "E:FORMAT.ZPL"). The contents of the format file. If there is an issue communicating with the printer (e.g. the connection is not open). Retrieves a format from the printer. On a LinkOS/ZPL printer, only .ZPL files are supported. On a CPCL printer, only .FMT and .LBL files are supported. The format. The location of the file on the printer (e.g. "E:FORMAT.ZPL"). If there is an issue communicating with the printer (e.g. the connection is not open). Prints a stored format on the printer, filling in the fields specified by the array. The values of any format variables will be encoded using the default encoding type. On a LinkOS/ZPL printer, only ZPL formats are supported.On a CPCL printer, only CPCL formats are supported.
See for more information about encoding types.
The name of the format on the printer, including the extension (e.g. "E:FORMAT.ZPL"). An array of strings representing the data to fill into the format. For LinkOS/ZPL printer formats, index 0 of the array corresponds to field number 2 (^FN2). For CPCL printer formats, the variables are passed in the order that they are found in the format. If an I/O error occurs.
Prints a stored format on the printer, filling in the fields specified by the array. The values of any format variables will be encoded using the provided encoding type.eg.UTF-8. On a LinkOS/ZPL printer, only ZPL formats are supported.On a CPCL printer, only CPCL formats are supported.
See for more information about encoding types.
The location of the file on the printer (e.g. "E:FORMAT.ZPL"). An array of strings representing the data to fill into the format. For LinkOS/ZPL printer formats, index 0 of the array corresponds to field number 2 (^FN2). For CPCL printer formats, the variables are passed in the order that they are found in the format. A character-encoding name (eg. UTF-8). If an I/O error occurs. If the encoding is not supported.
Prints a stored format on the printer, filling in the fields specified by the Dictionary. The values of any format variables will be encoded using the default encoding type. On a LinkOS/ZPL printer, only ZPL formats are supported.On a CPCL printer, only CPCL formats are supported.
See for more information about encoding types.
The location of the file on the printer (e.g. "E:FORMAT.ZPL"). A Dictionary which contains the key/value pairs for the stored format. For LinkOS/ZPL printer formats, the key number should correspond directly to the number of the field in the format.For CPCL printer formats, the values will be passed in ascending numerical order. If an I/O error occurs.
Prints a stored format on the printer, filling in the fields specified by the Dictionary. The values of any format variables will be encoded using the provided encoding type.eg.UTF-8. On a LinkOS/ZPL printer, only ZPL formats are supported.On a CPCL printer, only CPCL formats are supported.
See for more information about encoding types.
The location of the file on the printer (e.g. "E:FORMAT.ZPL"). A Dictionary which contains the key/value pairs for the stored format. For LinkOS/ZPL printer formats, the key number should correspond directly to the number of the field in the format.For CPCL printer formats, the values will be passed in ascending numerical order. A character-encoding name (e.g. UTF-8). If an I/O error occurs. If the encoding is not supported.
Returns a list of descriptors of the variable fields in this format. On a LinkOS/ZPL printer, only ZPL formats are supported. On a CPCL printer, only CPCL formats are supported. The contents of the recalled format. A list of field data descriptors. For a CPCL printer, the nth element of the list will contain the integer n and no name. For a LinkOS/ZPL printer, each element will contain an ^FN number and a variable name if present. If the format contains multiple ^FNs with the same number, only the last one will be in the result.
See for an example of how variable fields look.
Defines functions used for interacting with Link-OSâ„¢ printer formats. Prints a stored format on the printer, filling in the fields specified by the Dictionary. The values of any format variables will be encoded using the default encoding type.
See for more information about encoding types.
The location of the file on the printer (e.g. "E:FORMAT.ZPL"). A Dictionary which contains the key/value pairs for the stored format. For ZPL formats, the key number should correspond directly to the number of the field in the format. For CPCL formats, the values will be passed in ascending numerical order. If an I/O error occurs.
Prints a stored format on the printer, filling in the fields specified by the Dictionary. The values of any format variables will be encoded using the provided encoding type. eg.UTF-8.
See for more information about encoding types.
The location of the file on the printer (e.g. "E:FORMAT.ZPL"). A Dictionary which contains the key/value pairs for the stored format. For ZPL formats, the key number should correspond directly to the number of the field in the format. For CPCL formats, the values will be passed in ascending numerical order. A character-encoding name (e.g. UTF-8) If an I/O error occurs.
Prints a stored format on the printer, filling in the fields specified by the Dictionaries. The images stored in imgVars will first be dithered and then sent down the the printer as SDK01.GRF-SDK99.GRF. These GRF files will then be used when printing the format and overwritten each time the method is called with new images. The values of any format variables will be encoded using the default encoding type.
See for more information about encoding types.
The location of the file on the printer (e.g. "E:FORMAT.ZPL"). A Dictionary which contains the key/value pairs for the images to be used in the stored format. For ZPL formats, the key number should correspond directly to the number of the field in the format. For CPCL formats, the values will be passed in ascending numerical order. A Dictionary which contains the key/value pairs for the stored format. For ZPL formats, the key number should correspond directly to the number of the field in the format. For CPCL formats, the values will be passed in ascending numerical order. If an I/O error occurs.
Prints a stored format on the printer, filling in the fields specified by the Dictionaries. The images stored in imgVars will first be dithered and then sent down the the printer as SDK01.GRF-SDK99.GRF. These GRF files will then be used when printing the format and overwritten each time the method is called with new images. The values of any format variables will be encoded using the provided encoding type. eg. UTF-8.
See for more information about encoding types.
The location of the file on the printer (e.g. "E:FORMAT.ZPL"). A Dictionary which contains the key/value pairs for the images to be used in the stored format. For ZPL formats, the key number should correspond directly to the number of the field in the format. For CPCL formats, the values will be passed in ascending numerical order. A Dictionary which contains the key/value pairs for the stored format. For ZPL formats, the key number should correspond directly to the number of the field in the format. For CPCL formats, the values will be passed in ascending numerical order. A character-encoding name (e.g. UTF-8) If an I/O error occurs.
This is an utility class for printing images on a device. Prints an image from the connecting device file system to the connected device as a monochrome image. If the image resolution is large (e.g. 1024x768) this method may take a long time to execute or throw an . Image file to be printed. Horizontal starting position in dots. Vertical starting position in dots. If an I/O error occurs. When the file could not be found, opened, or is an unsupported graphic. Prints an image from the connecting device file system to the connected device as a monochrome image. If the image resolution is large (e.g. 1024x768) this method may take a long time to execute or throw an . Image file to be printed. Horizontal starting position in dots. Vertical starting position in dots. Desired width of the printed image. Passing a value less than 1 will preserve original width. Desired height of the printed image. Passing a value less than 1 will preserve original height. Boolean value indicating whether this image should be printed by itself (false), or is part of a format being written to the connection (true). If an I/O error occurs. When the file could not be found, opened, or is an unsupported graphic. Prints an image to the connected device as a monochrome image. If the image resolution is large (e.g. 1024x768) this method may take a long time to execute or throw an . The image to be printed. Horizontal starting position in dots. Vertical starting position in dots. Desired width of the printed image. Passing a value less than 1 will preserve original width. Desired height of the printed image. Passing a value less than 1 will preserve original height. Boolean value indicating whether this image should be printed by itself (false), or is part of a format being written to the connection (true). If an I/O error occurs. Stores the specified image to the connected printer as a monochrome image. The image will be stored on the printer at printerDriveAndFileName with the extension GRF. If a drive letter is not supplied, E will be used as the default (e.g. FILE becomes E:FILE.GRF). If an extension is supplied, it is ignored if it is not either BMP or PNG. If the extension is ignored, GRF will be used.
If the image resolution is large (e.g. 1024x768) this method may take a long time to execute or throw an .
Path on the printer where the image will be stored. The image to be stored on the printer. Desired width of the printed image, in dots. Passing -1 will preserve original width. Desired height of the printed image, in dots. Passing -1 will preserve original height. If there is an issue communicating with the printer (e.g. the connection is not open). If printerDriveAndFileName has an incorrect format.
Stores the specified image to the connected printer as a monochrome image. The image will be stored on the printer at printerDriveAndFileName with the extension GRF. If a drive letter is not supplied, E will be used as the default (e.g. FILE becomes E:FILE.GRF). If an extension is supplied, it is ignored if it is not either BMP or PNG. If the extension is ignored, GRF will be used.
If the image resolution is large (e.g. 1024x768) this method may take a long time to execute or throw an .
Path on the printer where the image will be stored. The image file to be stored on the printer. Desired width of the printed image, in dots. Passing -1 will preserve original width. Desired height of the printed image, in dots. Passing -1 will preserve original height. If there is an issue communicating with the printer (e.g. the connection is not open). If printerDriveAndFileName has an incorrect format. If the file could not be found, opened, or is an unsupported graphic.
For internal use of the Zebra Printer API only. Look through the result of a directory listing and extract the file name, drive letter, and extension for each file in the listing. The result of ^HZL, JSON file.drive_listing, or file.dir SGD. A list (element type PrinterFileProperties) of file information. If there is an error parsing the directory data returned by the printer. Look through the result of a ^HZL and extract the file name, drive letter, and extension for each file in the listing. The result of ^HZL. A list (element type PrinterFileProperties) of file information. If there is an error parsing the directory data returned by the printer. Utility methods for firmware files. Given the contents of a firmware file, extract the firmware version string. If the contents are not valid or if the version cannot be extracted, an empty string is returned. Input stream containing the contents of a firmware file. The version string, or an empty string. Extract the firmware version from a firmware file input stream and return false if that version matches the firmware on the connected printer. Match is done ignoring whether there is a Z (indication that ZBI is disabled) in either version string. Match is case insensitive. Input stream containing the contents of a firmware file. A connection to a printer True if the firmware versions don't match If there was an issue communicating with the printer. Extract the firmware version from a firmware file input stream, and return false if that version matches the versionFromPrinter. Match is done ignoring whether there is a Z (indication that ZBI is disabled) in either version string. Match is case insensitive. Input stream containing the contents of a firmware file. Version of firmware that is already on the printer. True if the firmware versions don't match Extract the firmware version from a firmware file input stream, and return false if that version matches the versionFromPrinter. Match is done ignoring whether there is a Z (indication that ZBI is disabled) in either version string. Match is case insensitive. Version of firmware that has already been extracted from the file. A connection to a printer True if the firmware versions don't match Get the firmware version from the connected printer. A connection to a printer. The firmware version of the printer. If there was an issue communicating with the printer." Compare two firmware version strings. If the only difference is that ZBI is enabled for one version but not the other, they are still considered to match.Matching is case insensitive. One version string. The other version string. True if the versions match. Search formatString, starting at index searchIx, for a ^FN, ^CC or ~CC command. Search is case insensitive. caret is the command prefix. {-1,unknownCommand} if none of the commands is found, otherwise the index where a command was found, and the type of command that was found. Search formatString, starting at index searchIx, for one of the commands in commandStrings. Search is case insensitive. caret is the command prefix. {-1,unknownCommand} if none of the commands is found, otherwise the index where a command was found, and the type of command that was found. Represent a ZPL command type. ^FN command ^CC and ~CC commands ^XG command ^DF command ^XA command ^XZ command everything else the id, as a lower case string Represent the index in a string where a ZPL command was found, and the type of the command at that spot. Gets the index Gets the command A container class used to hold Link-OS specific information Creates a container class to hold Link-OS information. the Link-OS major version number the Link-OS minor version number Creates a container class to hold Link-OS information. e.g. ("2.1", "3.0") Creates a container class to hold Link-OS information based on the supplied discoveredPrinter. A discovered printer. Gets the Link-OS major version number Gets the Link-OS minor version number Signals that a Link-OS™ operation has been attempted on a non-Link-OS™ printer. Constructs a NotALinkOsPrinterException with "This is not a Link-OS™ printer" as the detailed error message. Defines a printer alert. Applicable only to ZPL printers. Creates an instance of a PrinterAlert object. The printer condition that will trigger the alert. The destination that the alert will be sent to. If true, the alert will be triggered when the condition occurs. If true, the alert will be triggered when the condition is cleared. The destination address, if the destination requires one. The destination port, if the destination requires one. If true, the alert is quelled. Creates an instance of a PrinterAlert object, including a Set-Get-Do name. The printer condition that will trigger the alert. The destination that the alert will be sent to. If condition is SGD_SET, the name of the Set-Get-Do to be monitored. If true, the alert will be triggered when the condition occurs. If true, the alert will be triggered when the condition is cleared. The destination address, if the destination requires one. The destination port, if the destination requires one. If true, the alert is quelled. Creates an instance of a PrinterAlert object, including the printer alert text. The printer condition that will trigger the alert. The destination that the alert will be sent to. If true, the alert will be triggered when the condition occurs. If true, the alert will be triggered when the condition is cleared. The destination address, if the destination requires one. The destination port, if the destination requires one. If true, the alert is quelled. The text received from the printer. Creates an instance of a PrinterAlert object, including a Set-Get-Do name and the printer alert text. The printer condition that will trigger the alert. The destination that the alert will be sent to. If condition is SGD_SET, the name of the Set-Get-Do to be monitored. If true, the alert will be triggered when the condition occurs. If true, the alert will be triggered when the condition is cleared. The destination address, if the destination requires one. The destination port, if the destination requires one. If true, the alert is quelled. The text received from the printer. Return the string representation of the alert destination for Set-Get-Do. Return the AlertCondition of the alert. Gets the current alert condition. Return true if the alert is fired when 'set'. Return alert will be triggered on 'clear'. Return the string representation of the Set-Get-Do Name. Return the AlertDestination used by the alert. Return the destination where the alert should be sent, for example, an IP Address or an email address, depending on the value of getDestinationAsSGDString. Return the destination port number where the alert should be sent. Return the quelling state of the alert. Return the text received from the printer. Enumeration of the various printer control languages supported by Zebra Printers. Printer control language ZPL Printer control language CPCL Printer control language line_print mode. Converts the string name to the appropriate enum value. The name parameter accepts the value returned from the printer's 'device.langauges' SGD. The printer control language name (e.g. "zpl", "cpcl", or "line_print") The printer language If the printer language cannot be determined. The name of the printer language - (e.g. "ZPL" or "CPCL"). ZPL, CPCL, or LINE_PRINT Container for properties of a printer object. Gets/sets the drive prefix with the trailing colon. Gets/sets the file name. Gets/sets the file extension. Gets the full name of the file on the printer. Gets/sets the size of the file in bytes Gets/sets the 32-bit CRC value of the file. Interface definition for a callback to be invoked when a printer comes back online and has been rediscovered. Called when the printer is back online and has been rediscovered. The printer object which came back online. The new firmware version on the printer. A class used to obtain the status of a Zebra printer. The print mode. For CPCL printers this is always The length of the label in dots. For CPCL printers this is always 0. The number of formats currently in the receive buffer of the printer. For CPCL printers this is always 0. The number of labels remaining in the batch. For CPCL printers this is always 0. true if there is a partial format in progress. For CPCL printers this is always false. true if the head is cold. For CPCL printers this is always false true if the head is open. true if the head is too hot. For CPCL printers this is always false true if the paper is out. true if the ribbon is out. true if the receive buffer is full. For CPCL printers this is always false true if the printer is paused. For CPCL printers this is always false true if the printer reports back that it is ready to print Constructs a PrinterStatus instance that can be used to determine the status of a printer. This will only query the printer's status upon creation. If the status needs to be updated see Connection to the target printer If an I/O error occurs This class is used to acquire a human readable string of the current errors/warnings stored in a instance. Message to indicate the head is open. Message to indicate the head is too hot. Message to indicate the paper is out. Message to indicate the ribbon is out. Message to indicate the receive buffer is full. Message to indicate printer is paused. Message to indicate printerStatus is null. Used to acquire a human readable string of the current errors/warnings stored in printerStatus an instance of that will be used to acquire the human readable string of warnings/errors stored in printerStatus Used to acquire a human readable string of the current errors/warnings passed to this instance. A human readable string array of the current errors/warnings passed to this instance. Numerous utilities to simplify printer operations. Send contents of data directly to the device specified via connectionString using UTF-8 encoding. See ConnectionBuilder for the format of connectionString. The connection string. Data to send to the printer. If there is an error encoding data. If there is an error communicating with the printer. Send contents of data directly to the device specified via connectionString using encoding. See ConnectionBuilder for the format of connectionString. The connection string. Data to send to the printer. A character-encoding name (eg. UTF-8). If there is an error encoding data. If there is an error communicating with the printer. Send contents of data directly to the device specified via connectionString using UTF-8 encoding. See ConnectionBuilder for the format of connectionString. The connection string. Data to send to the printer. If there is an error encoding data. If there is an error communicating with the printer. Send contents of data directly to the device specified via connectionString using encoding. See ConnectionBuilder for the format of connectionString. The connection string. Data to send to the printer. A character-encoding name (eg. UTF-8). If there is an error encoding data. If there is an error communicating with the printer. Send contents of data directly to the device specified via connectionString using encoding. See ConnectionBuilder for the format of connectionString. The connection string. Data to send to the printer. A character-encoding name (eg. UTF-8). If there is an error encoding data. If there is an error communicating with the printer. Retrieves a list of currently open tcp ports on the printer. See ConnectionBuilder for the format of connectionString. The connection string. The port status. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Retrieves status of the printer odometer which includes the total print length, head clean counter, label dot length, head new, latch open counter, and both user resettable counters. See ConnectionBuilder for the format of connectionString. The connection string. The odometer status. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Retrieves status of the printer which includes any error messages currently set along with the number of labels remaining in queue, number of labels remaining in batch, and whether or not a label is currently being processed. See ConnectionBuilder for the format of connectionString. The connection string. The printer status. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Retrieves the quick status of the printer. See ConnectionBuilder for the format of connectionString. The connection string. Highest level error or "Ready to Print". If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Set the RTC time and date on the printer. See ConnectionBuilder for the format of connectionString. The connection string. Format MM-dd-yyyy HH:mm:ss. If there is an error connecting to the device. If the printer language could not be determined. If the format of dateTime is invalid. This feature is only available on Link-OS™ printers. Deletes file(s) from the printer and reports what files were actually removed. The filePath may also contain wildcards.
See ConnectionBuilder for the format of connectionString.
The connection string. (May be null) The location of the file on the printer. Wildcards are also accepted. (e.g. "E:FORMAT.ZPL", "E:*.*") An array of the files which were deleted. If there is an error connecting to the device. If the printer language could not be determined. If the format of dateTime is invalid. This feature is only available on Link-OS™ printers.
Deletes file(s) from the printer and reports what files were actually removed. The filePath may also contain wildcards.
See ConnectionBuilder for the format of connectionString.
The connection string. (May be null) The location of the file on the printer. Wildcards are also accepted. (e.g. "E:FORMAT.ZPL", "E:*.*") If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers.
Retrieves the names of the files which are stored on the device. See ConnectionBuilder for the format of connectionString. The connection string. (May be null) Filter for returned files. (e.g. "E:*.ZPL", "*:*.*", "R:MYFILE.*") List of file names on the printer. If there is an error connecting to the device. If the printer language could not be determined. If there is an error parsing the directory data returned by the device. This feature is only available on Link-OS™ printers. Retrieves a file from the printer's file system and returns the contents of that file as a byte[]. Will retrieve the following file extensions: .FNT, .ZPL, .GRF, .DAT, .BAS, .STO, .PNG, .LBL, .TTF, .PCX, .BMP, .IMG, .TTE, .WML, .CSV, .HTM, .BAE, .TXT.
See ConnectionBuilder for the format of connectionString.
The connection string. File to retrieve. (e.g. "R:MYFILE.PNG") File contents. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. If the filename is invalid or does not exist.
Retrieves a file from the printer's file system and returns the contents of that file as a byte[]. Will retrieve the following file extensions: .FNT, .ZPL, .GRF, .DAT, .BAS, .STO, .PNG, .LBL, .TTF, .PCX, .BMP, .IMG, .TTE, .WML, .CSV, .HTM, .BAE, .TXT.
See ConnectionBuilder for the format of connectionString.
Stream to receive file contents. The connection string. The file to retrieve. (e.g. "R:MYFILE.PNG") If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. If the filename is invalid or does not exist.
Retrieves a file from the printer's file system and returns the contents of that file as a byte[]. Will retrieve the following file extensions: .FNT, .ZPL, .GRF, .DAT, .BAS, .STO, .PNG, .LBL, .TTF, .PCX, .BMP, .IMG, .TTE, .WML, .CSV, .HTM, .BAE, .TXT.
See ConnectionBuilder for the format of connectionString.
The connection string. File to retrieve. (e.g. "R:MYFILE.PNG") Password to use for ftp, if null a default password will be used. File contents. If there is an error connecting to the device, or the ftp password is not correct. If the printer language could not be determined. This feature is only available on Link-OS™ printers. If the filename is invalid or does not exist.
Retrieves a file from the printer's file system and returns the contents of that file as a byte[]. Will retrieve the following file extensions: .FNT, .ZPL, .GRF, .DAT, .BAS, .STO, .PNG, .LBL, .TTF, .PCX, .BMP, .IMG, .TTE, .WML, .CSV, .HTM, .BAE, .TXT.
See ConnectionBuilder for the format of connectionString.
Stream to receive the file contents. The connection string. File to retrieve. (e.g. "R:MYFILE.PNG") Password to use for ftp, if null a default password will be used. If there is an error connecting to the device, or the ftp password is not correct. If the printer language could not be determined. This feature is only available on Link-OS™ printers. If the filename is invalid or does not exist.
Update the printer firmware. Download Firmware Here
See ConnectionBuilder for the format of connection
The connection string. File path of firmware file. Timeout in milliseconds. The minimum allowed timeout is 10 minutes (600000ms) due to the need to reset the printer after flashing the firmware. If a timeout value less than the minimum is provided, the minimum will be used instead. If the connection can not be opened or is closed prematurely. If the printer language could not be determined. If an invalid firmware file is specified for the printer. If an error occurs while waiting for the printer to come back online. If the maximum timeout is reached prior to the printer coming back online with the new firmware. If the firmware file cannot be found or cannot be opened.
Encodes supplied image in either ZPL or CPCL after dithering and resizing. The printer file path you wish to store the image to. ZebraImage to be dithered and resized. Stream to store encoded image data. If the file type is not supported or an invalid image is supplied. Could not read/write to file. Encodes supplied image in either ZPL or CPCL after dithering and resizing. The printer file path you wish to store the image to. ZebraImage to be dithered and resized. Width of the resulting image. If 0 the image is not resized. Height of the resulting image. If 0 the image is not resized. Stream to store converted image data encoded with the printers native language. If the file type is not supported or an invalid image is supplied. Could not read/write to file. Create a profile of your printer's settings, alerts, and files for cloning to other printers. A profile contains setting values which can be used to clone another printer to match the original configuration. Some settings (such as I.P.address) which could conflict with the original printer will not be contained in the profile
See ConnectionBuilder for the format of connectionString.
The connection string. The location of where to store the profile. If there is an error connecting to the device. If the printer language could not be determined. If there is an issue creating the profile. Could not interpret the response from the printer. This feature is only available on Link-OS™ printers.
Create a backup of your printer's settings, alerts, and files. A backup contains a snapshot of all pertinent settings to fully restore your printer.
See ConnectionBuilder for the format of connectionString.
The connection string. The location of where to store the profile. The extension must be .zprofile; if it is not, the method will change it to.zprofile for you. If there is an error connecting to the device. If the printer language could not be determined. If there is an issue creating the profile. Could not interpret the response from the printer. This feature is only available on Link-OS™ printers.
Takes settings, alerts, and files from a profile, and applies them to a printer. Before doing so, it deletes the files described by filesToDelete from the printer.
See ConnectionBuilder for the format of connectionString.
The connection string. Path to the profile to load. (e.g. /home/user/profile.zprofile) An enum describing which files to delete. If there is an error connecting to the device. If the printer language could not be determined. If there is an issue creating the profile. This feature is only available on Link-OS™ printers.
Takes settings, alerts, and files from a profile, and applies them to a printer. Before doing so, it deletes the files described by filesToDelete from the printer.
See ConnectionBuilder for the format of connectionString.
The connection string. Path to the profile to load. (e.g. /home/user/profile.zprofile) An enum describing which files to delete. Increases the amount of detail presented to the user. If there is an error connecting to the device. If the printer language could not be determined. If there is an issue creating the profile. This feature is only available on Link-OS™ printers.
Takes settings, alerts, and files from a backup, and applies them to a printer. This method will also delete all files on your printer before applying the backup.
See ConnectionBuilder for the format of connectionString.
The connection string. Path to the profile to load. (e.g. /home/user/profile.zprofile) If there is an error connecting to the device. If the printer language could not be determined. If there is an issue creating the profile. This feature is only available on Link-OS™ printers.
Takes settings, alerts, and files from a backup, and applies them to a printer. This method will also delete all files on your printer before applying the backup.
See ConnectionBuilder for the format of connectionString.
The connection string. Path to the profile to load. (e.g. /home/user/profile.zprofile) Increases the amount of detail presented to the user. If there is an error connecting to the device. If the printer language could not be determined. If there is an issue creating the profile. This feature is only available on Link-OS™ printers.
Stores the file on the printer at the specified location and name using any required file wrappers. See ConnectionBuilder for the format of connectionString. The connection string. The path of the file to store. The path on the printer. If there is an error connecting to the device. If the printer language could not be determined. If there is an issue storing the file. This feature is only available on Link-OS™ printers. If there is an issue storing the file. Resets the specified printer. See ConnectionBuilder for the format of connectionString. The connection string. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Resets the network of the specified printer. Usually performed to enable changed network settings to take effect.
See ConnectionBuilder for the format of connectionString.
The connection string. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers.
Restores the printer's settings to their factory default configuration. See ConnectionBuilder for the format of connectionString. The connection string. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Restores the printer's network settings to their factory default configuration. Use caution when issuing this command because you may lose connectivity with your printer if your network requires non-default settings.
See ConnectionBuilder for the format of connectionString.
The connection string. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers.
Causes the specified printer to print a configuration label. See ConnectionBuilder for the format of connectionString. The connection string. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Causes the specified printer to print a network configuration label. See ConnectionBuilder for the format of connectionString. The connection string. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Causes the specified printer to print a directory listing of all the files saved on the printer. See ConnectionBuilder for the format of connectionString. The connection string. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. Retrieve all settings and their attributes from the specified printer. See ConnectionBuilder for the format of connectionString. The connection string. A map of setting names versus Setting objects from the printer specified in the connection string. If there is an error connecting to the device. If the printer language could not be determined. This feature is only available on Link-OS™ printers. If the settings could not be retrieved. Returns a new instance of PrinterStatus that can be used to determine the status of a printer. Each invocation of this method will result in a query of the connected printer. If more than one status value is to be read, it is recommended that a copy of PrinterStatus is stored locally.

This method must be invoked again to retrieve the most up-to-date status of the printer. The object will only query the printer upon creation.
Some Mobile printers (including the MZ series printers) will not communicate if the printer is not ready to print. On these printers, status information is not available when, for example, the printer is out of paper. This method will throw a if it is called when the printer cannot communicate.
Connection to the printer. Printer control language to be used. A new instance of PrinterStatus. If there is an issue communicating with the printer (e.g.\u00a0the connection is not open.)
Defines functions used for creating and applying profiles to a Zebra printer. Create a profile of your printer's settings, alerts, and files for cloning to other printers. A profile contains setting values which can be used to clone another printer to match the original configuration. Some settings (such as I.P.address) which could conflict with the original printer will not be contained in the profile. Path on your local machine where you want to save the profile. (e.g. /home/user/profile.zprofile). The extension must be.zprofile; if it is not, the method will change it to .zprofile for you. If the output file could not be created. Could not interpret the response from the printer. If there is an error communicating with the printer. for loading a profile to another printer Create a profile of your printer's settings, alerts, and files for cloning to other printers. A profile contains setting values which can be used to clone another printer to match the original configuration. Some settings (such as I.P.address) which could conflict with the original printer will not be contained in the profile. The destination stream where you want to write the profile. If the output file could not be created. Could not interpret the response from the printer. If there is an error communicating with the printer. Save a backup of your printer's settings, alerts, and files for later restoration. A backup contains a snapshot of all pertinent settings to fully restore your printer. Path on your local machine where you want to save the backup. (e.g. /home/user/profile.zprofile). The extension must be.zprofile; if it is not, the method will change it to .zprofile for you. If the output file could not be created. Could not interpret the response from the printer. If there is an error communicating with the printer. for loading the backup file to another printer Takes settings, alerts, and files from a profile, and applies them to a printer. Path to the profile to load. (e.g. /home/user/profile.zprofile) If the profile does not exist or could not be read. If there is an error communicating with the printer. Takes settings, alerts, and files from a profile, and applies them to a printer. Before doing so, it deletes the files described by filesToDelete from the printer. Path to the profile to load. (e.g. /home/user/profile.zprofile) An enum describing which files to delete. Increases the amount of detail presented to the user when loading firmware from the profile If the profile does not exist or could not be read. If there is an error communicating with the printer. Takes settings, alerts, and files from a backup, and applies them to a printer. This method will also delete all files on your printer before applying the backup. Path to the profile to load. (e.g. /home/user/profile.zprofile) If the profile does not exist or could not be read. If there is an error communicating with the printer. Takes settings, alerts, and files from a backup, and applies them to a printer. his method will also delete all files on your printer before applying the backup. Path to the profile to load. (e.g. /home/user/profile.zprofile) Increases the amount of detail presented to the user when loading firmware from the profile If the profile does not exist or could not be read. If there is an error communicating with the printer. A utility class used to wrap with a map and send settings commands to a connection. Settings commands are accepted by Link-OS printers, version 1.0 and higher. Sends the settingsToSet to the destinationDevice and then returns the updated setting values. Due to the setting verification and validation, additional time and data traffic will be needed for each SettingsSetter Process call. It is recommended to bundle all changing settings into one map and one method call to reduce this overhead. The connection string. The settings map to send to the printer. The settings' values after the map has been sent to the printer. If there is an error communicating with the printer. If the setting could not be set or retrieved. A utility class used to wrap and send SGD commands to a connection. Constructs an SGD SET command and sends it to the printer. This method will not wait for a response from the printer.If the SGD SET command returns a response, the caller is responsible for reading the data off of the connection.If a response is expected, consider using the analogous command. the SGD setting the setting's value the connection to send the command to if an I/O error occurs Constructs an SGD SET command and sends it to the printer. This method will not wait for a response from the printer. If the SGD SET command returns a response, the caller is responsible for reading the data off of the connection. If a response is expected, consider using the analogous command. if an I/O error occurs Constructs an SGD GET command and sends it to the printer. This method waits for a maximum of milliseconds for any data to be received. Once some data has been received it waits until no more data is available within milliseconds. This method returns the SGD value associated with setting without the surrounding quotes. the SGD setting the connection to send the command to the setting's value if an I/O error occurs Constructs an SGD GET command and sends it to the printer. This method waits for a maximum of maxTimeoutForRead milliseconds for any data to be received.Once some data has been received it waits until no more data is available within timeToWaitForMoreData milliseconds. This method returns the SGD value associated with setting without the surrounding quotes. the SGD setting the connection to send the command to the maximum time, in milliseconds, to wait for a response from the printer the maximum time, in milliseconds, to wait in-between reads after the initial data is received the setting's value if an I/O error occurs Constructs an SGD DO command and sends it to the printer. This method waits for a maximum of milliseconds for any data to be received. Once some data has been received it waits until no more data is available within milliseconds. This method returns the SGD value associated with setting without the surrounding quotes. the SGD setting the setting's value the connection to send the command to The response from the SGD DO command if an I/O error occurs Constructs an SGD DO command and sends it to the printer. This method waits for a maximum of milliseconds for any data to be received. Once some data has been received it waits until no more data is available within milliseconds. This method write the SGD value associated with setting, without the surrounding quotes, to responseData. output stream to receive the response. the SGD setting the setting's value the connection to send the command to if an I/O error occurs Constructs an SGD DO command and sends it to the printer. This method waits for a maximum of milliseconds for any data to be received. Once some data has been received it waits until no more data is available within milliseconds. This method returns the SGD value associated with setting without the surrounding quotes. the SGD setting the setting's value the connection to send the command to the maximum time, in milliseconds, to wait for a response from the printer the maximum time, in milliseconds, to wait in-between reads after the initial data is received The response from the SGD DO command if an I/O error occurs Constructs an SGD DO command and sends it to the printer. This method waits for a maximum of maxTimeoutForRead milliseconds for any data to be received. Once some data has been received it waits until no more data is available within timeToWaitForMoreData milliseconds. This method write the SGD value associated with setting without the surrounding quotes. output stream to receive the response. the SGD setting the setting's value the connection to send the command to the maximum time, in milliseconds, to wait for a response from the printer the maximum time, in milliseconds, to wait in-between reads after the initial data is received if an I/O error occurs A utility class used to remove quotes from an output stream Constructs a QuoteRemovingOutputStream Signals that an error has occurred when attempting to communicate with SNMP. Constructs an SnmpException with message as the detailed error message. The error message. An instance of an SNMP only Zebra printer. The printer does not make a raw port connection. Creates an instance of a Zebra printer which is limited to only SNMP operations. The SNMP get and set community names default to "public". If you wish to use other community names, use . The IP Address or DNS Hostname. If there was an exception communicating over SNMP. Creates an instance of a Zebra printer, with the given community names, which is limited to only SNMP operations. The IP Address or DNS Hostname. SNMP get community name. SNMP set community name. If there was an exception communicating over SNMP. Gets the value of the specified oid. Object identifier. The value of the OID. If there was an exception communicating over SNMP. Sets the value of the specified oid to valueToSet. Object identifier. The value to set the OID to. If there was an exception communicating over SNMP Sets the value of the specified oid to valueToSet. Object identifier. The value to set the OID to. If there was an exception communicating over SNMP Gets the SNMP get community name. Gets the SNMP set community name. A container class which holds information about various printer drives. Creates an empty StorageInfo container The drive's alphabetical identifier. The type of drive. (e.g. flash, RAM) The number of bytes remaining on the drive. Bool defining whether or not files persist across printer reboots. Class for describing the status of ports open on a Zebra printer. Creates a container which describes the status of a specific port on a Zebra printer. The printer's port. The name of the protocol used by the port. Remote IP connected to the port. Remote port number. Port status. The port number open on the printer. The name of the protocol associated with that port, for example, HTTP for 80, FTP for 21. The remote IP connected to the printer's port, will be 0.0.0.0 if not connected. The port number of the remote connected to the printer, will be 0 if no connection. The status of the printer's port, such as {@code LISTEN}, {@code ESTABLISHED}. String description of the port status, prints as "PORT(NAME) REMOTE-IP:REMOTE-PORT STATUS" Description of the port status. This is a utility class for performing printer actions. (Restore defaults, calibrate, etc.) Sends the appropriate calibrate command to the printer. If an I/O error occurs. Sends the appropriate restore defaults command to the printer. If an I/O error occurs. Sends the appropriate print configuration command to the printer. If an I/O error occurs. Converts the specified command to bytes using the default charset and sends the bytes to the printer. The command to send to the printer. If an I/O error occurs. Converts the specified command to bytes using the specified charset "encoding" and sends the bytes to the printer. The command to send to the printer. A character-encoding name (eg. UTF-8). If an I/O error occurs. Sends the appropriate reset command to the printer. You should call after this method, as resetting the printer will terminate the connection. If an I/O error occurs. Utility class for performing Link-OS™ printer actions. Send the restore network defaults command to the printer. If there is an error communicating with the printer. Send the print network configuration command to the printer. If there is an error communicating with the printer. Send the print directory label command to the printer. If there is an error communicating with the printer. Sends the network reset command to the printer. If there is an error communicating with the printer. Set the RTC time and date on the printer. Accepted dateTime values include date (e.g. "MM-dd-yyyy"), time(e.g. " HH:mm:ss"), or both(e.g. " MM-dd-yyyy HH:mm:ss"). Date and or time in the proper format (MM-dd-yyyy, HH:mm:ss, or MM-dd-yyyy HH:mm:ss). If there is an error communicating with the printer. If the format of dateTime is invalid. A class used to print template formats using XML as input. Print template formats using XML as input data. The source stream containing the XML. The template to merge the XML to. The quantity, if not specified in the data. Optional stream to send data to. If an I/O error occurs." If there is an issue with the arguments. Print template formats using XML as input data to destinationDevice. The connection string. The source stream containing the XML. The template to merge the XML to. The quantity, if not specified in the data. Optional stream to send data to.
See ConnectionBuilder for the format of destinationDevice. If an I/O error occurs." If it was not possible to connect to the device. If there is an issue with the arguments.
Print template formats using XML as input data with optional running commentary to standard out. The source stream containing the XML. The template to merge the XML to. The quantity, if not specified in the data. Optional stream to send data to. If true, print a running commentary to standard out. If an I/O error occurs." If there is an issue with the arguments. Print template formats using XML as input data to a device with connection string destinationDevice. The connection string. The source stream containing the XML. The template to merge the XML to. The quantity, if not specified in the data. Optional stream to send data to. If true, print a running commentary to standard out.
See ConnectionBuilder for the format of destinationDevice. If an I/O error occurs." If it was not possible to connect to the device. If there is an issue with the arguments.
An interface used to obtain various properties of a Zebra printer. Returns the printer control language (e.g. ZPL or CPCL) of the printer. Returns a new instance of PrinterStatus that can be used to determine the status of a printer. Each invocation of this method will result in a query of the connected printer. If more than one status value is to be read, it is recommended that a copy of PrinterStatus is stored locally.

Note: This method must be invoked again to retrieve the most up-to-date status of the printer. The object will only query the printer upon creation.
Note: Some Mobile printers (including the MZ series printers) will not communicate if the printer is not ready to print.On these printers, status information is not available when, for example, the printer is out of paper. This method will throw a if it is called when the printer cannot communicate.
A new instance of PrinterStatus. If there is an issue communicating with the printer (e.g. the connection is not open.)
Returns the printer's connection. Changes the printer's connection. The new connection to be used for communication with the printer. A factory used to acquire an instance of a ZebraPrinter. Factory method to create the correct concrete class based on the printer's control language. If the Set-Get-Do value, appl.name, starts with one of the following, the printer is determined to be a CPCL printer. Otherwise it is considered to be a ZPL printer
SH H8 C
An open connection to a printer An instance of a If an I/O error occurs If the printer language cannot be determined
Factory method to create the correct concrete class based on the printer's control language. If the Set-Get-Do value, appl.name, starts with one of the cpclFwVersionPrefixes, the printer is determined to be a CPCL printer.Otherwise it is considered to be a ZPL printer. An array of possible CPCL version number prefixes An open connection to a printer An instance of a If an I/O error occurs If the printer language cannot be determined Factory method to create the correct concrete class based on the printer's control language. The language of the printer instance to be created An open connection to a printer An instance of a If an I/O error occurs Create a wrapper around a Zebra printer that provides access to Link-OS™ features. This method will query the printer for its Link-OS™ version and its control language. An instance of a A Link-OS™ printer If an I/O error occurs Create a wrapper around a Zebra printer that provides access to Link-OS™ features. This method will query the printer for its control language, but will not query the printer for Link-OS information. An instance of a Link-OS Information A Link-OS™ printer If an I/O error occurs Create a wrapper around a Zebra printer that provides access to Link-OS™ features. This method will query the printer for its Link-OS information, but will not query the printer for its control language. An instance of a The printer control language A Link-OS™ printer If an I/O error occurs Create a wrapper around a Zebra printer that provides access to Link-OS™ features. This method will not query the printer for any information but will use the supplied info and language. An instance of a Link-OS Information The printer control language A Link-OS™ printer If an I/O error occurs Create Link-OS™ Zebra printer from a connection that provides access to Link-OS™ features. This method will query the printer for its Link-OS™ version and its control language. An open connection to a Link-OS™ printer A Link-OS™ printer If an I/O error occurs Create Link-OS™ Zebra printer from a connection that provides access to Link-OS™ features. This method will query the printer for its control language, but will not query the printer for Link-OS information. An open connection to a Link-OS™ printer Link-OS Information A Link-OS™ printer If an I/O error occurs Create Link-OS™ Zebra printer from a connection that provides access to Link-OS™ features. This method will query the printer for its Link-OS information, but will not query the printer for its control language. An open connection to a Link-OS™ printer The printer control language A Link-OS™ printer If an I/O error occurs Create Link-OS™ Zebra printer from a connection that provides access to Link-OS™ features. This method will not query the printer for any information but will use the supplied info and language. An open connection to a Link-OS™ printer Link-OS Information The printer control language A Link-OS™ printer If an I/O error occurs Signals that an error has occurred when determining the printer language. Constructs a new instance of the ZebraPrinterLanguageUnknownException class with a specified error message. The error message that explains the reason for the exception. Constructs a new instance of the ZebraPrinterLanguageUnknownException class with "Unknown printer language" as the detailed error message. Constructs a new instance of the ZebraPrinterLanguageUnknownException class with a specified error message and a reference to the inner exception. The error message that explains the reason for the exception. The exception that is the cause of the current exception. This interface defines increased capabilities of a Zebra Link-OS™ printer. Link-OS™ printers support many features not supported by non-Link-OS™ Zebra printers. Retrieve the TCP port status of the printer and returns a list of TcpPortStatus describing the open ports on the printer. The open connection from the SDK will be listed in the return value. This method will throw a if it is unable to communicate with the printer.

Note: Tabletop printers support more than one established connection on the raw port at a time, so the same port may be listed more than once.
List of open ports on the ZebraPrinter. Note: The open connection from the SDK will be listed. If there is an issue communicating with the printer (e.g. the connection is not open.)
Gets/sets the printer's SNMP get community name. Returns specific Link-OS™ information. Enumeration of the various print modes supported by Zebra Printers. Rewind print mode Peel-off print mode Tear-off print mode (this also implies Linerless Tear print mode) Cutter print mode Applicator print mode Delayed cut print mode Linerless peel print mode Linerless rewind print mode Partial cutter print mode RFID print mode Kiosk print mode Unknown print mode Returns the print mode. String representation of the print mode (e.g. "Rewind"). Enumeration of the various printer alert conditions which can be set on Zebra Printers. Alert condition 'None' Alert condition 'Paper Out' Alert condition 'Ribbon Out' Alert condition 'Head Too Hot' Alert condition 'Head Cold' Alert condition 'Head Open' Alert condition 'Power Supply Too Hot' Alert condition 'Ribbon In' Alert condition 'Rewind' Alert condition 'Cutter Jammed' Alert condition 'Printer Paused' Alert condition 'PQ Job Completed' Alert condition 'Label Ready' Alert condition 'Head Element Bad' Alert condition 'Basic Runtime' Alert condition 'Basic Forced' Alert condition 'Power On' Alert condition 'Clean Printhead' Alert condition 'Media Low' Alert condition 'Ribbon Low' Alert condition 'Replace Head' Alert condition 'Battery Low' Alert condition 'RFID Error' Alert condition 'All Messages' Alert condition 'Cold Start' Alert condition 'SGD Set' Alert condition 'Motor Overtemp' Alert condition 'Printhead Shutdown' Alert condition 'Shutting Down' Alert condition 'Restarting' Alert condition 'No Reader Present' Alert condition 'Thermistor Fault' Alert condition 'Invalid Head' Alert condition 'Country Code Error' Alert condition 'MCR Result Ready' Alert condition 'PMCU Download' Alert condition 'Media Cartridge' Alert condition 'Media Cartridge Load Failure' Alert condition 'Media Cartridge Eject Failure' Alert condition 'Media Cartridge Forced Eject' Alert condition 'Cleaning Mode' Creates an AlertCondition based on the condition. If the condition is invalid a ZebraIllegalArgumentException will be thrown. Name of one of the values of AlertCondition. Based on the string condition If condition is not a valid alert condition. Creates an AlertCondition based on the conditionName. If the conditionName is invalid a ZebraIllegalArgumentException will be thrown. Name of one of the conditions in AlertCondition. Based on the string conditionName If conditionName is not a valid alert condition. Returns the alert condition. String representation of the alert condition (e.g. "PAPER OUT"). Gets/sets the alert condition name Enumeration of the various alert destinations which can be set on Zebra Printers. Alert Destination 'Serial' Alert Destination 'Parallel' Alert Destination 'E-Mail' Alert Destination 'TCP' Alert Destination 'UDP' Alert Destination 'SNMP' Alert Destination 'USB' Alert Destination 'HTTP-POST' Alert Destination 'Bluetooth' Alert Destination 'SDK' Returns the alert destination as a string. Creates an AlertDestination based on the destination. If the destination is invalid a ZebraIllegalArgumentException will be thrown. Name of one of the values of AlertDestination. Based on the destination If destination is not a valid alert destination. Creates an AlertDestination based on the destinationName. If the destinationName is invalid a ZebraIllegalArgumentException will be thrown. Name of one of the destinations in AlertDestination. Based on the destinationName If destinationName is not a valid alert destination. Returns the alert destination. String representation of the alert destination (e.g. "TCP"). Gets/Sets the alert destination name. Decide whether to use the status channel or the print channel to get settings from the printer. For a multichannel connection, prefer the status channel. A connection to the printer. The appropriate connection. true if value is within the setting's range /// A class that represents an internal device setting. Gets or sets the setting's value. Gets or sets a string describing the data type of the setting. Gets or sets a string that describes the acceptable range of values for this setting. Gets or sets if this setting can be applied when loading a profile Gets or sets if this setting can be applied when loading a backup Gets or sets a string that describes the access permissions for the setting. RW is returned for settings that have read and write permissions. R is returned for settings that are read-only W is returned for settings that are write-only Returns true if the setting does not have write access. Returns true if the setting does not have read access. Returns true if value is valid for the given setting. Setting value. true if value is within the setting's range Retruns a human readable string of the setting. Setting [settingData=value=Value type=Type range=Range]. Signals that an error occurred retrieving a setting Constructs a SettingsException with Setting not found as the detailed error message. Constructs a SettingsException with message as the detailed error message. The error message. Constructs a SettingsException with the message as the detailed error message and cause as the source of the exception. The error message. The cause of the exception Interface that provides access to device related settings. Retrieve all of the setting identifiers for a device. These are the IDs that may be used as keys for retrieving and updating settings for a device. Set of identifiers available for a device. If there is an error communicating with the printer. If the settings could not be loaded Retrieves the device's setting value for a setting id. The setting id. The setting's value. If there is an error communicating with the printer. If the setting could not be retrieved. Retrieves the device's setting values for a list of setting IDs. List of setting IDs. The settings' values. If there is an error communicating with the printer. If the settings could not be retrieved. Retrieve all settings and their attributes. Map of setting IDs and setting attributes contained in the profile If there is an error communicating with the printer. If the settings could not be retrieved Retrieves all of the device's setting values. Values of all the settings provided by the device. If there is an error communicating with the printer. If the settings could not be loaded Sets the setting to the given value. The setting id. The setting's value If there is an error communicating with the printer. If the setting is read only, does not exist, or if the setting could not be set Set more than one setting. Map a setting ID to the new value for the setting. If there is an error communicating with the printer. If the settings cannot be sent to the device. Retrieves the allowable range for a setting. The setting id. The setting's range as a string If there is an error communicating with the printer. If the setting does not exist Returns true if value is valid for the given setting. The setting id. The setting's value True if value is valid for the given setting. If there is an error communicating with the printer. If the setting does not exist Returns true if the setting is read only. The setting id True if the setting is read only If there is an error communicating with the printer. If the setting does not exist Returns true if the setting is write only. The setting id True if the setting is write only If there is an error communicating with the printer. If the setting does not exist Returns the data type of the setting. The setting id The data type of the setting (e.g. string, bool, enum, etc.) If there is an error communicating with the printer. If the setting does not exist Change or retrieve printer settings. Due to the setting verification and validation, additional time and data traffic will be needed for each ProcessSettingsViaMap method call. It is recommended to bundle all settings into one map and one method call to reduce this overhead. The settings to change or retrieve Results of the setting commands If there is an error communicating with the printer. If a setting is malformed, or one or more settings could not be set. Methods to use the LinkOS 3.2 JSON syntax to get the ranges for a list of SDGs, without the need to use an allconfig. Use the LinkOS 3.2 JSON syntax to get the ranges for a list of SDGs, without the need to use an allconfig. A list of SGD names. A connection to a LinkOS printer. the current printer control language LinkOS version A map from setting name to a string representing the range. If the printer is not LinkOS 3.2 or higher. If the connection fails. If there is an error parsing the JSON response from the printer. Parse the JSON response from the JSON get range command. Assumes that the only field requested in the JSON get command was the "range" field. Response from a LinkOS 3.2 or greater printer. Map from setting names to range strings. Methods to use the LinkOS 3.2 JSON syntax to get the values for a list of SDGs, without the need to use an allconfig. Get the values for a list of settings from a printer. Use either JSON or SGD get commands to request the values from the printer, depending on the connection type and the printer language. The default timeout values from the connection will be used when communicating with the printer. If printerConnection is a MultichannelConnection, prefer the status channel. The settings to be retrieved. A connection to the printer. The printer control language for the connection. The LinkOS version information. A map from setting name to value. If it was not possible to communicate with the printer. If it was not possible to parse the response from the printer. Set each of the settings in settingValues on a printer. Use either JSON or SGD set commands to set the values on the printer, depending on the connection type and the printer language.The default timeout values from the connection will be used when communicating with the printer.If printerConnection is a MultichannelConnection, prefer the status channel. Map from setting names to desired values. A connection to the printer. The printer control language for the connection. The LinkOS version information. A map from setting name to value. If it was not possible to communicate with the printer. Get the values for a list of settings from a LinkOS printer. Use JSON to request the values from the printer. The default timeout values from the connection will be used when communicating with the printer. The settings to be retrieved. A connection to the printer. A map from setting name to value. If it was not possible to communicate with the printer. If it was not possible to parse the response from the printer. Get the values for a list of settings from a printer. Use SGD get commands to request the values from the printer.The default timeout values from the connection will be used when communicating with the printer. The settings to be retrieved. A connection to the printer. A map from setting name to value. If it was not possible to communicate with the printer. Decide whether JSON can be used to get settings from the printer, or whether SGD setvar/getvar must be used. A connection to the printer. The printer control language for the connection. The LinkOS version information. true if JSON can be used, false if SGD setvar/getvar must be used. Set each of the settings in settingValues on a LinkOS printer. Use JSON to set the values on the printer. The default timeout values from the connection will be used when communicating with the printer.Return a map of the values from the printer after the set operation was performed. Map from setting names to desired values. A connection to the printer. A map from setting name to value. If it was not possible to communicate with the printer. If it was not possible to parse the response from the printer. Set each of the settings in settingValues on a printer. Use SGD set commands to set the values on the printer. The default timeout values from the connection will be used when communicating with the printer.Return a map of the values from the printer after the set operation was performed. Map from setting names to desired values. A connection to the printer. A map from setting name to value. If it was not possible to communicate with the printer. "SH", "H8", "C" ESC + h (0x1b 0x68) ESC + V (0x1b 0x56) ESC + FormFeed (0x1b 0x0C) Determines if the device is a zebra card printer true if device is a card printer 0, marks free or usable space 1, bitmap or smooth font 2, barcode data 3, stored ZPL format 4, GRF graphic image object 5, print map - unused 6, general purpose storage - used by DBCOs for parsing and bitmaps 7, Intellifont cache 8, wildcard 9, Mag tables 10, Multiplication tables 11, Mirror tables 12, use context-specific default 13, magic mode buffers 14, access locks for certain ZPL commands 15, JisToUnicode tables 16, Saved BASIC program 17, Data storage object 18, PNG graphic image object 19, Downloadable Bar Code object 20, BAZ encrypted BASIC object 21, Stored label format 22, TrueType Font 23, PCX bitmap 24, Bitmap 25, GEM bitmap graphic 26, DPL Datamax 7-bit format 27, TrueType Extension Font 28, TT? we will list TTE and TTF objects on the same label 29, WLAN security certificate for TLS and TTLS 30, WLAN security certificate for FAST 31, stored EPL format 32, Mirror feedback template file 33, WML menu file 34, MIB file for auto-generated SNMP MIB 35, Comma Seperated Values file 36, User-custom webpages 37, BAE DES encrypted BASIC object 38, Text file 39, Executable code - MUST BE LAST IN LIST! The contentStream will be exhausted. It is all read in to determine the metadata, you need a new stream to read from for other stream operations. For internal use of the Zebra Printer API only. appl.name device.host_status ip.discovery_packet device.languages device.reset Printer Reset JSON Command {}{"device.reset":""} device.prompted_network_reset Printer Reset JSON Command {}{"device.prompted_network_reset":"y"} ezpl.restore_defaults Printer Reset JSON Command {}{"ezpl.restore_defaults":"reload printer"} device.prompted_default_network Printer Reset JSON Command {}{"device.prompted_default_network":"y"} zpl.calibrate Calibrate Command {}{"zpl.calibrate":""} ! U1 getvar "command"\r\n Wrapper class for System.Threading.Tasks Task functions. For internal use of the Zebra Printer API only. For internal use of the Zebra Printer API only. Wrapper for to not throw an exception. Causes the currently executing thread to sleep (temporarily cease execution) for the specified number of milliseconds. The thread does not lose ownership of any monitors. @param targetStream @param data @param offset @param length @throws IOException Windows line terminator - carriage return + line feed Line feed The string that should be searched. The list of patterns to search for. start index in inputString The index in inputString of the first pattern that is found. If none of the patterns are found, -1 is returned. Split input into lines. Lines are terminated by <CR><LF>. The last line does not have to end in <CR><LF>, although it may.The <CR><LF> terminators are removed. Text to be split into lines. the delimiter to split on An array of lines - with trailing CRLF removed. Join an array of strings into a single string separated by a delimiter. a delimited list of the elements in strings Count the number of distinct occurrences of substring in stringToSearch. If there are overlapping occurrences of substring in stringToSearch, counting starts again after the end of each match. CountSubstringOccurences(" aaa", "aa") returns 1, not 2. String to be searched String to search for number of occurrences Remove all double quotes from str the string to strip the quotes from str minus the quotes String to be padded character used for padding total length the return string should be whether or not to append padding in front of initialString the prefixes to search for string to search true if prefixes exists in value The hex representation of the byte array A byte array (e.g. 1234 Bytes, 9876 Main St) Executes a group of tasks with a cap on the number of concurrent threads running. Group of tasks to execute Number of threads to execute concurrently Internal printer representation of the ZPL format prefix Internal printer representation of the ZPL command prefix Internal printer representation of the ZPL delimiter Internal printer representation of the ZPL format prefix, as a String Internal printer representation of the ZPL command prefix, as a String Internal printer representation of the ZPL delimiter, as a String Printer Status Command ~HI Printer Expanded Status Command ~HS Config Label ~WC Directory label ^XA^WD*:*.*^XZ Config Label ~WL Printer Calibrate Command ~JC Printer Reset Command ~JR Printer Network Reset Command ~WR Printer restore defaults command ^XA^JUF^XZ Printer get super host status command ^XA^HZA^XZ Printer get storage info ^XA^HW*:XXXX.QQQ^XZ Use XXXX.QQQ to get drive info without matching a file name Printer get file drive info for Linkos 2.5 and higher Printer get drive listing for Linkos 2.5 and higher the command to decorate with the internal command prefix the command decorated with the internal ZPL command prefix. If command contains a '~' it will be replace with the internal command prefix, otherwise the internal command prefix will simply be prefixed to the front of command the format to decorate with the internal format prefix the format decorated with the internal ZPL format prefix. If format contains a '^' it will be replace with the internal format prefix, otherwise the internal format prefix will simply be prefixed to the front of format the format to decorate with the internal format prefix the format decorated with the internal ZPL format prefix. If format contains a '^' it will be replace with the internal format prefix, otherwise the internal format prefix will simply be prefixed to the front of format For Zebra internal use only. For Zebra internal use only. Enumeration of a task's status. Configuration state indicating the task has not been started. Configuration state indicating the task is in process. Configuration state indicating the task completed successfully. Configuration state indicating the task failed. ENumeration to determine how the Weblink address is set. Looks at current weblink settings and determine which location to set based on if the URL is set and valid and if the printer is connected to the address. Overrides any setting in Weblink location 1. Overrides any setting in Weblink location 2. Enumeration of the weblink configuration task's state. Configuration state indicating the task is creating a connection to the printer. Configuration state indicating the task is retrieving the printer's settings. Configuration state indicating the task is configuring the weblink setting. Configuration state indicating the task is restarting the printer. Configuration state indicating the task is waiting for the printer to restart and then reconnect. Configuration state indicating the task is validating the printer's profile manager connection. Callback for updating the status of a Weblink configuration task. Sets the new state of the Weblink Configurator defined by WeblinkConfigurationState. The updated WeblinkConfiguration state. Provides a custom message for the current weblink configuration state. Custom message. Task to configure a printers Weblink setting. Initializes a new instance of the WeblinkConfiguratior class. The to configure. Initializes a new instance of the WeblinkConfiguratior class. A to a printer Configures a printer to connect to a Zebra Weblink server and attempts to validate a successful connection. Please note that this function will block while waiting for the printer to reset and while validating the connection. This could take an excess of 60 seconds. Weblink address to set. Determines which weblink setting will be configured. Callback object to report task status. Thrown when a configuration error occurs. Returns the current . Returns the of the weblink configuration task. Returns true if the supplied weblink url is valid for the Zebra weblink server. Potential URL to a Zebra Weblink server. true if the URL is a properly formed URL for the Zebra Weblink server. Signals that an error occured while configuring weblink. Constructs a ZebraWeblinkException with a base Exception. The base exception. Constructs a ZebraWeblinkException with a custom detailed error message. The custom error message.