# Print output for @column tags ?> ChildSaProposal.Builder - Android SDK | Android Developers

Most visited

Recently visited

ChildSaProposal.Builder

public static final class ChildSaProposal.Builder
extends Object

java.lang.Object
   ↳ android.net.ipsec.ike.ChildSaProposal.Builder


This class is used to incrementally construct a ChildSaProposal. ChildSaProposal instances are immutable once built.

Summary

Public constructors

Builder()

Public methods

ChildSaProposal.Builder addDhGroup(int dhGroup)

Adds a Diffie-Hellman Group to the SA proposal being built.

ChildSaProposal.Builder addEncryptionAlgorithm(int algorithm, int keyLength)

Adds an encryption algorithm with a specific key length to the SA proposal being built.

ChildSaProposal.Builder addIntegrityAlgorithm(int algorithm)

Adds an integrity algorithm to the SA proposal being built.

ChildSaProposal build()

Validates and builds the ChildSaProposal.

Inherited methods

Public constructors

Builder

public Builder ()

Public methods

addDhGroup

public ChildSaProposal.Builder addDhGroup (int dhGroup)

Adds a Diffie-Hellman Group to the SA proposal being built.

Parameters
dhGroup int: to add to ChildSaProposal. Value is SaProposal.DH_GROUP_NONE, SaProposal.DH_GROUP_1024_BIT_MODP, SaProposal.DH_GROUP_1536_BIT_MODP, SaProposal.DH_GROUP_2048_BIT_MODP, SaProposal.DH_GROUP_3072_BIT_MODP, SaProposal.DH_GROUP_4096_BIT_MODP, or SaProposal.DH_GROUP_CURVE_25519

Returns
ChildSaProposal.Builder Builder of ChildSaProposal. This value cannot be null.

addEncryptionAlgorithm

public ChildSaProposal.Builder addEncryptionAlgorithm (int algorithm, 
                int keyLength)

Adds an encryption algorithm with a specific key length to the SA proposal being built.

Parameters
algorithm int: encryption algorithm to add to ChildSaProposal. Value is SaProposal.ENCRYPTION_ALGORITHM_3DES, SaProposal.ENCRYPTION_ALGORITHM_AES_CBC, SaProposal.ENCRYPTION_ALGORITHM_AES_CTR, SaProposal.ENCRYPTION_ALGORITHM_AES_GCM_8, SaProposal.ENCRYPTION_ALGORITHM_AES_GCM_12, SaProposal.ENCRYPTION_ALGORITHM_AES_GCM_16, or SaProposal.ENCRYPTION_ALGORITHM_CHACHA20_POLY1305

keyLength int: key length of algorithm. For algorithms that have fixed key length (e.g. 3DES) only SaProposal#KEY_LEN_UNUSED is allowed.

Returns
ChildSaProposal.Builder Builder of ChildSaProposal. This value cannot be null.

addIntegrityAlgorithm

public ChildSaProposal.Builder addIntegrityAlgorithm (int algorithm)

Adds an integrity algorithm to the SA proposal being built.

Parameters
algorithm int: integrity algorithm to add to ChildSaProposal. Value is SaProposal.INTEGRITY_ALGORITHM_NONE, SaProposal.INTEGRITY_ALGORITHM_HMAC_SHA1_96, SaProposal.INTEGRITY_ALGORITHM_AES_XCBC_96, SaProposal.INTEGRITY_ALGORITHM_AES_CMAC_96, SaProposal.INTEGRITY_ALGORITHM_HMAC_SHA2_256_128, SaProposal.INTEGRITY_ALGORITHM_HMAC_SHA2_384_192, or SaProposal.INTEGRITY_ALGORITHM_HMAC_SHA2_512_256

Returns
ChildSaProposal.Builder Builder of ChildSaProposal. This value cannot be null.

build

public ChildSaProposal build ()

Validates and builds the ChildSaProposal.

Returns
ChildSaProposal the validated ChildSaProposal. This value cannot be null.