
com.azure.security.keyvault.keys.models.KeyCreateOptions Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-keyvault-keys Show documentation
Show all versions of azure-keyvault-keys Show documentation
This module contains client library for Microsoft Azure KeyVault Keys.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.azure.security.keyvault.keys.models;
import com.azure.security.keyvault.keys.models.webkey.KeyOperation;
import com.azure.security.keyvault.keys.models.webkey.KeyType;
import java.time.OffsetDateTime;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
public class KeyCreateOptions {
/**
* Determines whether the object is enabled.
*/
private Boolean enabled;
/**
* Not before date in UTC.
*/
private OffsetDateTime notBefore;
/**
* Expiry date in UTC.
*/
private OffsetDateTime expires;
/**
* Application specific metadata in the form of key-value pairs.
*/
private Map tags;
/**
* The type of the key.
*/
KeyType keyType;
/**
* The key operations.
*/
List keyOperations;
/**
* The key name.
*/
String name;
KeyCreateOptions() {
}
/**
* Creates instance of KeyCreateOptions with {@code name} as key name and {@code keyType} as type of the key.
* @param name The name of the key to create.
* @param keyType The type of the key to create.
*/
public KeyCreateOptions(String name, KeyType keyType) {
this.name = name;
this.keyType = keyType;
}
/**
* Get the key operations.
*
* @return the key operations.
*/
public List keyOperations() {
return this.keyOperations;
}
/**
* Set the key operations value.
*
* @param keyOperations The key operations value to set
* @return the KeyCreateOptions object itself.
*/
public KeyCreateOptions keyOperations(KeyOperation... keyOperations) {
this.keyOperations = Arrays.asList(keyOperations);
return this;
}
/**
* Get the key type.
*
* @return the key type.
*/
public KeyType keyType() {
return this.keyType;
}
/**
* Set the {@link OffsetDateTime notBefore} UTC time.
*
* @param notBefore The notBefore UTC time to set
* @return the KeyCreateOptions object itself.
*/
public KeyCreateOptions notBefore(OffsetDateTime notBefore) {
this.notBefore = notBefore;
return this;
}
/**
* Get the notBefore UTC time.
*
* @return the notBefore UTC time.
*/
public OffsetDateTime notBefore() {
return notBefore;
}
/**
* Set the {@link OffsetDateTime expires} UTC time.
*
* @param expires The expiry time to set for the key.
* @return the KeyCreateOptions object itself.
*/
public KeyCreateOptions expires(OffsetDateTime expires) {
this.expires = expires;
return this;
}
/**
* Get the Key Expiry time in UTC.
*
* @return the expires UTC time.
*/
public OffsetDateTime expires() {
return this.expires;
}
/**
* Set the tags to be associated with the key.
*
* @param tags The tags to set
* @return the KeyCreateOptions object itself.
*/
public KeyCreateOptions tags(Map tags) {
this.tags = tags;
return this;
}
/**
* Get the tags associated with the key.
*
* @return the value of the tags.
*/
public Map tags() {
return this.tags;
}
/**
* Set the enabled value.
*
* @param enabled The enabled value to set
* @return the KeyCreateOptions object itself.
*/
public KeyCreateOptions enabled(Boolean enabled) {
this.enabled = enabled;
return this;
}
/**
* Get the enabled value.
*
* @return the enabled value
*/
public Boolean enabled() {
return this.enabled;
}
/**
* Get the key name.
*
* @return the name of the key.
*/
public String name() {
return this.name;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy