/** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. * * Code generated by Microsoft (R) AutoRest Code Generator 1.0.0.0 * Changes may cause incorrect behavior and will be lost if the code is * regenerated. */ package com.microsoft.azure.keyvault.models; import java.util.List; import java.util.Map; import com.fasterxml.jackson.annotation.JsonProperty; import com.microsoft.azure.keyvault.webkey.JsonWebKeyOperation; import com.microsoft.azure.keyvault.webkey.JsonWebKeyType; /** * The key create parameters. */ public class KeyCreateParameters { /** * The type of key to create. For valid key types, see JsonWebKeyType. * Supported JsonWebKey key types (kty) for Elliptic Curve, RSA, HSM, * Octet. Possible values include: 'EC', 'RSA', 'RSA-HSM', 'oct'. */ @JsonProperty(value = "kty", required = true) private JsonWebKeyType kty; /** * The key size in bytes. For example, 1024 or 2048. */ @JsonProperty(value = "key_size") private Integer keySize; /** * The keyOps property. */ @JsonProperty(value = "key_ops") private List<JsonWebKeyOperation> keyOps; /** * The keyAttributes property. */ @JsonProperty(value = "attributes") private KeyAttributes keyAttributes; /** * Application specific metadata in the form of key-value pairs. */ @JsonProperty(value = "tags") private Map<String, String> tags; /** * Get the kty value. * * @return the kty value */ public JsonWebKeyType kty() { return this.kty; } /** * Set the kty value. * * @param kty the kty value to set * @return the KeyCreateParameters object itself. */ public KeyCreateParameters withKty(JsonWebKeyType kty) { this.kty = kty; return this; } /** * Get the keySize value. * * @return the keySize value */ public Integer keySize() { return this.keySize; } /** * Set the keySize value. * * @param keySize the keySize value to set * @return the KeyCreateParameters object itself. */ public KeyCreateParameters withKeySize(Integer keySize) { this.keySize = keySize; return this; } /** * Get the keyOps value. * * @return the keyOps value */ public List<JsonWebKeyOperation> keyOps() { return this.keyOps; } /** * Set the keyOps value. * * @param keyOps the keyOps value to set * @return the KeyCreateParameters object itself. */ public KeyCreateParameters withKeyOps(List<JsonWebKeyOperation> keyOps) { this.keyOps = keyOps; return this; } /** * Get the keyAttributes value. * * @return the keyAttributes value */ public KeyAttributes keyAttributes() { return this.keyAttributes; } /** * Set the keyAttributes value. * * @param keyAttributes the keyAttributes value to set * @return the KeyCreateParameters object itself. */ public KeyCreateParameters withKeyAttributes(KeyAttributes keyAttributes) { this.keyAttributes = keyAttributes; return this; } /** * Get the tags value. * * @return the tags value */ public Map<String, String> tags() { return this.tags; } /** * Set the tags value. * * @param tags the tags value to set * @return the KeyCreateParameters object itself. */ public KeyCreateParameters withTags(Map<String, String> tags) { this.tags = tags; return this; } }