@Override
    public InitiateVaultLockResult initiateVaultLock(InitiateVaultLockRequest request) {
        request = beforeClientExecution(request);
        return executeInitiateVaultLock(request);
    }
<p>
This operation initiates the vault locking process by doing the following:
</p>
<ul>
<li>
<p>
Installing a vault lock policy on the specified vault.
</p>
</li>
<li>
<p>
Setting the lock state of vault lock to <code>InProgress</code>.
</p>
</li>
<li>
<p>
Returning a lock ID, which is used to complete the vault locking process.
</p>
</li>
</ul>
<p>
You can set one vault lock policy for each vault and this policy can be up to 20 KB in size. For more information
about vault lock policies, see <a
href="https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock-policy.html">Amazon Glacier Access Control
with Vault Lock Policies</a>.
</p>
<p>
You must complete the vault locking process within 24 hours after the vault lock enters the
<code>InProgress</code> state. After the 24 hour window ends, the lock ID expires, the vault automatically exits
the <code>InProgress</code> state, and the vault lock policy is removed from the vault. You call
<a>CompleteVaultLock</a> to complete the vault locking process by setting the state of the vault lock to
<code>Locked</code>.
</p>
<p>
After a vault lock is in the <code>Locked</code> state, you cannot initiate a new vault lock for the vault.
</p>
<p>
You can abort the vault locking process by calling <a>AbortVaultLock</a>. You can get the state of the vault lock
by calling <a>GetVaultLock</a>. For more information about the vault locking process, <a
href="https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html">Amazon Glacier Vault Lock</a>.
</p>
<p>
If this operation is called when the vault lock is in the <code>InProgress</code> state, the operation returns an
<code>AccessDeniedException</code> error. When the vault lock is in the <code>InProgress</code> state you must
call <a>AbortVaultLock</a> before you can initiate a new vault lock policy.
</p>

@param initiateVaultLockRequest
       The input values for <code>InitiateVaultLock</code>.
@return Result of the InitiateVaultLock operation returned by the service.
@throws ResourceNotFoundException
        Returned if the specified resource (such as a vault, upload ID, or job ID) doesn't exist.
@throws InvalidParameterValueException
        Returned if a parameter of the request is incorrectly specified.
@throws MissingParameterValueException
        Returned if a required header or parameter is missing from the request.
@throws ServiceUnavailableException
        Returned if the service cannot complete the request.
@sample AmazonGlacier.InitiateVaultLock
aws-java-sdk-glacier/src/main/java/com/amazonaws/services/glacier/AmazonGlacierClient.java