public static List<String> toStringList(List<CryptoKeyVersionName> values) { List<String> list = new ArrayList<String>(values.size()); for (CryptoKeyVersionName value : values) { if (value == null) { list.add(""); } else { list.add(value.toString()); } } return list; }
public static CryptoKeyVersionName parse(String formattedString) { if (formattedString.isEmpty()) { return null; } Map<String, String> matchMap = PATH_TEMPLATE.validatedMatch( formattedString, "CryptoKeyVersionName.parse: formattedString not in valid format"); return of( matchMap.get("project"), matchMap.get("location"), matchMap.get("key_ring"), matchMap.get("crypto_key"), matchMap.get("crypto_key_version")); }
public static List<CryptoKeyVersionName> parseList(List<String> formattedStrings) { List<CryptoKeyVersionName> list = new ArrayList<>(formattedStrings.size()); for (String formattedString : formattedStrings) { list.add(parse(formattedString)); } return list; }
public static String format( String project, String location, String keyRing, String cryptoKey, String cryptoKeyVersion) { return newBuilder() .setProject(project) .setLocation(location) .setKeyRing(keyRing) .setCryptoKey(cryptoKey) .setCryptoKeyVersion(cryptoKeyVersion) .build() .toString(); }
@Test @SuppressWarnings("all") public void destroyCryptoKeyVersionTest() { CryptoKeyVersionName name2 = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion expectedResponse = CryptoKeyVersion.newBuilder().setName(name2.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyVersionName name = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion actualResponse = client.destroyCryptoKeyVersion(name); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); DestroyCryptoKeyVersionRequest actualRequest = (DestroyCryptoKeyVersionRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyVersionName.parse(actualRequest.getName())); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void createCryptoKeyVersionTest() { CryptoKeyVersionName name = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion expectedResponse = CryptoKeyVersion.newBuilder().setName(name.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyName parent = CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]"); CryptoKeyVersion cryptoKeyVersion = CryptoKeyVersion.newBuilder().build(); CryptoKeyVersion actualResponse = client.createCryptoKeyVersion(parent, cryptoKeyVersion); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); CreateCryptoKeyVersionRequest actualRequest = (CreateCryptoKeyVersionRequest) actualRequests.get(0); Assert.assertEquals(parent, CryptoKeyName.parse(actualRequest.getParent())); Assert.assertEquals(cryptoKeyVersion, actualRequest.getCryptoKeyVersion()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void asymmetricDecryptTest() { ByteString plaintext = ByteString.copyFromUtf8("-9"); AsymmetricDecryptResponse expectedResponse = AsymmetricDecryptResponse.newBuilder().setPlaintext(plaintext).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyVersionName name = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); ByteString ciphertext = ByteString.copyFromUtf8("-72"); AsymmetricDecryptResponse actualResponse = client.asymmetricDecrypt(name, ciphertext); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); AsymmetricDecryptRequest actualRequest = (AsymmetricDecryptRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyVersionName.parse(actualRequest.getName())); Assert.assertEquals(ciphertext, actualRequest.getCiphertext()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
/** * Restores the given version of a crypto key that is currently scheduled for destruction. */ public static CryptoKeyVersion restoreCryptoKeyVersion( String projectId, String locationId, String keyRingId, String cryptoKeyId, String version) throws IOException { // Create the Cloud KMS client. try (KeyManagementServiceClient client = KeyManagementServiceClient.create()) { // The resource name of the cryptoKey version String versionName = CryptoKeyVersionName.format( projectId, locationId, keyRingId, cryptoKeyId, version); CryptoKeyVersion restored = client.restoreCryptoKeyVersion(versionName); return restored; } } // [END kms_restore_cryptokey_version]
public static CryptoKeyVersionName of( String project, String location, String keyRing, String cryptoKey, String cryptoKeyVersion) { return newBuilder() .setProject(project) .setLocation(location) .setKeyRing(keyRing) .setCryptoKey(cryptoKey) .setCryptoKeyVersion(cryptoKeyVersion) .build(); }
public CryptoKeyVersionName build() { return new CryptoKeyVersionName(this); } }
public String getFieldValue(String fieldName) { return getFieldValuesMap().get(fieldName); }
@Test @SuppressWarnings("all") public void getCryptoKeyVersionTest() { CryptoKeyVersionName name2 = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion expectedResponse = CryptoKeyVersion.newBuilder().setName(name2.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyVersionName name = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion actualResponse = client.getCryptoKeyVersion(name); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); GetCryptoKeyVersionRequest actualRequest = (GetCryptoKeyVersionRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyVersionName.parse(actualRequest.getName())); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void updateCryptoKeyVersionTest() { CryptoKeyVersionName name = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion expectedResponse = CryptoKeyVersion.newBuilder().setName(name.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyVersion cryptoKeyVersion = CryptoKeyVersion.newBuilder().build(); FieldMask updateMask = FieldMask.newBuilder().build(); CryptoKeyVersion actualResponse = client.updateCryptoKeyVersion(cryptoKeyVersion, updateMask); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); UpdateCryptoKeyVersionRequest actualRequest = (UpdateCryptoKeyVersionRequest) actualRequests.get(0); Assert.assertEquals(cryptoKeyVersion, actualRequest.getCryptoKeyVersion()); Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
@Test @SuppressWarnings("all") public void getPublicKeyTest() { String pem = "pem110872"; PublicKey expectedResponse = PublicKey.newBuilder().setPem(pem).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyVersionName name = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); PublicKey actualResponse = client.getPublicKey(name); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); GetPublicKeyRequest actualRequest = (GetPublicKeyRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyVersionName.parse(actualRequest.getName())); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
public static String format( String project, String location, String keyRing, String cryptoKey, String cryptoKeyVersion) { return newBuilder() .setProject(project) .setLocation(location) .setKeyRing(keyRing) .setCryptoKey(cryptoKey) .setCryptoKeyVersion(cryptoKeyVersion) .build() .toString(); }
/** * Marks the given version of a crypto key to be destroyed at a scheduled future point. */ public static CryptoKeyVersion destroyCryptoKeyVersion( String projectId, String locationId, String keyRingId, String cryptoKeyId, String version) throws IOException { // Create the Cloud KMS client. try (KeyManagementServiceClient client = KeyManagementServiceClient.create()) { // The resource name of the cryptoKey version String versionName = CryptoKeyVersionName.format( projectId, locationId, keyRingId, cryptoKeyId, version); // Destroy the cryptoKey version CryptoKeyVersion destroyed = client.destroyCryptoKeyVersion(versionName); return destroyed; } } // [END kms_destroy_cryptokey_version]
public static CryptoKeyVersionName of( String project, String location, String keyRing, String cryptoKey, String cryptoKeyVersion) { return newBuilder() .setProject(project) .setLocation(location) .setKeyRing(keyRing) .setCryptoKey(cryptoKey) .setCryptoKeyVersion(cryptoKeyVersion) .build(); }
public CryptoKeyVersionName build() { return new CryptoKeyVersionName(this); } }
public String getFieldValue(String fieldName) { return getFieldValuesMap().get(fieldName); }
@Test @SuppressWarnings("all") public void restoreCryptoKeyVersionTest() { CryptoKeyVersionName name2 = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion expectedResponse = CryptoKeyVersion.newBuilder().setName(name2.toString()).build(); mockKeyManagementService.addResponse(expectedResponse); CryptoKeyVersionName name = CryptoKeyVersionName.of( "[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]"); CryptoKeyVersion actualResponse = client.restoreCryptoKeyVersion(name); Assert.assertEquals(expectedResponse, actualResponse); List<GeneratedMessageV3> actualRequests = mockKeyManagementService.getRequests(); Assert.assertEquals(1, actualRequests.size()); RestoreCryptoKeyVersionRequest actualRequest = (RestoreCryptoKeyVersionRequest) actualRequests.get(0); Assert.assertEquals(name, CryptoKeyVersionName.parse(actualRequest.getName())); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }