public class MockApnsServerBuilder extends Object
A MockApnsServerBuilder
constructs new MockApnsServer
instances. Callers must supply server
credentials via one of the setServerCredentials
methods prior to constructing a new server with the
build()
method; all other settings are optional.
Server builders may be reused to generate multiple servers, and their settings may be changed from one server to the next.
Constructor and Description |
---|
MockApnsServerBuilder() |
Modifier and Type | Method and Description |
---|---|
MockApnsServer |
build()
Constructs a new
MockApnsServer with the previously-set configuration. |
MockApnsServerBuilder |
setEmulateExpiredFirstToken(boolean emulateExpiredFirstToken)
Sets whether the server under construction should reject the first notification received as if its token had
expired.
|
MockApnsServerBuilder |
setEmulateInternalErrors(boolean emulateInternalErrors)
Sets whether the server under construction should respond to all notifications with an internal server error.
|
MockApnsServerBuilder |
setEventLoopGroup(EventLoopGroup eventLoopGroup)
Sets the event loop group to be used by the server under construction.
|
MockApnsServerBuilder |
setServerCredentials(File certificatePemFile,
File privateKeyPkcs8File,
String privateKeyPassword)
Sets the credentials for the server under construction using the certificates in the given PEM file and the
private key in the given PKCS#8 file.
|
MockApnsServerBuilder |
setServerCredentials(InputStream certificatePemInputStream,
InputStream privateKeyPkcs8InputStream,
String privateKeyPassword)
Sets the credentials for the server under construction using the certificates in the given PEM input stream
and the private key in the given PKCS#8 input stream.
|
MockApnsServerBuilder |
setServerCredentials(X509Certificate[] certificates,
PrivateKey privateKey,
String privateKeyPassword)
Sets the credentials for the server under construction.
|
MockApnsServerBuilder |
setTrustedClientCertificateChain(File certificatePemFile)
Sets the trusted certificate chain for the server under construction using the contents of the given PEM
file.
|
MockApnsServerBuilder |
setTrustedClientCertificateChain(InputStream certificateInputStream)
Sets the trusted certificate chain for the server under construction using the contents of the given PEM
input stream.
|
MockApnsServerBuilder |
setTrustedServerCertificateChain(X509Certificate... certificates)
Sets the trusted certificate chain for the server under construction.
|
public MockApnsServerBuilder setServerCredentials(File certificatePemFile, File privateKeyPkcs8File, String privateKeyPassword)
Sets the credentials for the server under construction using the certificates in the given PEM file and the private key in the given PKCS#8 file.
certificatePemFile
- a PEM file containing the certificate chain for the server under constructionprivateKeyPkcs8File
- a PKCS#8 file containing the private key for the server under constructionprivateKeyPassword
- the password for the given private key, or null
if the key is not
password-protectedpublic MockApnsServerBuilder setServerCredentials(InputStream certificatePemInputStream, InputStream privateKeyPkcs8InputStream, String privateKeyPassword)
Sets the credentials for the server under construction using the certificates in the given PEM input stream and the private key in the given PKCS#8 input stream.
certificatePemInputStream
- a PEM input stream containing the certificate chain for the server under
constructionprivateKeyPkcs8InputStream
- a PKCS#8 input stream containing the private key for the server under
constructionprivateKeyPassword
- the password for the given private key, or null
if the key is not
password-protectedpublic MockApnsServerBuilder setServerCredentials(X509Certificate[] certificates, PrivateKey privateKey, String privateKeyPassword)
Sets the credentials for the server under construction.
certificates
- a certificate chain including the server's own certificateprivateKey
- the private key for the server's certificateprivateKeyPassword
- the password for the given private key, or null
if the key is not
password-protectedpublic MockApnsServerBuilder setTrustedClientCertificateChain(File certificatePemFile)
Sets the trusted certificate chain for the server under construction using the contents of the given PEM
file. If not set (or null
), the server will use the JVM's default trust manager.
In development environments, callers will almost always need to provide a trusted certificate chain for clients (since clients in development environments will generally not present credentials recognized by the JVM's default trust manager).
certificatePemFile
- a PEM file containing one or more trusted certificatespublic MockApnsServerBuilder setTrustedClientCertificateChain(InputStream certificateInputStream)
Sets the trusted certificate chain for the server under construction using the contents of the given PEM
input stream. If not set (or null
), the server will use the JVM's default trust manager.
In development environments, callers will almost always need to provide a trusted certificate chain for clients (since clients in development environments will generally not present credentials recognized by the JVM's default trust manager).
certificateInputStream
- an input stream to PEM-formatted data containing one or more trusted certificatespublic MockApnsServerBuilder setTrustedServerCertificateChain(X509Certificate... certificates)
Sets the trusted certificate chain for the server under construction. If not set (or null
), the
server will use the JVM's default trust manager.
In development environments, callers will almost always need to provide a trusted certificate chain for clients (since clients in development environments will generally not present credentials recognized by the JVM's default trust manager).
certificates
- one or more trusted certificatespublic MockApnsServerBuilder setEventLoopGroup(EventLoopGroup eventLoopGroup)
Sets the event loop group to be used by the server under construction. If not set (or if null
), the
server will create and manage its own event loop group.
eventLoopGroup
- the event loop group to use for this server, or null
to let the server manage its
own event loop grouppublic MockApnsServerBuilder setEmulateInternalErrors(boolean emulateInternalErrors)
emulateInternalErrors
- true
if the server should respond to all notifications with an internal
server error or false
otherwisepublic MockApnsServerBuilder setEmulateExpiredFirstToken(boolean emulateExpiredFirstToken)
emulateExpiredFirstToken
- true
if the server should respond to the first notification as if its
token had expired or false
otherwisepublic MockApnsServer build() throws SSLException
MockApnsServer
with the previously-set configuration.SSLException
- if an SSL context could not be created for the new server for any reasonCopyright © 2013–2017 Turo. All rights reserved.