# All Classes

- All Classes Interface Summary Class Summary Exception Summary
  Class | Description
  --- | ---
  AllTrustingTrustManager | An instance of `X509TrustManager` which will trust all certificates.
  AuthenticationInfo | An interface for classes which provide authentication information to `DoipClient`.
  AutoSelfSignedKeyManager | This object is used to provide a private key for authentication to the other side of a secure socket connection.
  BadDoipException | Exception which indicates a malformed DOIP message.
  ConnectionAndPool | Used internally by `DoipClient` to manage pools of connections.
  ConnectionOptions | Options for a connection to a DOIP server.
  DelegatedCloseableInputStream | An input stream which will run a supplied runnable when the input stream is closed.
  DigitalObject | A Java representation of a Digital Object.
  DoipClient | A DOIP client for performing operations on objects.
  DoipClientResponse | A response from a server to the client.
  DoipConnection | A connection with a DOIP server.
  DoipConnectionImpl | An implementation of `DoipConnection`.
  DoipConnectionPool | Used internally by `DoipClient` to manage pools of connections.
  DoipConstants | Constants useful in processing DOIP messages.
  DoipException | An exception thrown by `DoipClient` when something goes wrong such as an unexpected status code returned for an operation.
  DoipExchange | An object representing both the outgoing request input, and the response, of a DOIP connection.
  DoipProcessor | A DoipProcessor encapsulates the request-processing logic of a DOIP server.
  DoipRequestHeaders | The initial segment of a properly formed DOIP request, except the requestId which will be generated by processing code.
  DoipRequestHeadersWithRequestId | The initial segment of a properly formed DOIP request, including the requestId.
  DoipResponseHeaders | The initial segment of a properly formed DOIP request, except the requestId which will be generated by processing code.
  DoipResponseHeadersWithRequestId | The initial segment of a properly formed DOIP response, including the requestId.
  DoipSearchResults<T> | Used internally by `DoipClient` to produce search results
  DoipServer | A DOIP server.
  DoipServerConfig | Configuration for a `DoipServer`.
  DoipServerConfig.TlsConfig | TLS configuration for a `DoipServer`.
  DoipServerRequest | Interface for an incoming DOIP request to be handled by a `DoipProcessor`.
  DoipServerRequestImpl | An implementation of `DoipServerRequest` used internally by `DoipServer`.
  DoipServerResponse | Interface for an outgoing DOIP response to be populated by a `DoipProcessor`.
  DoipServerResponseImpl | An implementation of `DoipServerResponse` used internally by `DoipServer`.
  Element | A Java representation of an element of a Digital Object.
  GsonUtility | A provider of `Gson` instances able to serialize instances of `Stream` (as arrays) and instances of `PublicKey` and `PrivateKey` (in JSON Web Key format).
  GsonUtility.PrivateKeyTypeHierarchyAdapter |
  GsonUtility.PublicKeyTypeHierarchyAdapter |
  GsonUtility.StreamGsonTypeAdapter<T> | Serializing `Stream`s of objects in a streaming fashion, which will be useful for outputting extremely large search results.
  GsonUtility.StreamTypeAdapterFactory |
  InDoipMessage | A DOIP message to be read as input (for example, a response for the client, or a request for the server).
  InDoipMessageFromCollection | An implementation of `InDoipMessage` constructed by supplying an explicit collection of `InDoipSegment`s.
  InDoipMessageFromJson | An implementation of `InDoipMessage` constructed by supplying a single `JsonElement`, which will lead to a single JSON segment in the message.
  InDoipMessageImpl | An implementation of `InDoipMessage` which reads a serialized DOIP message from an `InputStream`.
  InDoipMessageUtil | Utility methods for `InDoipMessage`.
  InDoipSegment | A segment of a DOIP message to be read as input (see `InDoipMessage`).
  InDoipSegmentFromInputStream | An implementation of `InDoipSegment` produced from in input stream; may be either a JSON segment or a bytes segment.
  InDoipSegmentFromJson | An implementation of `InDoipSegment` produced from supplied JSON, which is always a JSON segment.
  OutDoipMessage | A DOIP message to be written as output (for example, a request from the client, or a response from the server).
  OutDoipMessageImpl | An implementation of `OutDoipMessage` which writes a serialized DOIP message into an `OutputStream`.
  PasswordAuthenticationInfo | An `AuthenticationInfo` which provides a username and a password.
  PrivateKeyAuthenticationInfo | An `AuthenticationInfo` which provides an identity and a JWT signed by that entity's private key.
  QueryParams | An object for holding query parameters for `DoipClient` search operations.
  ReleaseOnceDoipConnection | An implementation of `DoipConnection` which is used by `DoipConnectionPool` and ensures correct behavior for releasing connections back into the pool.
  SearchResults<T> | A representation of search results from `DoipClient` search operations.
  ServiceInfo | A representation of a service identifier together with the DOIPServiceInfo needed for connecting to the DOIP service.
  SortField | A specification of part of a sort order for `QueryParams`.
  TlsProtocolAndCipherSuiteConfigurationUtil | Utilities for restricting TLS connections to use appropriate protocol versions and cipher suites.
  TlsProtocolAndCipherSuiteConfigurationUtil.ServerSocketFactoryWrapper | A wrapper for an `SSLServerSocketFactory` which ensures that all created server sockets will use appropriate protocols and cipher suites.
  TlsProtocolAndCipherSuiteConfigurationUtil.SocketFactoryWrapper | A wrapper for an `SSLSocketFactory` which ensures that all created sockets will use appropriate protocols and cipher suites.
  TokenAuthenticationInfo | An `AuthenticationInfo` which supplies a specified token for a specified clientId.
  TransportDoipClient | A DOIP client close to the transport protocol.
  TrustManagerForSpecifiedServerIdAndKeys | A trust manager which expects the server certificate to both have the specified identitifier, and to have one of a list of specified public keys.
  X509CertificateGenerator | Utility methods to generate X509 certificates, and to read and write certificates from and to PEM files.
  X509IdParser | Utility methods to parse a (handle) identity from an X509 certificate.