Skip to content

Commit 4f6e569

Browse files
committed
wip adb create
Signed-off-by: Mark Nelson <mark.x.nelson@oracle.com>
1 parent 257add9 commit 4f6e569

File tree

4 files changed

+27
-5
lines changed

4 files changed

+27
-5
lines changed

spring-cloud-oci-adb/src/main/java/com/oracle/cloud/spring/adb/AutonomousDatabase.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,13 @@ public interface AutonomousDatabase {
2727
* @param compartmentId Compartment OCID where the Autonomous Database needs to be created
2828
* @return CreateAutonomousDatabaseResponse
2929
*/
30-
CreateAutonomousDatabaseResponse createAutonomousDatabase(String databaseName, String compartmentId);
30+
CreateAutonomousDatabaseResponse createAutonomousDatabase(
31+
String databaseName,
32+
String compartmentId,
33+
String adminPassword,
34+
Integer dataStorageSizeInGBs,
35+
Float computeCount
36+
);
3137

3238
/**
3339
* Get details of an Autonomous Database.

spring-cloud-oci-adb/src/main/java/com/oracle/cloud/spring/adb/AutonomousDatabaseImpl.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
package com.oracle.cloud.spring.adb;
55

66
import com.oracle.bmc.database.DatabaseClient;
7+
import com.oracle.bmc.database.model.CreateAutonomousDatabaseBase;
78
import com.oracle.bmc.database.model.CreateAutonomousDatabaseDetails;
89
import com.oracle.bmc.database.model.GenerateAutonomousDatabaseWalletDetails;
910
import com.oracle.bmc.database.responses.CreateAutonomousDatabaseResponse;
@@ -41,11 +42,21 @@ public DatabaseClient getDatatbaseClient() {
4142
* @param compartmentId Compartment OCID where the Autonomous Database needs to be created
4243
* @return CreateAutonomousDatabaseResponse
4344
*/
44-
public CreateAutonomousDatabaseResponse createAutonomousDatabase(String databaseName, String compartmentId) {
45+
public CreateAutonomousDatabaseResponse createAutonomousDatabase(
46+
String databaseName,
47+
String compartmentId,
48+
String adminPassword,
49+
Integer dataStorageSizeInGBs,
50+
Float computeCount
51+
) {
4552
CreateAutonomousDatabaseRequest createAutonomousDatabaseRequest = CreateAutonomousDatabaseRequest.builder()
4653
.createAutonomousDatabaseDetails(CreateAutonomousDatabaseDetails.builder()
4754
.compartmentId(compartmentId)
4855
.dbName(databaseName)
56+
.adminPassword(adminPassword)
57+
.dataStorageSizeInGBs(dataStorageSizeInGBs)
58+
.computeModel(CreateAutonomousDatabaseBase.ComputeModel.Ecpu)
59+
.computeCount(computeCount)
4960
.build())
5061
.build();
5162

spring-cloud-oci-adb/src/test/java/com/oracle/cloud/spring/adb/AutonomousDatabaseImplTests.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ void testDatbaseImpl() {
3333
when(client.generateAutonomousDatabaseWallet(any())).thenReturn(mock(GenerateAutonomousDatabaseWalletResponse.class));
3434
when(client.deleteAutonomousDatabase(any())).thenReturn(mock(DeleteAutonomousDatabaseResponse.class));
3535

36-
CreateAutonomousDatabaseResponse cadr = autonomousDatabase.createAutonomousDatabase("name", "compartment");
36+
CreateAutonomousDatabaseResponse cadr = autonomousDatabase.createAutonomousDatabase(
37+
"name", "compartment", "password", 200, 2f);
3738
assertNotNull(cadr);
3839

3940
GetAutonomousDatabaseResponse gadr = autonomousDatabase.getAutonomousDatabase("ocid");

spring-cloud-oci-samples/spring-cloud-oci-adb-samples/src/main/java/com/oracle/cloud/spring/sample/adb/springcloudociadbsample/AdbController.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,13 @@ public class AdbController {
3030
@PostMapping
3131
ResponseEntity<?> createAutonomousDatabase(
3232
@Parameter(required = true, example = "databaseName") @RequestParam String databaseName,
33-
@Parameter(required = true, example = "compartmentId") @RequestParam String compartmentId
33+
@Parameter(required = true, example = "compartmentId") @RequestParam String compartmentId,
34+
@Parameter(required = true, example = "adminPassword") @RequestParam String adminPassword,
35+
@Parameter(required = true, example = "200") @RequestParam Integer dataStorageSizeInGBs,
36+
@Parameter(required = true, example = "2.0") @RequestParam Float computeCount
3437
) {
35-
CreateAutonomousDatabaseResponse response = autonomousDatabase.createAutonomousDatabase(databaseName, compartmentId);
38+
CreateAutonomousDatabaseResponse response = autonomousDatabase.createAutonomousDatabase(
39+
databaseName, compartmentId, adminPassword, dataStorageSizeInGBs, computeCount);
3640
return ResponseEntity.accepted().body("database id : " + response.getAutonomousDatabase().getAutonomousContainerDatabaseId());
3741
}
3842

0 commit comments

Comments
 (0)