createCryptoSchema

Lazy Loading

A lazy loading algorithm is employed when creating Crypto Schema objects using this method. The Crypto Schema object will load it's state if a property not provided on construction is accessed. This algorithm is thread safe so it is safe to allow multiple threads to access this lazy loaded object. The following properties are provided on construction and can be accessed without lazy loading being triggered:

Accessing any other properties will cause the object's state to be loaded automatically.

Parameters:

id - the schema identity.

Returns:

a new Crypto Schema instance.

Throws:

UnknownCryptoSchemaException - the cryptography schema with the provided id has not been defined. When a cryptography schema is created, the implementation may immediately check whether the cryptography schema exists or delay this until the other properties on the schema are accessed. An assumption should not be made that this constructor will throw this exception if the cryptography schema does not exist.